[PolicyInsights] Add policy resource attestation cli commands

Related command

az policy attestation
Description

This PR is to add new commands for a new resource type in policyinsights, named attestations. It includes CRUD operations for attestations. The new aaz-dev-tools generator was used for the most part along with some customizations to take care of the unsupported scenarios.
Testing Guide

Creating an attestation at subscription scope:
az policy attestation create -n myAttestation --policy-assignment eeb18edc813c42d0ad5a9eab
Deleting an attestation at subscription scope:
az policy attestation delete -g myRg -n myAttestation
History Notes

[PolicyInsights] az policy attestation Add policy resource attestation cli commands

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

PolicyInsights

@zhoxing-ms I have addressed your comments. Let me know if you have any questions. Thank you :)

@samarthlakhotia Could you please address these CI issues first?

@najagasi Could you help review this PR again? If there are no other questions, please approve it~


chore(deps): do not upgrade indirect Go deps

Closes #209
For Go dependencies, instead of using go get -u we can use the code snippet suggested here to avoid updating indirect dependencies, which can result in a broken state.
Note that Dependabot by default only updates the direct dependencies, so with this change make upgrade-go will be compatible with Dependabot.

so with this change make upgrade-go will be compatible with Dependabot.

I still not quite get this part. By compatible, do you mean that it reflects the same mechanism as Dependabot in updating only direct dependencies?

I still not quite get this part. By compatible, do you mean that it reflects the same mechanism as Dependabot in updating only direct dependencies?

It means that by forcefully updating the indirect dependencies, the direct dependencies that depend on them (by pinning their version) might not be compatible with the new versions.


Fix squash and merge message

It's related to #423 , which uses the PR title as the squash commit title.
This PR introduces a new feature, which uses the PR description as the squash commit body message.
The change is in contrast to the default github behavior, that is, compiling a list of individual commit messages before the squash.

This is related to #1322 (and would close it)


Score training Rest API ?

I do not see any Rest API available for changing the score for a specific user query ? Is there any plan in the future to provide such API ?

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

ID: cb1d6a8c-954c-9ce8-6101-c19b20724c91
Version Independent ID: 5c219f6c-260b-c17a-7f41-1bf4095aa521
Content: Metadata with GenerateAnswer API - QnA Maker - Azure Cognitive Services
Content Source: articles/cognitive-services/QnAMaker/How-To/metadata-generateanswer-usage.md
Service: cognitive-services
Sub-service: qna-maker
GitHub Login: @diberry
Microsoft Alias: diberry

@vikramdadwal Thank you for your feedback! We will review and provide an update as appropriate.

@vikramdadwal Are you referring to setting the threshold for answers that need to be returned by the generateAnswer API? QnAMaker provides active learning to improve the responses from the KB which in turn can improve the score for queries by the user.
@diberry Is there any upcoming feature to modify the score of a query?

@vikramdadwal The score can only be improved with changes to the knowledge base, which inturn impacts ranker 1 and ranker 2 - which is where the final score comes from. Why would you want to specifically change the score of a specific user query without impacting the rankings of the query?
What are you trying to do?
#in-progress

@diberry : please check the snapshot for my ask here. thanks.

@vikramdadwal I believe you are asking about active suggestions and the train API. Please take a look at the documentation to see if that is correct.

@diberry got it. Thanks

@diberry : I tried the train API, but It is not making any changes in the QnA. Do we need to enable anything ?

@vikramdadwal The active suggestions happen on a schedule (30 minutes) and only apply to question alternatives that the ML model considers appropriate. If you think you have met this criteria, please let me know.

@diberry : Thanks for the quick reply. Sure I will wait for 30 min now and get back to you.
Also why, if I do the same thing from PORTAL it reflects immediately? why that is not the case with Train API?

Are you referring only to train - in terms of timing? Or the full active learning experience?

I am referring to the following action in PORTAL:
https://github.com/MicrosoftDocs/azure-docs/issues/49730#issuecomment-596765674

Train is only about adding suggestions to KB. This API is on the runtime.
Publish might be what you really want in terms of moving kb into production.

@RohitMungi-MSFT Can you check me on this?

I believe the Test panel is updated the KB via the Update API. Is that what you see on the F12/Dev tools?

@diberry : Yea, Just checked, it is calling update API with request:
{     "add": {         "qnaList": []     },     "delete": {         "ids": []     },     "update": {         "qnaList": [{             "id": 1310,             "source": "Editorial",             "questions": {                 "add": ["what is policy"],                 "delete": []             },             "metadata": {                 "add": [],                 "delete": []             }         }]     } }
I am confused now, what is the difference between train API and update API? if both are (I guess) doing the same job here ?

@vikramdadwal  Update api is used to update actual qna while train api is used to give feedback to the ranker. Based on the collected feedback, we try to give some suggestions that could be possible alternate question for that particular qna.

@gurvsing : thanks for the answer. So here in my scenario, we already know the suggestion ( i.e. alternate question) , so update Api is what we need right?

Yes, you need to use update api. Train api is generally for the end users, where once they get some answer, you can ask for feedback and call train api to send qnamaker the feedback.

Thanks closing the issue now.


HDDS-2512 Sonar TraceAllMethod NPE Could be Thrown

What changes were proposed in this pull request?
Sonar cleanup for: https://sonarcloud.io/project/issues?id=hadoop-ozone&issues=AW5md-2WKcVY8lQ4ZsNQ&open=AW5md-2WKcVY8lQ4ZsNQ
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-2512
How was this patch tested?
Local build, rat, check style, existing unit tests

After further review, I do agree throwing an exception would be better here.  With that, I moved the null check up to just after the findDelegatedMethod call and included the method name for the detail.  I am open to the wording if we want to change that, but at least it gives some context now.

Side note, regarding opentracing it looks like future cleanup work may be needed with the GlobalTracer span build.  The startActive method was deprecated with 0.31.0 release (current version today).  We could open a new jira under HDDS-2066 since that seems to be the umbrella for the opentracing work.  I know there are newer releases but I am not sure how aggressive you typically are on adopting those.

I didn't see anything in the backlog, so created https://issues.apache.org/jira/browse/HDDS-2537 for tracking that separately.


I'm not able to scroll down the org menu

I noticed the org-menu on the very left side is fixed and if you have to much orgs you won't be able to scroll them down.

You are right. I am working in solving this.


Sensor last read timestamp

I think that it would be great to know the last 'set' time of a sensor. Currently I'm having issues with a device where the temperature is having issues reading, however since I only send the temperature when I get a read, it's hard to know when my device is "stalled". The wifi / mqtt connection is all good, but it would be great to know approximately how stale the data in the retained mqtt topics is.

Feels like it's up to the particular device to provide it if it's available.
If you need a standard heartbeat, then you can use the "uptime" value instead.

Ah, I hadn't realised there's no now() available on the ESP8266. I guess using the uptime value would suffice, but still published on a sensor data topic e.g. devices/my_device/my_sensor/$uptime so that I can differentiate between "device is up and connected ok" and "device sensor is submitting readings".
Does this sound at all valuable? I can implement this outside of the homie framework but it's come up as something that felt like it should be "free" (i.e. part of the framework).

Any thoughts on this? Happy to close it if nobody thinks it's relevant. I've added this in to my local copy of homie-esp8266 and it's already been invaluable.

Given the fact that there's no feedback, I guess we can close this. 😉

:) happy to close it if you think there's no value. I've personally found it incredibly valuable as my devices are very unstable when running homie-esp8266 with DHT11 sensors (hard to get more than an hours uptime, and sensors often fail to read), and this allows me to track how stale the sensor data is. I'll see if I can implement the feature without having to hack the homie-esp8266 core.
Cheers

I know this is an old thready but can't you just define another property for your temp node that is called settime which could contain the $uptime when the property was last set?

have the node publish an measurement $interval, have the client check whether the data is coming outside the expected interval.
#54

An observing controller will be aware of the arrival time of a message and can track this information accordingly. An exception is the moment when a controller connects to the broker and receives retained messages. Sadly those messages do not provide a timestamp with them. If the client is online and working, it is its task to keep properties correct and updated. Imho the convention doesn't have to do anything here.
In the described troubleshooting case, in which a sensor/client is having system issues, the problem should either be solved or bypassed, e.g. by fixing the sensor or by adding an additional property for the last-update-timestamp as suggested by @nerdfirefighter - which is well inside the current convention.


Deploy to Heroku

The website should be deployed to Heroku.

The site will be deployed somewhere else.


reconfigure is blocked by connecting to ip.

Hi folks,
I am trunning to setup buildfarm master on custom virtualizer at my university.
I found out that ./reconfigure.bash from config repository is taking too long, and tried to figure out what is happening.
U used strace and it seems that problem is this part:
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 6 fstat(6, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0 connect(6, {sa_family=AF_INET, sin_port=htons(80), sin_addr=inet_addr("<IP_ADDRESS>")}, 16) = -1 ETIMEDOUT (Connection timed out) close(6)
From what I am able to find out, it seems that this IP is used by cloud providers for providing metainformation. ( https://serverfault.com/questions/427018/what-is-this-ip-address-169-254-169-254 )
I simply avoided this problem by blocking any outgoing connection to that API and it seems everything is fine...

Can you clarify what process was trying to connect to that address? And do you have the console outputs? It sounds like your networking might not have been fully setup? That's the default link local address scheme for when a DHCP lease is not found.

I see.
I installed ubuntu 14.04 on centos hypervizor.
Git cloned my custom buildfarm_deployment_config (just filled appropiate settings) and executed ./reconfigure.bash master  (same happend on repo)
I debugged it with:
strace puppet apply --verbose -v /root/buildfarm_deployment/master/manifests/site.pp --modulepath=/root/buildfarm_deployment/master/:/root/buildfarm_deployment/master/modules
afaik network is OK and I do not have any problems. Maybe I should provide longer strace output?

@SquirrelCZE Right around the time you opened this issue we completed a refactor of the buildfarm deployment which targets Ubuntu xenial rather than trusty. We aren't able to provide much support for the trusty branch going forward, but it will be available for use as https://github.com/ros-infrastructure/buildfarm_deployment/tree/trusty
If you're still unable to get the deployment working, you might have better luck deploying on xenial. I'm going to close this issue but feel free to respond, open new issues, or post questions on https://answers.ros.org if you have them.


Allow arbitrary environment

While I understand target audience is supposed to run via Docker there's no technical reason why the directory where data is stored and port the app is listening on are not sourced from process.env.
This would allow bare metal hosting at no cost to app's maintainability.

Yes, you're right. It requires a small change so I'll work on it as soon as possible

Hey @orhtej2, I included this change in #73. Can you confirm if it works for you?

This change was included by https://github.com/BaldissaraMatheus/Tasks.md/pull/73 so I'll close this issue. If someone thinks it's not working properly or could be improved, feel free to comment here and I'll open the issue again.

Hi, thanks for that, I did not have the time to test bare metal deployments
yet but the change looks OK!
TY for implementing this :)
On Mon, Feb 12, 2024 at 3:13 PM Matheus Baldissara @.***>
wrote:

This change was included by #73
https://github.com/BaldissaraMatheus/Tasks.md/pull/73 so I'll close
this issue. If someone thinks it's not working properly or could be
improved, feel free to comment here and I'll open the issue again.
—
Reply to this email directly, view it on GitHub
https://github.com/BaldissaraMatheus/Tasks.md/issues/69#issuecomment-1938757647,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAV5D5RD2GDT5I7JHGCDE5DYTIPR5AVCNFSM6AAAAABCYH4G5SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZYG42TONRUG4
.
You are receiving this because you were mentioned.Message ID:
@.***>


Linux VRF support

Linux VRFs allow having multiple routing tables and binding sockets to one of these individually. This is similar to SO_SETFIB on FreeBSD which is already implemented in nsd.
In order to bind a socket to a routing table, the SO_BINDTODEVICE socket option is used with a VRF device name as value. nsd already provides support for this option but does not allow specifying the device name but instead figures out the device name for a given address by itself. I have already built a proof of concept that extends the ip-address directive with an additional device keyword argument that allows changing this device name.
However, to fully support VRFs, it should be possible to specify the device name each time a socket is bound to address, this mainly affects outgoing-interface for selecting the routing domain to use for notifies, maybe it could also be useful for control-interface. As far as I can tell, it's also not possible to use setfib there at the moment.
Before putting more time into creating a PR for this, I'd like to know if there would be interest in this feature and if there's any general feedback so far.

At RIPE NCC, we were looking at using Linux VRFs for our name servers, as an alternative to the policy-based routing we use now. However, we found that in order to use this feature, the software must co-operate. None of the existing DNS servers we use (BIND, Knot NSD, NSD) have this support. So we just dropped the idea for now. However, if there were support for VRFs, we might actually use this feature in the future.

Hi @julianbrost, @anandb-ripencc!
Background:
I'm currently working to get AF_XDP sockets supported in NSD and to do so I'm going to have to shuffle around the way that sockets are configured/opened. This is required because the way NSD currently works is to open both UDP and TCP sockets for every ip-address configured. With the addition of XDP this solution will no longer work because for XDP sockets, you'd open one for a netdev/queue combination. What I'll be doing is to allow users to specify the socket type with the ip-address option. e.g. ip-address: <address>[@<port>] [xdp|udp|tcp] <options>. For XDP sockets you'd then be able to specify something like ip-address: <interface> xdp queue=<queue> servers=<server(s)>. And you'd specify socket-server mappings as desired.
I'll have to look into the details of how VRFs work a bit, but I'm guessing the changes will allow for VRF support to be implemented without too much hassle. Since I'm planning to merge XDP support in stages, and the socket configuration changes are up first, I'll have a go at this too.

Thanks for the update Jeroen!
I'd like to make a suggestion here. NSD doesn't really have a stable/development release model. Everything gets committed and released as production, and this has hurt in the past when breaking changes have appeared in new versions.
Are you able to internally discuss the whole versioning thing, and perhaps convince your colleagues to maintain 2 versions of NSD? Make the current 4.4.x branch the stable one. You can also release a 4.5.x branch, which could be a development branch. You would have more freedom to break things there, or rework some ideas if they don't work too well. Eventually, when you feel that it's ready, you can release 4.6.x as the next stable branch. This is how BIND is doing it, and it seems to work well.
If you don't want the even/odd distinction as with BIND, then you could do what Knot DNS does, where they maintain 2 releases, both classed as production. Currently, they have 3.0.x and 3.1.x as supported versions. The 3.0.x branch gets no feature changes. Only bug fixes are applied to it. For 3.1.x, they do add new features, but again, nothing that will break a production system.  When 3.2 is released, 3.0 will be abandoned, such that 3.1 becomes the previous stable, and gets only bug fixes, whereas 3.2 can get new features.
All this makes it very easy for operators to maintain stable services, while still able to play with new things using newer versions on test systems. With NSD this is just not possible. So could you please bring this line of reasoning to your colleagues and see if the NSD versioning can be improved? You could also consider this for Unbound.

@anandb-ripencc, I believe there's two questions here?

Will the configuration style break current configurations; and
Can we (NLnet Labs) use a different strategy for maintaining stable branches to avoid breaking changes

As to the first question, specifying the socket type would be optional, it'd just fallback to udp+tcp if nothing is specified. I intend to ensure that we don't break any existing configuration files or introduce different behavior. Writing a couple of test cases is what I'd normally do here.
As to the second question: I see your point and I'll bring it up with the others to see how they feel about it. Depending on the urgency, maybe we should open a separate issue regarding release management? That way we can discuss in more detail and perhaps get others to join in too. If you don't mind though, let's keep focus on VRFs in this particular thread :slightly_smiling_face:

@julianbrost, I read the page you so kindly provided. To provide some background on why the SO_BINDTODEVICE and SO_SETFIB changes were merged where to increase throughput and avoid cache misses. Basically, to hook up a cpu core up to a dedicated nic to avoid cache misses. For Linux that's achievable through SO_BINDTODEVICE, but with FreeBSD that's only possible by specifying a dedicated routing table. That's also the reason it's not implemented for other interfaces, though we could opt to allow a selection of socket options to be specified on a per-interface base. (nsd.conf.sample included in the repo provides more detail on performance etc)
Before I (or you) go off and implement things, @julianbrost, @anandb-ripencc: can you describe the use-case a bit? I can imagine using multiple nics per dedicated cpu. i.e. if you have slower nics, use multiple to achieve a greater throughput? But that's from a performance point-of-view, maybe I'm missing some other obvious use-case?

For me it's just that I'm playing around with VRFs for other services on a host that happens to also run a nameserver as well. Nothing that can't be solved without VRFs, VRF support would be nice to have as it would allow me to remove some extra policy-based routing workarounds that I have specifically for the nameserver. So I looked if any nameservers already support this, didn't find one and thus looked at the source and found that nsd is probably the easiest one to add this.

Our use case has nothing to do with performance. We currently use policy routing to separate the management traffic and service traffic on a server. The first interface on a server is used for management (ssh, monitoring, etc). The second interface is connected to Internet exchanges or a host network. It receives DNS queries, and we want the DNS responses to go out the same interface. Policy routing works, so there is no reason to abandon it. But we recently looked at VRFs to see if we could use them. However, none of the name servers currently support them, so we just stuck to policy routing, and it is unlikely that we would use VRFs.


fix: Support dynamic WS endpoint by using browserURL

Summary
see https://github.com/smooth-code/jest-puppeteer/issues/210

hi @shayke
I am not sure it can fix your problem. could you please help us to test your case?


⚠ Samsung has degraded performance

In 26e46a1, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2661 ms

Resolved: Samsung performance has improved in b6ef6f4.


function does not update to new pool sizes?

https://github.com/nexlabs22/Nex-Dex-Contracts/blob/ed0168345d58f91311e545ac626d2d971983e784/contracts/Exchange.sol#L980
should this function not update the new pool sizes as a variable that is returned from this function?
Otherwise if you liquidate multiple users you liquidate all users according to the same pool price,
this would move the pool price less than its should.
Same goes for all (hard)Liquidate instances

Yes now they are updating after each user liquidation.
https://github.com/nexlabs22/Nex-Dex-Contracts/blob/49154352d089cfc03c96e7399355d7f9d0b57ea3/contracts/Exchange.sol#L283
https://github.com/nexlabs22/Nex-Dex-Contracts/blob/49154352d089cfc03c96e7399355d7f9d0b57ea3/contracts/Exchange.sol#L962-L983
https://github.com/nexlabs22/Nex-Dex-Contracts/blob/49154352d089cfc03c96e7399355d7f9d0b57ea3/contracts/Exchange.sol#L747-L749

https://github.com/nexlabs22/Nex-Dex-Contracts/blob/49154352d089cfc03c96e7399355d7f9d0b57ea3/contracts/Exchange.sol#L365-L367

Looks good to me!


deps pinning prototype 1 (#146)

Maybe something like this? wdyt?

I'll try to set aside some time and play around with this early next week.
I think it would make sense to have a separate command to create a snapshot file (./fips pin or ./fips lock). And then may be when the imports are read (e.g. here: https://github.com/floooh/fips/blob/master/mod/dep.py#L99) it would check if such a snapshot file exists in the top level repository, and fix up any revs in the imports dictionary with the revs from this file...
This way fips fetch and fips update should automatically do the right thing... (at least that's the idea) ;)


bug: Add other missing games.

There were a few other missing games I found. I wrote a little tool for that. Other pull request incoming.

@shanecelis & @grymmy: I think I've fixed the conflicts!

I made a new PR that restores the changes the old PR did.
https://github.com/hackclub/sprig/pull/971
I am seeing weird messages in this PR of shanecelis force-pushed main branch 8c97c0f... 8 minutes ago. that don't look right to me. Is this more vercel weirdness?

I made a new PR that restores the changes the old PR did.
https://github.com/hackclub/sprig/pull/971
I am seeing weird messages in this PR of shanecelis force-pushed main branch 8c97c0f... 8 minutes ago. that don't look right to me. Is this more vercel weirdness?

This is git warning about a push to a remote that overwrites history and may be an unavoidable consequence of how the merge last week was performed.


Improve logging / remove debug messages

There seem to be some logging messages that are printed. This one is printed especially often: https://github.com/andrewauclair/ModernDocking/blob/3fa9a8c118ba5ae70c827d23f2ff598799c3274f/docking-api/src/ModernDocking/floating/DockingOverlay.java#L391
This should probably be removed or put under some sort of parameter

I would recommend using the sl4j facade to manage log levels and abstract the logger used.
For the tests, you can use the Simple package:
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-simple</artifactId>
      <scope>test</scope>
    </dependency>

I personally use log4j. But any logger is alright.  For apps that use a logger, there are adapters from just about any logger to anything...


Add e2e tests for a bash script

A possible use case for mirrord is running commands in bash as if it's running in the remote pod. Please add e2e tests that verify file reads, file writes, and environment variables access work for a bash script run with mirrord.

Note - if the outgoing traffic feature has been implemented by the time development starts on this issue, then it should be tested here as well.

After some testing it appears that the simplest and most common way of testing if "file exist" uses a not yet supported sys-call faccessat
FILE=/etc/resolv.conf
if [ -f "$FILE" ]; then
    echo "$FILE exists."
fi

the [ -f "$FILE" ]; or test -f "$FILE"; are the culprits -> faccessat2(AT_FDCWD, "/etc/resolv.conf", R_OK, AT_EACCESS)


Clicking on unsaved/unique material after creation results in unpredictable behavior

Godot version
4.0 Alpha 7
System information
Windows 10 Nvidia GTX 1060 Intel i5 4690k
Issue description
When you create a new material, save the scene, exit your project, re - enter your project, and click on the material in the inspector,
the material acts unpredictably.
https://user-images.githubusercontent.com/83078010/167246290-b40d79ad-685c-402e-84e5-1488345218f1.mp4
When you initially create a material, you can click it, and it will expand and contract
However, if you exit your project, and re -enter, when you click on a material, it will open to a seperate inspector window, making
it really awkward to edit materials.
Steps to reproduce
Create a scene
Create a mesh
Create a material
Click on it a couple times to verify that it will expand and contract.
Exit your project
Re - Enter your project
Open your scene
Click on the material again
The material will open a seperate inspector window, instead of expanding and contracting.
Minimal reproduction project
MaterialBug.zip

I can not reproduce this bug in v4.0.beta.custom_build [bbac8198f]. If I follow the reproduction steps the Material opens the same way as it does when creating it.

Thanks for testing. Closing as fixed. Please comment if this is still reproducible.


Convert NSDate in react-native JS

Hi,
is there a simple way to convert NSDate columns into a readable format?
I query an old sqlite database which includes NSDate columns and I don't know how to convert the date into a js date object.
example:
{
"ZSTART_DATE" : 525346440,
"ZCREATED_DATE" : 525346479.77402
}

Many thanks for your help!

finally I found a solution for my problem!
SELECT
   strftime('%m-%d-%Y %H:%M:%S', ZCREATED_DATE + 978307200, 'unixepoch') AS ZCREATED_DATE
FROM MY_TABLE


[proposal] move awesome-webpack to this repo

Feature to document
Move https://github.com/webpack-contrib/awesome-webpack repo inside this repo and create page on site for this. Maybe will be great keep file in markdown format for developers which love read information from github.
Author(s)
any
Additional information
It is allow to us keep information about community loaders/plugins/etc in one place.
[ ] I am willing to work on this issue and submit a pull request.

Sounds good to me, What about its owner/owners?

@montogeek Can you clarify about owners? If you about contributors, i think working through PRs is normal workflow

I mean the owners of that repo

@montogeek oh, no problems with this

/cc @montogeek I can send a PR, can you touch me where i should start?

What would be the route and its navigation inside the site? That is the starting point.
I think that having a dedicated link in the subnavigation (next to Migrate, Loaders, etc) would be fine.

But in the other hand, this page will be so abstract regarding content, it has links to a lot of different stuff, some of them already exists in the website, like loaders and plugins section, that information shouldn't be duplicate.

@montogeek

I think that having a dedicated link in the subnavigation (next to Migrate, Loaders, etc) would be fine.

How we name page?

But in the other hand, this page will be so abstract regarding content, it has links to a lot of different stuff, some of them already exists in the website, like loaders and plugins section, that information shouldn't be duplicate.

I will remove duplicate content

How we name page?

Resources I guess.

:+1: Where i can starts? I want to deprecate this repo as soon as possible to move all docs issue in one repo

By creating a folder and an index.md file in src/content/resources/index.md


Handling real multi line entries.

Resolves #77. A new implementation for handling multiline entries that span across several lines (not only with \n). The code is now considering the quotes to start and end a multiline entry.

Greetings. Can you tell me when these changes will be merged?

Greetings. Can you tell me when these changes will be merged?

Changes are merged. Best!


RISC-V debugging: registers not updating

Describe the bug
If you debug RISC-V binary using QEMU and Ghidra, the debugging appears to be working, but the registers are not updating (only Program Counter). Works ok using similar setup on ARM variants (i.e similar setup as in here):
https://github.com/NationalSecurityAgency/ghidra/issues/4756
To Reproduce
Steps to reproduce the behavior:

Use QEMU to emulate RISC-V bare-metal binary, my script below:

/home/Downloads/qemu-7.1.0/build/riscv32-softmmu/qemu-system-riscv32 \
-m 256 \
-M virt \
-device loader,file=flash_master.bin,addr=0x20000000,cpu-num=0  \
-s -S

Open an RISC-V binary in Ghidra debugger
Select Debugger Targets and then 'IN VM GNU gdb local debugger' and point it at /usr/bin/gdb-multiarch
In interpreter window type 'target remote localhost:1234', it should connect to QEMU stub
Got to Objects window and right-click on Inferiors -> 1 and hit R - doesn't bring up record dialog, like it should.
Close dialog and click Step or Next. Registers don't update, but debugger steps ok, dynamic view updates also

Expected behavior
Registers should update. Same setup but using gdb, works fine i.e. gdb variant script:
/home/Downloads/qemu-7.1.0/build/riscv32-softmmu/qemu-system-riscv32 \
-m 256 \
-M virt \
-device loader,file=flash_master.bin,addr=0x20000000,cpu-num=0 \
-s -S & gdb-multiarch -q -ix script.txt

Screenshots (Ghidra fails, gdb, ok)

Environment (please complete the following information):

OS: Linux Ubuntu 20
Java Version: 17
Ghidra Version: 10.2.2
Ghidra Origin: official GitHub distro
gdb 9.2-0ubuntu1~20.04.1

The fact that anything other than Objects/Targets is populated means you're already recording, which is good news. (BTW, you can see you're recording in the Threads window. You'll see the red circle icon next to the trace name "1 - process 1 - null ...."
It looks like sp is also getting updated. Those two registers (pc,sp) are routinely read by the UI to keep the display up to date. My guess is nothing has kicked it to read the other registers (which, if true, is admittedly a bug). Is there no expander for the "Registers" node in the Objects window? Perhaps right-click it and select "Refresh". Usually expanding it causes it to load all registers.
If that doesn't work, then I may request you inspect the log, again. As in #4756, I'd be looking for entries related to GdbReadRegistersCommand. Is this another case that worked in 10.2.1 but not 10.2.2?

Thanks for the useful information.
So in the first post screenshot you should be able to see the register node isn't populated, or even properly named. I didn't refresh but have now to no avail and I can't expand any further than the screenshot shows.
Having looked at the log (attached), it looks like there is a memory range issue here. The wheels start falling off around 20:22 when I target remote localhost:1234. At 20:25:08 I press step and get some more similar memory range errors.
log.txt
As for 10.2.1, I'll have to pull it down and set it up and get back to you

Actually, I think the key error is  the E14 on "read registers":
Caused by: agent.gdb.manager.impl.cmd.GdbCommandError: <GDB/MI2 -data-list-register-values --thread 1 --frame 0 x 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 66 67 68 321 325 326 327 385 386 387 388 389 449 833 834 835 836 837 838 839 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 993 994<PHONE_NUMBER> 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 2017 2018 2019 2020 2881 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 3009 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3922 3923 3924 3925 4161 4162 4163 4164 4165 4166 4167> caused '{msg=[Could not fetch register "tdata3"; remote failure reply 'E14']}'
at agent.gdb.manager.impl.GdbPendingCommand.checkCompletion(GdbPendingCommand.java:226)
at agent.gdb.manager.impl.cmd.GdbReadRegistersCommand.complete(GdbReadRegistersCommand.java:190)
at agent.gdb.manager.impl.cmd.GdbReadRegistersCommand.complete(GdbReadRegistersCommand.java:38)
at agent.gdb.manager.impl.GdbPendingCommand.finish(GdbPendingCommand.java:71)
... 4 more
A guess, but....a pretty good bet we have an architecture mismatch of some sort.  Any chance you are using straight-up gdb (vs. say, gdb-multiarch) when you launch from ghidra?  And what does "show arch" in the Interpreter window (and in your gdb raw test) return?

ah...yes, doh,
So gdb-multarch raw shows 'riscv automatically set'. For Ghidra, see screenshot - definitely gdb-multiarch and gives slightly different riscv: rv32. I have forced the interpreter in Ghidra to riscv, still nothing.

Interestingly in 10.2.1 the PC isn't showing as updating in the registers window. Looks similar to 10.2.2 apart from that.

Interesting that GDB names tdata3 in particular.... A couple experiments to try:

In the Interpreter (or in vanilla gdb-multiarch) just try print/x $tdata3
In Ghidra's "Registers" window, there is a "Select Registers" button in the toolbar. Disable tdata3 and try stepping again. Assuming that has an effect, you may need to examine the log and iteratively remove each problematic register until things work. Hopefully the subset that remains is useful :/

Seems on our end we may want to add logic that can automatically block registers when we get such errors. I'm always wary of text matching human-readable error messages, though....

I just looked back at the original screenshot and noticed pc and sp are in the "Watches" window. I'm curious if you can cherry-pick other registers.... Try a third, say t3, and let me know if it works. If it does, also check if its value now appears in the "Registers" pane.

So,

In both raw and interpreter: could not fetch register "tdata3" ; remote failure reply 'E14'
Unticking the Registers window, register tdata3. Same issue as d-millar found - Could not fetch register "tdata3"; remote failure reply 'E14']

OK. Thanks for the info. FWIW, it looks to me like cherry-picking t3 in the Watches window worked. It still says 0, but it no longer looks grayed, so I think 0 is its actual value. I don't yet know why unselecting registers doesn't cull them from the request, though.

Confirmed, see s2 in the screenshot, updates with the right value


Add lint checks and fix warnings.

These compiler warnings are annoying.

Coverage remained the same at 77.305% when pulling 55d3eec58174a6f06e1ffc704d780c7c93e6a28a on dwarfcrank:fix-unchecked into 38899e42b45ade7907e97e43b5f2a1c699ddb4ea on tdd-pingis:master.

Coverage remained the same at 77.305% when pulling 632096b56135ca40f57a7bc739287d42e971bf38 on dwarfcrank:fix-unchecked into 38899e42b45ade7907e97e43b5f2a1c699ddb4ea on tdd-pingis:master.

Changes Unknown when pulling 8a94ae2165c45a0d1246f4ef3857355bd534cd38 on dwarfcrank:fix-unchecked into ** on tdd-pingis:master**.

Coverage remained the same at 77.305% when pulling 8a94ae2165c45a0d1246f4ef3857355bd534cd38 on dwarfcrank:fix-unchecked into 607fe827d1f2539f447fcdbbaf24f2faea5fed4b on tdd-pingis:master.

Changes Unknown when pulling 6693c0203af1f4a2f30a902b3d7de1cab06a2292 on dwarfcrank:fix-unchecked into ** on tdd-pingis:master**.


Recommend default queuing backend for Active Job

What's the task?
Active Job comes out of the box with an in-memory queueing system. However, this is not sufficient for a production system - because the queue only exists in memory, pending tasks will be lost if the system restarts.
This ticket is to investigate the pros and cons of various queuing systems and recommend a default backend that will work well for most new Nava projects.

@rocketnova @lorenyu @SammySteiner  - starting to take a look at some of the recommended libraries from the documentation.... I assume that backends that require Redis or another queue service not currently a part of the infrastructure would be less attractive than something like Good Job that runs using Postgres?
Any thoughts on recommending a single library, vs. doing a short writeup on pros/cons of a couple options? Wondering whether something like Resque, for example, might become more attractive if a project is already planning on using Redis.

@ellery-nava I think a short writeup on pros/cons sounds very helpful, especially in terms of considerations that teams should account for when selecting a backend.
Licensing and hosting costs should definitely be a consideration. I'd say that it's possible for something that is Postgres-backed to be more expensive than something Redis-backed, but I think it really depends. From a quick search, it sounds like ElastiCache for Redis is cheaper but really best used as a caching layer, rather than as the primary data store, whereas MemoryDB for Redis is great as the primary data store, but really expensive.

if needed SQS-backed is also ok. Azure has an equivalent.
Postgres-backed would be easiest since that wouldn't be different between AWS and Azure


ClassCastException during signature verifaction

Current Behavior
When trying to use the signature verification, the build fails with ClassCastException: class org.bouncycastle.openpgp.PGPCompressedData cannot be cast to class org.bouncycastle.openpgp.PGPSignatureList.
Stacktrace (Gradle 8.5):
 java.lang.ClassCastException: class org.bouncycastle.openpgp.PGPCompressedData cannot be cast to class org.bouncycastle.openpgp.PGPSignatureList (org.bouncycastle.openpgp.PGPCompressedData and org.bouncycastle.openpgp.PGPSignatureList are in unnamed module of loader org.gradle.initialization.MixInLegacyTypesClassLoader @2fba3fc4)
        at org.gradle.security.internal.SecuritySupport.readSignatures(SecuritySupport.java:93)
        at org.gradle.security.internal.SecuritySupport.readSignatures(SecuritySupport.java:82)
        at org.gradle.api.internal.artifacts.verification.signatures.DefaultSignatureVerificationServiceFactory$DefaultSignatureVerificationService.verify(DefaultSignatureVerificationServiceFactory.java:136)
        at org.gradle.api.internal.artifacts.verification.signatures.CrossBuildSignatureVerificationService.performActualVerification(CrossBuildSignatureVerificationService.java:111)
        at org.gradle.api.internal.artifacts.verification.signatures.CrossBuildSignatureVerificationService.verify(CrossBuildSignatureVerificationService.java:89)
        at org.gradle.api.internal.artifacts.ivyservice.ivyresolve.verification.writer.WriteDependencyVerificationFile$2.run(WriteDependencyVerificationFile.java:419)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$QueueWorker.execute(DefaultBuildOperationExecutor.java:238)
        at org.gradle.internal.operations.DefaultBuildOperationQueue$WorkerRunnable.runOperation(DefaultBuildOperationQueue.java:272)
        at org.gradle.internal.operations.DefaultBuildOperationQueue$WorkerRunnable.doRunBatch(DefaultBuildOperationQueue.java:253)
        at org.gradle.internal.operations.DefaultBuildOperationQueue$WorkerRunnable.lambda$runBatch$0(DefaultBuildOperationQueue.java:238)
        at org.gradle.internal.resources.AbstractResourceLockRegistry.whileDisallowingLockChanges(AbstractResourceLockRegistry.java:50)
        at org.gradle.internal.work.DefaultWorkerLeaseService.whileDisallowingProjectLockChanges(DefaultWorkerLeaseService.java:236)
        at org.gradle.internal.operations.DefaultBuildOperationQueue$WorkerRunnable.lambda$runBatch$1(DefaultBuildOperationQueue.java:238)
        at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:264)
        at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:128)
        at org.gradle.internal.operations.DefaultBuildOperationQueue$WorkerRunnable.runBatch(DefaultBuildOperationQueue.java:224)
        at org.gradle.internal.operations.DefaultBuildOperationQueue$WorkerRunnable.run(DefaultBuildOperationQueue.java:192)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:47)

Expected Behavior
A ClassCastException should never occur during the signature verification.
If the signature is valid, the key should be added to the verification-metadata.xml file.
If the signature is faulty, the user should be presented with a clear error message stating which signature file was invalid.
Context (optional)
No response
Steps to Reproduce
Create a Gradle build and add a dependency on fr.inria.gforge.spoon:spoon-core:10.4.0. Then try to create the signature verification data by using ./gradlew --write-verification-metadata pgp,sha256.
I also created a reproducer here: https://github.com/Zuplyx/gradle-issue-cce
Gradle version
8.5 locally; 8.6 for the reproducer
Build scan URL (optional)
No response
Your Environment (optional)
No response

The issue is in the backlog of the relevant team and is prioritized by them.


Include llama.cpp documentation

I've updated the customization page by adding a quick section on setting up and using llama.cpp as a model backend for Continue.

This is very nice, thank you! Definitely needed to be done


Remove str special-casing in DataFutures as they should wrap only Files

A number of tests still used the old style of output handling where strings
could be passed in and were implicitly treated as files. Those tests have
been changed to use the mandatory-File form of outputs.
Fixes issue #1205

@benclifford Looks like the travis build is failing at the check for doc stubs (https://travis-ci.com/github/Parsl/parsl/jobs/322756321#L2320). I am not able to reproduce this on my laptop. Can you take a look please?

most recent fail in ff51e21 is due to flake8 not doc stubs


Issue when playing Datapack functions.

Whenever trying to play a command in a command block, it doesn't happen, I've looked through the commands and the only reason its happening is everything is to @s. I'd request it to put it to @p so you can run it through command blocks.

The datapack handles more than just the /playsound commands to play the notes, so running a /playsound command generated by the datapack without using the actual datapack will not work.
If you are interested in exporting Note Block Studio songs to command blocks, please use NBS2CBS:
https://www.youtube.com/watch?v=pjeNj1miz8A


Add unit tests examples suite organization

Added 61 unit tests
Added and organized a comprehensive examples directory covering all common accumulate use cases
Refactored code where warranted
Updated/Added readme files

Ok,

everything under .dart_tool is a debris. It's not a part of the source code per se but the execution system
// on top of the file with the path is debris also
spaces additions, splitting a single line of code into 2, adding "/" or not adding, in the end, this type of "refactoring" is highly controversial. In other environments will easily lead to "holy war". Good practice to use decisions already made in the repo.
when working with code, we tried to use the conventional commits practice https://www.conventionalcommits.org/en/v1.0.0-beta.2/ I would suggest using that in the future.


DBAAS-494

Changed the verbiage under No Database Instances, changed the icon and added the Close button
Signed-off-by: Olga Lavtar<EMAIL_ADDRESS>

@olavtar please resolve conflicts


add linter to project

We've already got a linter in the server side - maybe you could move that to the project root?


All functions using Redis to acquire configuration

SHALL

Use TF Redis

Functions

[x] MMG Validator

[x] MMG Redis Table
[x] Vocab Redis Table

[X] Vocab Function @dtx0111
[X] MMG Validation Function @dtx0111

[X] load MMGs from MMG AT
[x] #223  load Legacy MMGs

[x] Message Transformer > MMG-based model transformer 2022-12-01 @dtx0111 Confirm this is done in the transformer

N/A

Receiver-Debatcher
Structure Validator

I vote for a 5 for points (since I'll be missing standup Oct 21).
From my understanding, Redis is already terraformed with a private endpoint ready to go. We can also test locally because the local firewalls via zscaler has also been completed. If I have time, I'll probably use this ticket as part of setting up my development environment locally on my GFE.

I spent the latter half of my day setting up my GFE and writing test code for firewall testing.

This has been an integration task for hl7 application developers to use Redis - Redis has been spun up for a while now; and the team has been slowly integrating with it as they see fit.
This is no longer an infrastructure task. Removing infrastructure tag.

This has been an integration task for hl7 application developers to use Redis - Redis has been spun up for a while now; and the team has been slowly integrating with it as they see fit.
This is no longer an infrastructure task. Removing infrastructure tag.

2022-12-12: @dtx0111 confirmed she completed this task last sprint. No associated PR; rather, checking that each Function consumed from Redis.


Improve documentation

General background on tracing
specifics on howto use sleuth (with or without zipkin)

what else @dsyer @adriancole @marcingrzejszczak

I guess we need to look at all the configuration options

@dsyer - good idea, in micro-infra-spring we had a problem with actually finding all the options. Maybe we could think of automating that a little bit? I'm not saying that we should do it right now. It could be worth to generate a page with all the configuration options and maybe as a description pass the javadoc or sth. Just an idea...
Until then maybe it would be worth to create manually a table with current params, their defaults and some short description?

@snicoll has some tools to automate configuration docs. We should invest some time in them and get an appendix into Spring Cloud docs.

There's a few things here in particular AppendixGenerator
It's very raw but does the job for the checks I am applying between each release. Spring Boot does not  generate the doc automatically yet but looking at this is good enough to spot inconsistencies (wrong/conflicting namespaces, etc).
Please ping me if you need more info

Done in http://cloud.spring.io/spring-cloud-static/spring-cloud.html


Prevent neomake from running at startup

Expected behavior
Neomake should not run a task at startup if not instructed to.
Steps to reproduce
Here's my config:
let g:neomake_open_list = 2
call neomake#configure#automake('w')

Open a Rust project.
cargo is running, but it should not.

Here's the log when I open the project:
09:38:51 [D      ] [-.-:1:1] automake: registered events: BufWritePost.

(I don't know what triggers this BufWrite since I only open files.)
Output from (verbose) NeomakeInfo
Neomake debug information
Async support: 1
Current filetype: rust
Windows: 0
[shell, shellcmdflag, shellslash]:['/usr/bin/fish', '-c', 0]
Enabled makers
For the current filetype ("rust", used with :Neomake):

cargo

append_file: 0
args: ['check', '--message-format=json', '--quiet']
auto_enabled: 1
cwd: '/projects/relm'
exe: 'cargo'
process_output: function('neomake#makers#ft#rust#CargoProcessOutput')
NOTE: you can define g:neomake_rust_enabled_makers to configure it (or b:neomake_rust_enabled_makers).

Default maker settings:

output_stream: 'both'
remove_invalid_entries: 0
buffer_output: 1

For the project (used with :Neomake!):
None.
NOTE: you can define g:neomake_enabled_makers to configure it.
Settings
New-style (dict, overrides old-style)
g:neomake: {
  'automake': {
    'ignore_filetypes': ['startify'],
    'events': {
      'BufWritePost': {
        'delay': 0,
      },
    },
  },
}
b:neomake: unset

Old-style
g:neomake_logfile = '/tmp/neomake.log'
g:neomake_open_list = 2
g:neomake_place_signs = 1

makeprg=make
:version
NVIM v0.2.2
Build type: Release
LuaJIT 2.0.5
Compilation: /usr/bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -Wconversion -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -O2 -DNDEBUG -DMIN_LOG_LEVEL=3 -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -I/build/neovim/src/build/config -I/build/neovim/src/neovim-0.2.2/src -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/build/neovim/src/build/src/nvim/auto -I/build/neovim/src/build/include
Compilé par builduser

Features: +acl +iconv +jemalloc +tui
See ":help feature-compile"

         fichier vimrc système : "$VIM/sysinit.vim"
               $VIM par défaut : "/usr/share/nvim"

Run :checkhealth for more info

:messages
"examples/buttons-attribute.rs" 142L, 4073C
LanguageClient project root: /projects/relm

09:38:51 [D      ] [-.-:1:1] automake: registered events: BufWritePost.

This does not run the maker, but only informs about what autocommands are registered/handled.
Is there more in the logs, i.e. something about really running the maker?

I do not think it runs.
Something else might run cargo.
You could check using pstree -apL to see where it is coming from maybe.
I am going to close this issue here, but feel free to provide more info still, of course.


Landing Thrusters Slows and Eventually Softlocks the Ship

On both a continuous and fresh save file, I've noticed that the ship, while maxed out in Landing Thrusters, takes off and lands slower and slower with each day. When I have to go to the Company Building, the ship will immediately spawn where it would normally land, then zips to where it normally spawns from and takes at least a full minute to land. The slowing effect worsens each day until the ship no longer lands before midnight; if the lever to take off is pulled in this state and the ship has not finished landing, it seems to prevent the night from automatically ending due to reaching midnight, which results in a soft lock. Exiting to the main menu and re-entering the game resets the speed of the ship but it is only a preventative measure, as eventually it reaches the same slowed speed.

I can't see how the logic for the upgrade manages to give you a slower speed.

        [HarmonyPatch(nameof(StartOfRound.ShipLeave))]
        [HarmonyPrefix]
        static void ShipLeavePrefix(StartOfRound __instance)
        {
            if (!UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_ENABLED) return;
            if (UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_AFFECT_LANDING && !UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_AFFECT_DEPARTING)
            // if the speed was changed on landing and we want back to vanilla when leaving
            {
                // revert
                __instance.shipAnimator.speed /= LandingThrusters.GetLandingSpeedMultiplier();
                return;
            }
            // if the speed wasn't changed on landing and we want to change the speed when leaving
            if (!UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_AFFECT_LANDING && UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_AFFECT_DEPARTING)
                __instance.shipAnimator.speed *= LandingThrusters.GetLandingSpeedMultiplier(); // apply the speed buff
        }
        [HarmonyPatch(nameof(StartOfRound.EndOfGame))]
        [HarmonyPostfix]
        static void EndOfGamePostfix(StartOfRound __instance)
        {
            if (!UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_ENABLED) return;
            // if we didn't change the speed for leaving, there's nothing to do
            if (!UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_AFFECT_DEPARTING) return;
            // revert speed buff when reached orbit
            __instance.shipAnimator.speed /= LandingThrusters.GetLandingSpeedMultiplier();
        }

        [HarmonyPatch(nameof(StartOfRound.openingDoorsSequence))]
        [HarmonyPrefix]
        static void OpeningDoorsSequencePrefix(StartOfRound __instance)
        {
            if (!UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_ENABLED) return;
            // if we don't want to alter the speed when landing, do nothing
            if (!UpgradeBus.Instance.PluginConfiguration.LANDING_THRUSTERS_AFFECT_LANDING) return;
           // apply speed buff when landing
            __instance.shipAnimator.speed *= LandingThrusters.GetLandingSpeedMultiplier();
        }

GetLandingSpeedMultiplier() always returns a value higher or equal to 1.
If your config doesn't have a special case in which I did not consider for the calculations, I genuinely don't know what's causing that behaviour.

I'm honestly not sure either. As far as I can tell, I don't have any mods installed that should affect the landing speed of the ship, of all things. Maybe one of them randomly does, but I figured if there wasn't I should at least point it out just in case I did something lol. I got footage of this happening to better visualize it, but it's more or less as I described it; https://streamable.com/u88nct
If needed, I can provide my r2modman profile as a code. At least outwardly, there isn't one that should affect it, but if it helps I can provide it 🤷

Are you still having this issue?
If so, can you reproduce it and send me the logs related to that game session?
You can also provide the used configuration for the issue to occur.
I have just returned from break thus not working on this mod for a while.

I started a new save since then and didn't buy the upgrade out of uncertainty lol. I'll test it later to verify if it's still an issue and see what I find. My mods have changed a bit since I initially posted this but I'll report back when I test!

So it seems to be the case that the issue ironed itself out. I tried it on the save I'd started using with no problems. I also tried installing GameMaster, which itself was causing other issues (and I also had installed at the time, so I assumed was a cause), but the upgrade still worked even then. I can only assume it was another mod I had installed but I can't recreate what was happening. Could be that the mod updated earlier today to 3.9.5, but I have no idea lol. I'll close the issue and open a new one if I find myself in the same situation later on


systemd-timedated not working because /etc/localtime does not point to /usr/share/zoneinfo

Issue description
systemd-timedated does not start up because it expects the /etc/localtime symlink to point to /usr/share/zoneinfo/*
Steps to reproduce
try to start systemd-timedated
Technical details

System: NixOS unstable
Nix version: 1.11.2
Nixpkgs version: 16.09pre84171.6d16979

This must have been fixed by #19449.


edits to Job submit form (input panel on the left)

sidenav layout: the panel seems to have become narrower than it was earlier in the afternoon (now the ‘Submit’ button at the bottom is sticking out of the panel).  the Submit button stays wide while the "edit loaded genes" button shrinks with sidenav column.    Either change the layout and make the button smaller (or some combination)

Add the text “ [Help]” to the “?” icon text for popovers for the items  3. Select Molecular Network, 4. Select Feature Type, 5. Select Negative Gene Class  ( see #155 )

Overall help texts: some end with a period . and few don’t - make consistent

"1. Enter/Load Gene Set"

Change “Enter/Load Gene Set” to “Enter/Upload Gene List”.
Change “?” icon text to: “Manually enter a gene list or upload a gene list file. Click to see examples for both. [Help]”
When a geneset has already been loaded, the text “Add Genes” changes to “Edit Loaded Genes”. To make it clear that the user can not only edit their preloaded genes but also clear their input and enter a new gene set, let’s change the text to “Edit Loaded Genes / Add New Genes”.
An external user mentioned that having a number 1 on this item seemed weird when it was the only think that was showing.

"2. Job Name"

Move “Job Name” below and make it item number 5, just above email. That way, the two optional items will be at the end and together.

Change “?” icon text to: A unique job identifier will be auto-generated. To make the model easy to identify, you can add an optional prefix to the job ID by typing text into the box below. Max 32 characters; anything longer will be truncated.

Change text above text box to: “(Optional) Add a prefix to the job name”.

The auto-generated unique string (next to the optional text box) is not aligned with the hyphen on the same line.

Remove the gray text “Optional” inside the text box to be consistent with the email text box.

Center-align the Submit button to the gray panel or make it as wide as the “E”.

@jacobnewsted if anything on this list isn't complete, please create a new issue with those things yet to do, and close this one?

Going to close this and condense the remaining issues into issue #155


Refactor Stores and States

Generics is used quite inconsistently, the best example being classes like

https://github.com/ldbc/ldbc_snb_implementations/blob/master/cypher/src/main/java/com/ldbc/impls/workloads/ldbc/snb/cypher/CypherDb.java
https://github.com/ldbc/ldbc_snb_implementations/blob/master/common/src/main/java/com/ldbc/impls/workloads/ldbc/snb/SnbDb.java

Fixed during the big refactors of #33.


[FEATURE] Group events together

Description
On the community events page, we have duplicate events, but we can group them together and show multiple people attending them
I think stacking the avatars would look good

https://tailwindui.com/components/application-ui/elements/avatars#component-00ccf3da2333eae32886bbc1d1ee362c
Screenshots
No response
Additional information
No response

@eddiejaoude Can I get this one?

Sure, assigned to you 👍

I am not sure what would be best to group them on, maybe the url?

How far are you on this @ThorOnTheRocks? Do you mind an extra pair of hands on this?
It would be lovely to know you and work with you!

@eddiejaoude I guess grouping them on the url would be a good choice, showing only one card if it is the same event and the stacked avatar on the right corner. Regarding the UI I was already thinking about the stacked avatar from tailwind, it's the way to go I think.
@thebarshablog I haven't even started to be honest, my plan was to start later today after work but yeah that would be amazing actually to work together! We should split the tasks I guess like someone taking care of the UI and another about the logic perhaps? Just to avoid working on the same files maybe...I open to any suggestions really so what you think it's best!

Sounds great! @ThorOnTheRocks. Are you open to getting over a GMeet or otherwise to speak elaboratively on it? Let me know, I'll make arrangements

I was already thinking about the stacked avatar from tailwind, it's the way to go I think.

I have paid for the Tailwind components, so I can get you the code for that component to use on the project
export default function Example() {
  return (
    <>

    </>
  )
}

Let me know if you need anything else

GMeet or otherwise to speak elaboratively on it? Let me know, I'll make arrangements

Maybe a Discord call, so others could listen and learn?

Anything works @eddiejaoude.

@eddiejaoude That's great news that we can use the Tailwind components! Amazing!
@thebarshablog Yeah sure I would love to so we can organize the work faster!

Let me know a date and time according to your convenience.

I just sent you a DM on Discord so we can speak there instead of commenting here on the PR

Let me know a date and time according to your convenience @ThorOnTheRocks

I just sent u a DM on Discord so we can speak there and organize how to split this in tasks

Hey @eddiejaoude Gian and I spoke over this particular issue and we can work on it together. However, there were some other thoughts we had in mind.

Introduce a drop-down, tag-like feature to select from common events people are going to. [Thought over this but still would like to put out if just making such a change for just the events will be an enhancement or not]. Otherwise, both Gian and I can work on stacking the avatars.
@ThorOnTheRocks any additions? Let us know if you would like to be co-assigned on this.
Thanks.

@ThorOnTheRocks any additions? Let us know if you would like to be co-assigned on this.

Sure! The ideas sound great as we discussed the other day! The only thing is probably this goes beyond the scope of this issue and probably we could open another issue/feature implementation on this other idea perhaps?

Keeping changes/PRs small would be great 👍 we can keep adding value/improvements

Keeping changes/PRs small would be great 👍 we can keep adding value/improvements

@eddiejaoude you may assign us on this.

Hi @eddiejaoude I'm trying to figure it out how to best tackle this issue but perhaps I need other opinions and would love to get some feedbacks:
So far what I have been trying to do is to create two different data structures: one with unique events and another with the duplicated events where we keep all the usernames linked.
My only doubt with this approach is that we can get to a pretty crazy level of deep nesting and iteration data. I'm not sure that this will be easy to maintain and scale in the future perhaps:
function removeDuplicateEvents(categorisedEvents) {
const uniqueEvents = {};
const seenUrls = new Set();
["all", "virtual", "inPerson", "cfpOpen"].forEach(category => {
  uniqueEvents[category] = categorisedEvents[category].filter(event => {
    if (seenUrls.has(event.url)) {
      return false;
    }
    seenUrls.add(event.url);
    return true;
  });
});
return uniqueEvents;

}
const uniqueEvents = removeDuplicateEvents(categorisedEvents);
function findDuplicatedEventsByUrl(data) {
const events = {};
data.all.forEach(event => {
if (!events[event.url]) {
events[event.url] = {
usernames: [event.username],
event
};
} else {
events[event.url].usernames.push(event.username);
}
});
const duplicatedEvents = Object.values(events).filter(event => event.usernames.length > 1);
const result = [];
duplicatedEvents.forEach((duplicatedEvent) => {
const { event, usernames } = duplicatedEvent;
result.push({ event, usernames });
});
return result;
}
const groupedDuplicatedEvents = findDuplicatedEventsByUrl(categorisedEvents);
I'm not sure if we have to create different components for the grouped events because like this even the data structure is different and won't work with the actual EventCard.
I'm kind of stuck now but I'm wondering if this would be the best approach or perhaps we should rethink about the whole issue and change implementation? Probably having a separate Event model where user can create events and the others can join?
Or maybe I'm just overcomplicating my life and we can think a much easier approach.

I was thinking about using a reduce, something like this ...
Data before...
[
  {
    isVirtual: false,
    isInPerson: true,
    color: 'red',
    name: 'Hack This Fall 3.0',
    description: 'A 36-hour in-person hackathon taking place at Karnavati University in Gandhinagar, Gujarat from February 3rd to 5th, 2023.',
    date: {
      start: '2023-02-03T16:00:00.000-05:00',
      end: '2023-02-05T17:00:00.000-05:00'
    },
    url: 'https://lu.ma/hackthisfall',
    username: 'Aadarsh805'
  },
  {
    isInPerson: true,
    color: 'red',
    name: 'CIVO Navigate',
    description: 'A two-day conference in **Tampa, FL**, revolving around topics such as **Kubernetes**, **Edge Computing**, **Machine Learning**, **Dev/GitOps**, **Observability**, **Security**, and **Cloud Native Transformation**, where I will be delivering a workshop on Open Source developer tool **Acorn**.',
    date: {
      start: '2023-02-07T08:30:00.000-05:00',
      end: '2023-02-08T17:40:00.000-05:00'
    },
    url: 'https://civo.com/navigate',
    username: 'juliafmorgado'
  },
  {
    isVirtual: false,
    isInPerson: true,
    color: 'blue',
    name: 'CIVO Navigate',
    description: 'A two-day conference in **Tampa, FL**, revolving around topics such as **Kubernetes**, **Edge Computing**, **Machine Learning**, **Dev/GitOps**, **Observability**, **Security**, and **Cloud Native Transformation**, where I will be delivering a workshop on Open Source developer tool **Acorn**.',
    date: {
      start: '2023-02-07T08:30:00.000-05:00',
      end: '2023-02-08T17:40:00.000-05:00'
    },
    url: 'https://civo.com/navigate',
    username: 'mocdaniel'
  }
  // ...
]

Example code...
const dedupEvents = eventsFiltered.reduce((acc, obj) => {
    const key = obj["url"];
    const curGroup = acc[key] ?? [];

    return { ...acc, [key]: [...curGroup, obj] };
  }, {});

Data after...
{
  'https://lu.ma/hackthisfall': [
    {
      isVirtual: false,
      isInPerson: true,
      color: 'red',
      name: 'Hack This Fall 3.0',
      description: 'A 36-hour in-person hackathon taking place at Karnavati University in Gandhinagar, Gujarat from February 3rd to 5th, 2023.',
      date: [Object],
      url: 'https://lu.ma/hackthisfall',
      username: 'Aadarsh805'
    }
  ],
  'https://civo.com/navigate': [
    {
      isInPerson: true,
      color: 'red',
      name: 'CIVO Navigate',
      description: 'A two-day conference in **Tampa, FL**, revolving around topics such as **Kubernetes**, **Edge Computing**, **Machine Learning**, **Dev/GitOps**, **Observability**, **Security**, and **Cloud Native Transformation**, where I will be delivering a workshop on Open Source developer tool **Acorn**.',
      date: [Object],
      url: 'https://civo.com/navigate',
      username: 'juliafmorgado'
    },
    {
      isVirtual: false,
      isInPerson: true,
      color: 'blue',
      name: 'CIVO Navigate',
      description: 'A two-day conference in **Tampa, FL**, revolving around topics such as **Kubernetes**, **Edge Computing**, **Machine Learning**, **Dev/GitOps**, **Observability**, **Security**, and **Cloud Native Transformation**, where I will be delivering a workshop on Open Source developer tool **Acorn**.',
      date: [Object],
      url: 'https://civo.com/navigate',
      username: 'mocdaniel'
    }
  ],
  'https://www.harvardwecode.com/': [
    {
      isVirtual: true,
      isInPerson: true,
      color: 'red',
      name: 'Harvard WECODE Conference 2023',
      description: 'The Harvard WECode (Women Engineers Code) Conference is organized by undergraduate women at Harvard University and is an initiative of Harvard Undergraduate Women in CS. WECode hosts the largest student-run women in tech conference in the world. ',
      date: [Object],
      url: 'https://www.harvardwecode.com/',
      username: 'thebarshablog'
    }
  ],
  // ...
}

dedupEvents

Ok that definitely would be a much cleaner approach. Do you think we do not need a new EventCard component for the stacked avater or perhaps we can just extend the one we have already? Like when there are more user render the stacked avatar...

I think we can use the same EventCard and just enhance it to support stacked avatars 👍

@ThorOnTheRocks you're doing good work, buddy! I'll return on Feb 15 and join you on this. Academic Commitments. Incase of anything issue I notice during these days, will report here.

There has been no activity for quite some time so I will be unassigning this Issue.

Would I be able to pick up this issue? :)

Sure thing @nicwithdev , I will assign it to you now, any questions let us know

How is it going @nicwithdev ? Any questions let us know
Also please be aware that soon we are going to be merging in a PR that inserts the json files into the Mongo database, so this can be solved 2 ways

with a js reduce as mentioned further up with the current code
or looking at the PR https://github.com/EddieHubCommunity/LinkFree/pull/5765 that has moved the app to using Mongo and trying to group the events together using the Mongo query which would be more efficient

Hey @eddiejaoude I think I should be unassigned so someone else can pick it up. I haven't made any progress.

Ok no problem @nicwithdev , thanks for letting me know. Also let me know if you would like another issue assigned

We also have filters
let categorizedEvents = {
    all: events,
    virtual: events.filter((event) => event.isVirtual === true),
    inPerson: events.filter((event) => event.isInPerson === true),
    cfpOpen: events.filter((event) =>
      event.date.cfpClose ? new Date(event.date.cfpClose) > new Date() : false
    ),
    free: events.filter((event) => event.price?.startingFrom === 0),
    paid: events.filter((event) => event.price?.startingFrom > 0),
  };

I was thinking of creating a new object from categorized events and have a users property with array of usernames which could be passed and removing the duplicates


Add bucket for mulefd

muleflowdiagrams is too verbose name (https://github.com/manikmagar/mulefd/issues/63). This PR https://github.com/manikmagar/mulefd/pull/102 changes it to mulefd. Scoop bucket must be added to get mulefd.

Fixed in https://github.com/manikmagar/scoop-bucket/commit/d75e72cb073ce32b708ee4e7951b2d63f274cbfe


Remove obsolete methods\properties

There are a lot of things marked with [Obsolete()] attribute.
I think we can remove them all in 2.0.
<model>
  <node column0="Search target">
    <node column0="System.ObsoleteAttribute" />
  </node>
  <node column0="Found 68 usages in solution">
    <node column0="<Core> (68 items)">
      <node column0="<DotSpatial.Controls> (14 items)">
        <node column0="AppManager.cs (1 item)">
          <node column0="(267,10) [Obsolete("Use ShowExtensionsDialogMode instead")] // Marked obsolete in 1.7" />
        </node>
        <node column0="ChunkEventArgs.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ILegendHandler.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IMap.cs (2 items)">
          <node column0="(107,10) [Obsolete("Use featureLayer.AddLabels() instead")] // Marked in 1.7" />
          <node column0="(119,10) [Obsolete("Use featureLayer.AddLabels() instead")] // Marked in 1.7" />
        </node>
        <node column0="IPreviewMap.cs (1 item)">
          <node column0="(27,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IPreviewMapHandler.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IUserControl.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="Map.cs (4 items)">
          <node column0="(290,10) [Obsolete("Use featureLayer.AddLabels() instead")] // Marked in 1.7" />
          <node column0="(308,10) [Obsolete("Use featureLayer.AddLabels() instead")] // Marked in 1.7" />
          <node column0="(663,10) [Obsolete("Use featureLayer.AddLabels() instead")] // Marked in 1.7" />
          <node column0="(672,10) [Obsolete("Use featureLayer.ClearLabels() instead")] // Marked in 1.7" />
        </node>
        <node column0="MapDrawTextArgs.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ShowExtensionsDialog.cs (1 item)">
          <node column0="(30,6) [Obsolete("Use ShowExtensionsDialogMode instead")] // Marked obsolete in 1.7" />
        </node>
      </node>
      <node column0="<DotSpatial.Data> (21 items)">
        <node column0="Feature.cs (1 item)">
          <node column0="(553,10) [Obsolete("This property no longer used.")] // Marked in 1.7" />
        </node>
        <node column0="FeatureSet.cs (3 items)">
          <node column0="(673,10) [Obsolete("Use SelectIndexByAttribute(filterExpression) instead.")] // Marked obsolete in 1.7." />
          <node column0="(947,10) [Obsolete("Use Select(region) instead")] // Marked in 1.7" />
          <node column0="(953,10) [Obsolete("Use Select(region, out affectedRegion) instead")] // Marked in 1.7" />
        </node>
        <node column0="IEventDictionary.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IFeatureSet.cs (1 item)">
          <node column0="(191,10) [Obsolete("Use SelectIndexByAttribute(filterExpression) instead.")] // Marked obsolete in 1.7." />
        </node>
        <node column0="ImageDataEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IndividualDictionaryCancelEventArgs.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IndividualDictionaryEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IOrderedDictionary.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ITreeList.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="PluginInfo.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="PyramidByteMismatchException.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="RasterDataType.cs (2 items)">
          <node column0="(60,10) [Obsolete("Use INVALID case instead")] // Marked in 1.7" />
          <node column0="(71,10) [Obsolete("Do not use it. There is no support for this case anywhere in code.")] // Marked in 1.7" />
        </node>
        <node column0="RasterEnumerator.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="RasterEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ScaleBarInfo.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ScaleBarPosition.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ShapefileReader.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not supported in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="StatusBarInfo.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
      </node>
      <node column0="<DotSpatial.Modeling.Forms> (1 item)">
        <node column0="ParamType.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
      </node>
      <node column0="<DotSpatial.Positioning.Forms> (1 item)">
        <node column0="DoubleBufferedControl.cs (1 item)">
          <node column0="(665,10) [Obsolete("Changing thread priorty on Desktop Framework 2.0 can cause instability.  A setting of Normal is recommended for all threads.")]" />
        </node>
      </node>
      <node column0="<DotSpatial.Positioning> (1 item)">
        <node column0="NmeaInterpreter.cs (1 item)">
          <node column0="(67,10) [Obsolete("This event is intended for debugging.  Use it to confirm that GPS data is arriving from your GPS device, but avoid it during production use to improve your application's performance.")]" />
        </node>
      </node>
      <node column0="<DotSpatial.Projections> (1 item)">
        <node column0="ProjectionInfo.cs (1 item)">
          <node column0="(102,10) [Obsolete("Use AuthorityCode instead")] // Marked obsolete in 1.7." />
        </node>
      </node>
      <node column0="<DotSpatial.Serialization> (1 item)">
        <node column0="AssemblyMissingException.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
      </node>
      <node column0="<DotSpatial.Symbology> (28 items)">
        <node column0="ColorCategoryEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="DesktopRasterExt.cs (1 item)">
          <node column0="(716,10) [Obsolete("Use overload with maxCount")] // Marked in 1.8" />
        </node>
        <node column0="DrawCompletedArgs.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="DrawVerifyArgs.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="DrawWindowArgs.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="DynamicVisibilityEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="Enums.cs (5 items)">
          <node column0="(29,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
          <node column0="(51,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
          <node column0="(73,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
          <node column0="(100,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
          <node column0="(143,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="FeatureSetApplyEditArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="FileCantBeDeletedException.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ILabel.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ILabelContainer.cs (1 item)">
          <node column0="(31,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ISymbolRange.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ItemEventArgs.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="ITextSymbolGroup.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="IView.cs (1 item)">
          <node column0="(33,6) [Obsolete("Do not use it. This interface is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="LabelLayerEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="LabelSymbolizer.cs (3 items)">
          <node column0="(100,10) [Obsolete("Use BackColor.GetOpacity() instead")] // Marked in 1.7" />
          <node column0="(118,10) [Obsolete("Use BorderColor.GetOpacity() instead")] // Marked in 1.7" />
          <node column0="(174,10) [Obsolete("Use FontColor.GetOpacity() instead")] // Marked in 1.7" />
        </node>
        <node column0="LayerEnumerator.cs (1 item)">
          <node column0="(30,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="PictureMode.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This enum is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="RasterLayerEventArgs.cs (1 item)">
          <node column0="(29,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="SimpleLayerEventArgs.cs (1 item)">
          <node column0="(28,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
        <node column0="TextSymbolChangedEventArgs.cs (1 item)">
          <node column0="(25,6) [Obsolete("Do not use it. This class is not used in DotSpatial anymore.")] // Marked in 1.7" />
        </node>
      </node>
    </node>
  </node>
</model>

be aware of issue #504

yeah, except this SentenceReceived

Left

 <node column0="<DotSpatial.Positioning.Forms> (1 item)">
    <node column0="DoubleBufferedControl.cs (1 item)">
      <node column0="(665,10) [Obsolete("Changing thread priorty on Desktop Framework 2.0 can cause instability.  A setting of Normal is recommended for all threads.")]" />
    </node>
  </node>

because this is contained in
#if !PocketPC && Framework20
...
#endif

Left

  <node column0="<DotSpatial.Positioning> (1 item)">
    <node column0="NmeaInterpreter.cs (1 item)">
      <node column0="(67,10) [Obsolete("This event is intended for debugging.  Use it to confirm that GPS data is arriving from your GPS device, but avoid it during production use to improve your application's performance.")]" />
    </node>
  </node>

because of issue #504
DotSpatial.Serialization.ReadonlyException has a constructor that has a comment "obsolete". Should we remove the constructor or the comment?

DotSpatial.Serialization.ReadonlyException has a constructor that has a comment "obsolete". Should we remove the constructor or the comment?

remove comment


Working on Unofficial Arabic Translation of p5.js Website

Language
Arabic
What improvement are you suggesting?
Hello Everyone!
I've come here to say that I'll be working on translating the p5.js website into Arabic, and hosting it somewhere as an unofficial version. I think this will be very helpful for a big part of the world that we could benefit from. Arab and Middle Eastern creatives and designers have seen a huge and significant increase in numbers over the past five years, and I think p5.js is a perfect tool for developers to understand, create with, and contribute to.
I will be posting updates here as I start the translation. What I find interesting is the right to the left alignment of the Arabic Language, and how it will affect and change the layout/design of the website. Obviously, something like this would very much benefit from different creative inputs and POVs. So please feel free to advise, ask to join in working on it with me, or ask any questions! We'd go at a much faster rate if we work on different pages, and proofread each other's work after, etc.
Excited to be working on this inclusive translation that I think will be very useful for the Middle Eastern community to learn about p5.js.
Thanks!
Would you like to work on the issue?
Myself and Any Volunteers

Also just found @limzykenneth 's comment on one of the past translation threads. (https://github.com/processing/p5.js-website/issues/584#issuecomment-603784803) Gave me a bit of motivation to know that it's something you'd be interested to see! I would appreciate any advice or feedback whenever I'm able to post something tangible you guys can look at :)

Looks great so far! Do you have a link to the source code of the repo on github so that if others wanted to help they can contribute to your repo?

Hello! Chiming in to say I would love to contribute to the Arabic translation as well starting next month or early next year -- thank you so much @sherifsallam for getting it started :)
And @limzykenneth, it appears that the repo is here: https://github.com/sherifsallam/p5.js-website
I've briefly examined the site linked above, and it seems there is some kind of styling issue preventing the text from flowing in the right-to-left direction proper to Arabic. For example, in the attached screenshot, the periods at the end of sentences come on the right as they would in English, rather than on the left as they should in Arabic. Those who can read Arabic can also see that the text does not visually flow correctly. However, when I copy-paste the text into a textbox which expects Arabic (e.g. Google Translate) it comes out in the proper order for reading, so I believe the underlying text is probably in the correct logical order, and the styling issue should hopefully be a quick fix of adding "direction: rtl" in the proper location within the CSS. Perhaps my first contribution in a month or two if no one beats me to it!

Hi @nabilhassein, sorry I'll have to go through your comment here a bit later but I just want to hijack this for now to get your attention at https://github.com/processing/p5.js/issues/5831, specifically whether would you be interested in helping with the Arabic proofreading of the p5.js Contributor Docs survey? I have the Arabic translation already but am still having problem finding someone to do the proofreading and you show up here at just the right time! 😝
If you are able and willing to help with the proofreading, please drop me an email at<EMAIL_ADDRESS>and I'll arrange things over email.
I'll circle back to your comment above when I have more time. Thanks!


Add desktop notifications

This adds desktop notifications for Gone to be able to see when a
session has ended. The change introduces a message that will say for
instance that "Your working session has ended, time for a short break".
A Notifier interface has been added to make sure that the feature can be
extended with custom notifiers.
Desktop notifications is nice to have to be able to get an interruption
when a session is done.
Thanks!

@guillaumebreton Any updates on this? Would you consider this change?
Thanks!


Add optional "all" parameter for groups

Description:
The current way groups work as per the documentation

When any member of a group is on then the group will also be on.

This may usually be what people expect. I do believe though, that there are cases where a groups state should only turn to on if all entities are on. I myself once wanted that, forgot what it was though and probably ended up using some workaround.
One simple example would be monitoring if a group of devices is on. Like: Notify me if not all devices of a particular group are on (alarm system or whatever). If one node goes down, the whole group is considered down. It's pretty straightforward to build an automation based on that single state of the group instead of writing templates or creating helper-entities.
Marked es WIP because I want to gather opinions on this before I start with the tests and update the documentation
Essentially this PR keeps using any as the default, but overrides that if all is set to true.
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#6557
Example entry for configuration.yaml (if applicable):
group:
  # Current implementation, group is on when at least one entity is on
  normal:
    name: normal
    entities:
      - input_boolean.bool1
      - input_boolean.bool2
      - input_boolean.bool3
  # New mode: group is on when all entities are on
  inverted:
    name: inverted
    all: true
    entities:
      - input_boolean.bool1
      - input_boolean.bool2
      - input_boolean.bool3

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass

If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.io

If the code does not interact with devices:

[x] Tests have been added to verify that the new code works.

You're right, makes sense.

The advantage of a string over a boolean is that it doesn't require a breaking change in the future if another mode would be added. Although I must admit that I can't think of any.

Is the new description ok? It's kind of hard to explain in just a few words. 😆

Yesss.


feat: 新增 space 组件

🤔 这个 PR 的性质是？

[ ] 日常 bug 修复
[ ] 新特性提交
[ ] 文档改进
[ ] 演示代码改进
[ ] 组件样式/交互改进
[ ] CI/CD 改进
[ ] 重构
[ ] 代码风格优化
[ ] 测试用例
[ ] 分支合并
[ ] 其他

🔗 相关 Issue

💡 需求背景和解决方案

📝 更新日志

fix(组件名称): 处理问题或特性描述 ...

[ ] 本条 PR 不需要纳入 Changelog

☑ 请求合并前的自查清单
⚠ 请自检并全部勾选全部选项。⚠

[ ] 文档已补充或无须补充
[ ] 代码演示已提供或无须提供
[ ] TypeScript 定义已补充或无须补充
[ ] Changelog 已提供或无须提供

Codecov Report

Merging #1047 (3aeea4a) into develop (a0db0df) will increase coverage by 2.09%.
The diff coverage is n/a.

:exclamation: Current head 3aeea4a differs from pull request most recent head 34a9ff6. Consider uploading reports for the commit 34a9ff6 to get more accurate results

@@             Coverage Diff             @@
##           develop    #1047      +/-   ##
===========================================
+ Coverage    57.56%   59.65%   +2.09%
===========================================
  Files          346      388      +42
  Lines        12828    14813    +1985
  Branches      2405     2778     +373
===========================================
+ Hits          7384     8837    +1453
- Misses        5200     5698     +498
- Partials       244      278      +34

Impacted Files
Coverage Δ

src/affix/affix.tsx
28.57% <0.00%> (-37.51%)
:arrow_down:

src/swiper/props.ts
68.75% <0.00%> (-31.25%)
:arrow_down:

src/dialog/props.ts
70.00% <0.00%> (-30.00%)
:arrow_down:

src/calendar/props.ts
70.00% <0.00%> (-30.00%)
:arrow_down:

src/popup/props.ts
75.00% <0.00%> (-25.00%)
:arrow_down:

src/select/props.ts
75.00% <0.00%> (-25.00%)
:arrow_down:

src/slider/props.ts
75.00% <0.00%> (-25.00%)
:arrow_down:

src/message/props.ts
75.00% <0.00%> (-25.00%)
:arrow_down:

src/tooltip/props.ts
75.00% <0.00%> (-25.00%)
:arrow_down:

src/pagination/props.ts
75.00% <0.00%> (-25.00%)
:arrow_down:

... and 171 more

Continue to review full report at Codecov.

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


Meshes don't show up on Chrome on Windows

Fixed by https://github.com/gfx-rs/wgpu/pull/3597 / https://github.com/gfx-rs/wgpu/pull/3596
Need a workaround meanwhile - render a second invisible instance on chrome+windows 😕

Fixed in upstream chrome https://bugs.chromium.org/p/chromium/issues/detail?id=1425606 !


[BUG] Sharing Map Feature - No querying for corporations name from game for map sharing

Issue:
Currently attempted to share out a map with blue pilots. Attempted to look up corp in shared settings as per advised documentation.
When searching by name the corporation cannot be found when attempting to search by atleast 3 characters
When removing the original shared owner and attempting to re-add it back into the field this will also no longer query.

Currently the only way to share a map is to have someone login to pathfinder on a set up the available share option is to do the following:

Have outside corp member login and create a private map on the server
Have user set this new map as a corporation map
Have new map set up with the now available corp name due to map sharing

Concerns with this:

Map should be accessible to shared to any corp in game and/or be able to be searched
Any user that has access to the shared map can just delete it with not authorization required
Corporation names are not queryible to be added with out having their own corporate map already set up

Some of requests are already discussed in #164

Noticed this bugs is still around and can't share map to other corps.

Same. I cannot share maps between corporations. I have a pathfinder configured with 2 corps access only (via pathfinder.ini) but am unable to share maps between corps. Members of both corporations are able to log in, create maps, and share maps amongst corp members, but the inter-corporation sharing still appears broken.

@ppfeufer Thanks, this solved my problem.


Carousel images are incorrectly cropped

Fixed it using Marquee (split, small, light, left to right) as carousel slide. Also, removed extra white spaces in two images.

@srshrm , it still seems cropped to me. Could you please check?


[#133533671] Update RDS broker dependencies.

#133533671 Update RDS broker dependencies.
What?
Following the PR #33 we want to update the dependencies of the project.
The work will:

Work on the changes from #33

Uprade all dependencies: brokerapi and lager
Fix all the conflicts as needed.

Add tests for the regressions found in #20
Update aws-sdk-go, and get rid of the unnecessary code around STS
Start using Golang 1.8

We decided not include glide, but keep using godep for dependency management. We made this decision due to the impending release of an official Golang dependency management tool, but we can revisit it in the future.
Follow up and dependencies

We need to upgrade the boshrelease to bundle golang 1.8 (done in https://github.com/alphagov/paas-rds-broker-boshrelease/pull/32).
Merge the corresponding boshrelease to include this code after merge: https://github.com/alphagov/paas-rds-broker-boshrelease/pull/33
Merge the code in the corresponding PR in paas-cf: https://github.com/alphagov/paas-cf/pull/813

Testing reviewing:

Do code review

Check unit tests pass

You can manually run the ci/blackbox tests as described in https://github.com/alphagov/paas-rds-broker/pull/37, but that is currently a little bit tedious. I did run it and it passes.
You can run in one of the rds_broker of our paas-cf deployment, it is explained in this comment: https://github.com/alphagov/paas-rds-broker/pull/37#issuecomment-283936422

You can deploy and run the PR from paas-cf https://github.com/alphagov/paas-cf/pull/813 . I confirm it deploys fine and passes the tests.

Who?
Anyone but @keymon

This is all fine and tests all pass, although I'm not sure we should have introduced the catalogue test in this PR. Merging.