Fix permalink to not joined channels and to not fetched posts.

Summary
Quick fix to allow permalinks to show when the post is not in the database. There could be better ways to handle edge cases, the alerts, and the error message. We can address them here, or create tickets on top of this one.
Caveats:

If I don't have internet connection, the error says I don't belong to the channel. This is handled in V1 by checking the type of error. We could try to do something similar.
The error message is not the prettiest, and the popup doesn't have a title. In V1 the title said something like "there is an error".
The decision over joining a channel is done with an alert. This is how it was done in V1 for private channels. Wonder if we want to do something different.

Ticket Link
None
NONE

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/22718
https://circleci.com/gh/mattermost/mattermost-mobile/22717

Artifact links:
https://output.circle-artifacts.com/output/job/e2a34be0-6b7a-4970-a133-aaf78a5255fb/artifacts/0/tmp/artifacts/Mattermost_Beta.apk
https://output.circle-artifacts.com/output/job/44c6f6a2-1749-447b-b5d3-3850042ce278/artifacts/0/tmp/artifacts/Mattermost_Beta.ipa

@larkox I don't quite follow what this is fixing, sorry. Can I get a little more detail on what to test here?

@matthewbirtch The part related to UX is that, yes. When you join a channel that you are not a member of, you will receive the alert.
I will see if I can do the alert before triggering the permalink view (or some trick to hide it).
Just to make sure: when the user hits cancel, nothing gets showed, right? In that case the user should never see the permalink screen, right? What about if the post does not exist (or belongs to a private channel you don't have access to? Right now it shows the permalink screen with an error written in it, if I am not mistaken. (easiest way to test is to copy a permalink and change one of the last charcaters to something different)
Regarding the text, we have slightly different texts for when the user is trying to join a public channel, and when a user with permissions to join private channels (sysadmin) is trying to join a private channel they don't belong to (the normal behavior with private channels is that you are invited, not that you join directly). The two texts are:
"permalink.show_dialog_warn.description": "You are about to join {channel} without explicitly being added by the channel admin. Are you sure you wish to join this private channel?",
"permalink.show_dialog_warn.public.description": "You are about to join {channel}. Are you sure you wish to join this channel?",

Do you want to change the one for public channels or you want to change both?

Just to make sure: when the user hits cancel, nothing gets showed, right? In that case the user should never see the permalink screen, right?

Yep, that's right.

What about if the post does not exist (or belongs to a private channel you don't have access to)?

Can we modify the alert messaging to say something like:
Message not available
The message you are trying to view no longer exists.
[Okay]
Message not viewable
The message you are trying to view belongs to a private channel you don't have access to.
[Okay]

Regarding the text, we have slightly different texts for when the user is trying to join a public channel, and when a user with permissions to join private channels (sysadmin) is trying to join a private channel they don't belong to (the normal behavior with private channels is that you are invited, not that you join directly).

Can we update these to:
Join channel
The message you are trying to view is in a channel you don’t belong to. Do you want to join {Channel name} without explicitly being added by the channel admin?
[Cancel] [Join]
Join channel
The message you are trying to view is in a channel you don’t belong to. Do you want to join {Channel name}?
[Cancel] [Join]

Thanks! Only two more comments:

We are not able to know if the post belong to a channel we have no permissions, or to a private channel. Therefore the wording was originally "Permalink belongs to a deleted message or to a channel to which you do not have access.".
Still not clear to me, so let me double check. If the post does not exist, we only show the alert, right? We do not show the permalink view.

I just realized there is one reason to show the permalink view in all cases though. If we have slow internet, checking the post may take some time. Therefore, we have the permalink view and a loading indicator there until the post loads (or the server lets us know we have no knowledge of that post).
What do you think?

I just realized there is one reason to show the permalink view in all cases though. If we have slow internet, checking the post may take some time. Therefore, we have the permalink view and a loading indicator there until the post loads (or the server lets us know we have no knowledge of that post).

Hmmm, well in that case, should we just show all the error messages within the modal rather than using an alert?

I can do that. So... the way I envision it, there are several states for which I may need:

Modal title (what to write on the top, next to the X to close the modal)
Content (apart of the text, we may want some icon in there? may be considered as a future improvement)
Whether it shows a button on the bottom.
What the button says.

As per states:

Happy path (a post to a channel we belong in this same team)
Public channel we  can join in the current team
Public channel we can join in a different team? (We may want to rephrase it to let the user know it belongs to a different team, 0/5 whether it is needed)
Public channel we can join in a different team we are not a member but we also can join? (Here the "problem" is that you are joining both a new channel and a new team)
Private channel we can join (with all the team variants we discussed before for the public channel)
Post not found
Loading

We would also have to consider what are the plans for multiserver, but that is being discussed in a different ticket.
My general idea is to put in the title the name of the channel when we know the channel, loading when loading and something like "error" or "not found" in the not found case. We may consider adding the team name for cases where is a team switch.
For content, the texts we have already decided on, unless you decide to make some adjustment based on the states before.
For buttons, I would show it to join the channels, and to jump to the channel in the happy path. Loading and not found should not show buttons. They always have the same style (unless you want to have a "destructive" button when joining a private channel).
For button texts, the one that already exist ("jump to recent messages", I think) for the happy path, and "Join" for the join buttons.
Thoughts?

I can do that. So... the way I envision it, there are several states for which I may need:

Modal title (what to write on the top, next to the X to close the modal)
Content (apart of the text, we may want some icon in there? may be considered as a future improvement)
Whether it shows a button on the bottom.
What the button says.

As per states:

Happy path (a post to a channel we belong in this same team)
Public channel we  can join in the current team
Public channel we can join in a different team? (We may want to rephrase it to let the user know it belongs to a different team, 0/5 whether it is needed)
Public channel we can join in a different team we are not a member but we also can join? (Here the "problem" is that you are joining both a new channel and a new team)
Private channel we can join (with all the team variants we discussed before for the public channel)
Post not found
Loading

We would also have to consider what are the plans for multiserver, but that is being discussed in a different ticket.
My general idea is to put in the title the name of the channel when we know the channel, loading when loading and something like "error" or "not found" in the not found case. We may consider adding the team name for cases where is a team switch. For content, the texts we have already decided on, unless you decide to make some adjustment based on the states before. For buttons, I would show it to join the channels, and to jump to the channel in the happy path. Loading and not found should not show buttons. They always have the same style (unless you want to have a "destructive" button when joining a private channel). For button texts, the one that already exist ("jump to recent messages", I think) for the happy path, and "Join" for the join buttons.
Thoughts?

Sure. Would you mind doing me a favor by creating a Jira Ticket with this detail and I can queue it for design? I'm out most of the day today, but can try to go through it and provide designs with messaging tomorrow at some point. Having visuals will also help to make it clearer I think.

Building app in separate branch.

Building app in separate branch.

There is an issue with the "join channel" illustrations, where for some reason they don't have the t-shirt. Any idea why this may be happening @Elias Nahum ?

not sure which illustration is that one
probably a thing with theming or was the illustration export without all the paths and stuff

Artifact links:
https://output.circle-artifacts.com/output/job/9d2524e4-91e7-45c6-b929-29f6b4e80466/artifacts/0/tmp/artifacts/Mattermost_Beta.apk
https://output.circle-artifacts.com/output/job/15f4d73b-0ae5-4af3-9a85-5495f21f3209/artifacts/0/tmp/artifacts/Mattermost_Beta.ipa

This is the illustration: https://github.com/mattermost/mattermost-mobile/blob/9c4ee4934298c5039d2f88c5e50c79e5766241eb/app/components/illustrations/join_public_channel.tsx
This is the SVG generated from Figma

The only relevant difference I see is the style="mask-type:alpha" on some masks, which, if relevant, is not being applied (I used to have it under style={maskType: 'alpha'} but ts was complaining that style did not exist, and since it was doing apparently nothing, I removed it).

And this is how it looks on the phone (as you can see, she has no T-shirt)

@larkox if you remove the Pattern and Image elements, does it resolve?

@larkox did my suggestion work to fix the svgs?

Building app in separate branch.

@matthewbirtch Yes and no. The t-shirt appears, but the "dotted pattern" is not there. Nevertheless, it is an improvement.

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/23100
https://circleci.com/gh/mattermost/mattermost-mobile/23099

Artifact links:
https://output.circle-artifacts.com/output/job/ce1e3ee0-def3-4f26-8eca-27491c6ffef1/artifacts/0/tmp/artifacts/Mattermost_Beta.apk
https://output.circle-artifacts.com/output/job/9529a653-66b3-4f4e-94df-3e26517cedaa/artifacts/0/tmp/artifacts/Mattermost_Beta.ipa

Building app in separate branch.

2. In the scenario where I'm prompted to join channel and team, I got this error alert. Once I got this error, it came up every time I tried to view a message from an public channel within an open team (even though I restarted the app multiple times).

I don't get to reproduce it. May be some sort of bad synchronization, but 0/5.

3. For the various modal messages, can we ensure the channel name and team name are using semi-bold weight so they get emphasized?

In theory, they are being passed to the markdown component and they are bolded (**${channelName}**). Are you not seeing them like this?

4. Right now the 'Cancel' button within the modal is using a secondary button style, but the design had it as a tertiary button style. Can you update?

Done

5. Can we add a border on the modal container? On dark themes, the bounds of the modal are hidden. We can use a 1pt border with 16% center channel color (sorry, I missed this on the other PR)

Done

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/23278
https://circleci.com/gh/mattermost/mattermost-mobile/23277

3. For the various modal messages, can we ensure the channel name and team name are using semi-bold weight so they get emphasized?

In theory, they are being passed to the markdown component and they are bolded (**${channelName}**). Are you not seeing them like this?

Still not seeing this, but everything else looks to be resolved. I'm going to approve to unblock here, but maybe we can look in to why the bolding is not working on iOS (looks like it's working for you in android

@matthewbirtch It seems like the shirt is not yet visible on the "public channel" version. I tried to look into it, but for some reason, the version you have added is kind of different to the version I had from Figma (not sure if we were selecting different things or what) so the mask coordiantes do not work the same.
The mask that should be added for the t-shirt to be visible, should be the one that starts with <G mask='url(#b)'>.
Also, I noticed that on the latest screenshot you sent, it is also missing the t-shirt. Can you confirm that is done with the latest version? There might be some difference between iOS and android?

@matthewbirtch It seems like the shirt is not yet visible on the "public channel" version. I tried to look into it, but for some reason, the version you have added is kind of different to the version I had from Figma (not sure if we were selecting different things or what) so the mask coordiantes do not work the same.
The mask that should be added for the t-shirt to be visible, should be the one that starts with <G mask='url(#b)'>.
Also, I noticed that on the latest screenshot you sent, it is also missing the t-shirt. Can you confirm that is done with the latest version? There might be some difference between iOS and android?

I'll take a look at the SVG again

@matthewbirtch do this illustrations differ from the channel intro?

@larkox SVGs are updated now and should be good to go

I tested these on various themes in the simulator as well and all seems good

@matthewbirtch do this illustrations differ from the channel intro?

Yes, different illustrations @enahum


Fix re-render whole app on theme switch

This PR might end up going to the trash, and this is just a suggestion/discussion:
Reason :
I feel we should refrain from adding states that can be changed easily at the very top level of app like _app because changing them re-renders the whole app, and switching of theme causes the whole app to re-render feel a bit uncomfortable default to me and would delegate to end-user (But this seems the only solution to keep rainbowkit theme inline with our app them)
Solution Proposed :
Use Dark Mode support mentioned by rainbow kit which sets the rainbow kit theme based on OS default theme.
Advantage :
Solves the problem of re-rendering the whole app
Disadvantage :
It's independent of SE-2 theme and if the user selects the light se-2 theme he will still get the dark rainbowkit theme because of his OS preference.
cc @sverps @damianmarti please free to suggest other options / directly close this 🙌

The high level state for the theme doesn't bother me, it's only triggered on theme switch, which is a user action and isn't expected to be triggered often. So at most causes a couple re-renders, hardly noticeable.
So I prefer the fix as it was, since not all platforms manage light/dark theme properly, or a user might have a different preference for se-2 than his OS default.

The high level state for the theme doesn't bother me, it's only triggered on theme switch, which is a user action and isn't expected to be triggered often. So at most causes a couple re-renders, hardly noticeable.
So I prefer the fix as it was, since not all platforms manage light/dark theme properly, or a user might have a different preference for se-2 than his OS default.

Yes, I agree.
A whole re-render when the user changes the theme doesn't seem a big issue for me, because we don't expect the user keep changing the theme all the time


Add proxy support

Done.

I really need proxy feature for this app, because, from China it is very difficult to download some Resources from overseas.
The IDM has the proxy feature and run well well. But in AB downloader manager, even I have proxy setup in the system it would not still failed to download some resource.

@yankeeshcn you can use the proxy feature now!
whats the problem ?


Clearer documentation around environment variable overrides

Signed-off-by: Richard Scothern<EMAIL_ADDRESS>

LGTM


Dead project - Please Archive

This project does not work as is.
Opening a bug here so people don't use it directly.

It works fine for me again after the 3.1.0 update


SAK-43953 PA System: Banner Dismissal Resets Upon Any Form of Update

https://sakaiproject.atlassian.net/browse/SAK-43953

Thanks @adrianfish for the help!


Fix TOA overflow after 107 sec

This fixes a major bug where the TOA timestamp would overflow after 32bit-signed. The cold code:
acq->last_toa_offset = 16384 * EXTRACT(*data, md_time_offset, offset);

allocates a signed int, multiplies it with the 32b word read from the data packet, overflows it, and writes it to the 64b variable. This means only the lower 4 bytes of the word were ever used. The new code:
acq->last_toa_offset = ((uint64_t) EXTRACT(*data, md_time_offset, offset) << 14);

Takes the 32b word from the data packet, casts it to 64bits and then bit-shifts it by the 14b from the Tpx3 timestamp.
It might be worth also correcting this in TrackLab:
$ git grep 16384
plugins/katherine/comm/dataparser.cpp:  m_lastToaOffsetCoarse = 16384 * static_cast<quint64>(offset);

Can you please confirm that you have in fact observed this bug in action? Perhaps in a data-driven acquisition longer than 107 s?

Yes, correct.

This would indicate to me that the bug is not present in Track Lab.

Yes, you are lucky with your compiler. The code still formally is wrong but your compiler is gentle enough apparently. The version in libkatherine could not be saved that way.

Thanks for a quick reply.

The code still formally is wrong but your compiler is gentle enough apparently.

Just to be on the same page, can you please elaborate on why you would consider the code wrong? I agree that the following line is ambiguous, misleading, and would not have written it the same way today:
m_lastToaOffsetCoarse = 16384 * static_cast<quint64>(offset);

That said, it is a multiplication of an int literal by a quint64 variable, which evaluates to unsigned long at compilation time. My understanding of the C++ standard is that this leads to a well-defined process, where all operands are first promoted to the smallest integer type capable of holding all their values (here 16384 is cast from int to unsigned long) prior to evaluating the multiplication on two values of unsigned long. I would back this expectation up by a short snippet I found online at C++ reference:

If the operand passed to a built-in arithmetic operator is integral or unscoped enumeration type, then before any other action (but after lvalue-to-rvalue conversion, if applicable), the operand undergoes integral promotion.

Your statement "lucky with your compiler" suggests that the multiplying two integers of distinct storage types is somehow undefined or compiler-defined; I would disagree with this in good faith. Albeit it is a questionable practice, which should be discouraged in modern C++ programming, I understand it to be defined and deterministic. Please feel free to dispute any of what I wrote above and point me to a relevant section of the standard. If I am incorrect about this, I would love to learn!

Very well, I think I understand now. I intend to change Track Lab's implementation to track with this change in the near-term future.
Thanks again for the PR and have a good one! :rocket:


Missing information in documentation?

Looks like its missing instruction to install or enable the dotnet scanner tool first
Here is the link I used to download and install the scanner before the plugin steps would work.
Specifically, I used the below step to install the utility on windows -
dotnet tool install --global dotnet-sonarscanner
Good Job BTW on the extension.

@bbarman4u thanks! Docs update in #7


How to pair bluetooth devices programatically without user interaction using react-native-ble-plx?

Question
I am trying to implement a Bluetooth pairing programatically between a device and mobile app. I am able to pair the device but the problem is that it requires user to enter the passcode which I don't want in my app. I want to do that programatically. I need to provide the device name and the passcode programatically. I am using the library react-native-ble-plx. I could not find documentations related to this in the library.
Is this possible with the current version of the library?

What you mean passcode? Should you write it to device characteristic?

No, Passcode/password used for pairing

You can create a modal which is contains a TextInput for asking user to enter PIN and then you can let the user pair the device.
And plus, it's not a bug or a issue of this package. I suggest you to ask these kind of code questions to StackOverflow. Not here.

How did you solve this problem? Can you specify it?


fix: Support capital letters in urls

僕の日本語が下手クソだからごめんなさい。mfm.jsにはこのライン/iがありますので、A-Zが必要はないですけど、mfm.ktにはこの/iが使えないから必要です。
Posting in English just in case my Japanese is not clear (I am learning, but far from perfect!) The regex at this line in mfm.js has a /i at the end that makes it match letters case insensitive. Since the kotlin version doesn't use this, it needs to add the A-Z into the regex. This will make it possible to match a link with capital letters like https://youtu.be/OIBODIPC_8Y for example.

I didn't notice pr for a long time. Sorry. And thank you.


Native HTML form change handler is not triggered for input type radio

🐛 Bug Report
Native HTML <form> has onChange handler that triggers when form elements are updated. For example, when text is typed inside <input type="text" /> or value is updated in <input type="radio" />.
When <form> contains components that utilise useTextField and useRadioGroup from React Spectrum, the onChange handle is triggered inconsistently.
🤔 Expected Behavior
All form fields should behave consistently and as they're being modified <form> onChange should fire consistently. Especially given that React Spectrum uses native HTML elements under the hood.
😯 Current Behavior

useTextField (docs) triggers <form> onChange as value is entered - expected behaviour ✅
useRadioGroup (docs) does not trigger <form> onChange as value is entered - unexpected behaviour ❌

💁 Possible Solution
It is possible that event bubbling in useRadioGroup is being suppressed, thus never reaching <form> onChange. That would need looking into.
🔦 Context
Whilst using react-hook-form I was trying to capture all field values during onChange / onBlur stages
💻 Code Sample
I have created two Codesandbox examples that verify:

Modifying <textarea /> triggers <form onChange={handleChange}> - see CodeSandbox

Modifying <div role="radiogroup"> that uses native <input type="radio" /> doesn't trigger <form onChange={handleChange}> - see CodeSandbox

🌍 Your Environment
See CodeSandbox examples above

Software
Version(s)

react-spectrum

Browser

Operating System

🧢 Your Company/Team
n/a
🕷 Tracking Issue (optional)
n/a

Verified the behavior locally, thanks for the sandbox examples. Removing the following line makes onChange propagate to the form when clicking on one of the RadioGroup's radios but it doesn't when using the keyboard to change radio selection. We'd have to also dispatch an onChange in useRadioGroup onKeyDown handler as well or something.
Still digging as to why we have that stopPropagation in useRadio, git blame hits a dead end where we swapped repos haha.

As a side note, the same problem happen for useCheckboxGroup.


Isolate RPC: port worker-rpc to dart

Context
I/O heavy operations (i.e. file streaming) will block the UI thread and need to be parallelized. Dart's isolate facilitates such parallelization via a minimal message passing API; however, a more sophisticated, RPC-like API would be more preferable.
I would suggest that we consider porting this TypeScript library, worker-rpc, to dart. We're using this library for an analogous purpose in the myfiletransfer app (with JavaScript web workers instead of dart isolates).
Acceptance criteria

[ ] Tests are ported
[ ] Tests are passing

I think it makes sense for this to be it's own package; to that end, I've started the isolate_rpc repo. We should ultimately distribute this via pub.dev (dart/flutter package manager) but can use a git submodule in the mean time.


Create issue for cities without citations

Follow up to https://github.com/ParkingReformNetwork/reform-map/issues/356. We decided we do want to create the page. But we want to be aware there is no citation. So we should do something like create a GitHub issue.

It's only 3 cities that are broken. We decided every city should have a citation, so instead we're going to have https://github.com/ParkingReformNetwork/reform-map/issues/358 error via the new test. Much simpler.


Use cabal new-build

Documented here, new-build will eliminate a lot of waste by reusing already built configurations. We currently nuke the sandbox and rebuild everything for each step of the binary search, which takes a long time.

more documentation.


⚠ WSINGRESOS - OXXO has degraded performance

In 4dfa60b, WSINGRESOS - OXXO (https://srvshyweb.yucatan.gob.mx/cgi-bin/wspd_cgi.sh/WService=wsingresos/internet/compartido/wspagosoxxo.r) experienced degraded performance:

HTTP code: 200
Response time: 2078 ms

Resolved: WSINGRESOS - OXXO performance has improved in 0920b19.


Properly support batched/non-batched with vllm/llama.cpp

This is based on @npalaska's PR #58.
With these changes we will auto-detect whether the server supports batched inputs and if not will send them sequentially.

Thanks @npalaska I addressed most of those comments.

Also, please squash those fixup commits as per instructlab/dev-docs#110

Closing in favor of #105


cuDNN DSO loaded in command line, but not by apache

GitHub issues are for bugs / installation problems / feature requests.
For general support from the community, see StackOverflow.
To make bugs and feature requests more easy to find and organize, we close issues that are deemed
out of scope for GitHub Issues and point people to StackOverflow.
For bugs or installation issues, please provide the following information.
The more information you provide, the more easily we will be able to offer
help and advice.
Environment info
Operating System:
Installed version of CUDA and cuDNN:
(please attach the output of ls -l /path/to/cuda/lib/libcud*):
-rw-r--r-- 1 root root   322936 May 23 07:11 /usr/local/cuda/lib64/libcudadevrt.a
lrwxrwxrwx 1 root root       16 May 23 07:11 /usr/local/cuda/lib64/libcudart.so -> libcudart.so.7.5
lrwxrwxrwx 1 root root       19 May 23 07:11 /usr/local/cuda/lib64/libcudart.so.7.5 -> libcudart.so.7.5.18
-rwxr-xr-x 1 root root   383336 May 23 07:11 /usr/local/cuda/lib64/libcudart.so.7.5.18
-rw-r--r-- 1 root root   720192 May 23 07:11 /usr/local/cuda/lib64/libcudart_static.a
-rwxr-xr-x 1 root root 61453024 May 24 06:29 /usr/local/cuda/lib64/libcudnn.so
-rwxr-xr-x 1 root root 61453024 May 24 06:29 /usr/local/cuda/lib64/libcudnn.so.4
-rwxr-xr-x 1 root root 61453024 May 24 06:29 /usr/local/cuda/lib64/libcudnn.so.4.0.7
-rw-r--r-- 1 root root 62025862 May 24 06:29 /usr/local/cuda/lib64/libcudnn_static.a
If installed from binary pip package, provide:

Which pip package you installed.
The output from python -c "import tensorflow; print(tensorflow.__version__)".
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally

Segmentation fault (core dumped)
If installed from sources, provide the commit hash:
Steps to reproduce

Install a Flask app along this tutorial: http://www.datasciencebytes.com/bytes/2015/02/24/running-a-flask-app-on-aws-ec2/
Install an image classification web app along this tutorial, but using tensorflow instead of caffe: https://clearsite.io/blog/2016/01/24/using-caffe-in-a-flask-application/

What have you tried?

I tried various AWS EC2 AMI with tensorflow installed, and always the same problem.

Logs or other output that would be helpful
(If logs are large, please upload as attachment).
error.log of apache server:
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:99] Couldn't open CUDA library libcudnn.so. LD_LIBRARY_PATH:
I tensorflow/stream_executor/cuda/cuda_dnn.cc:1562] Unable to load cuDNN DSO
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally
if I import tensorflow from command line:
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally
echo $LD_LIBRARY_PATH
/usr/local/cuda/lib64

W'hat is the output of python -c "import tensorflow; print(tensorflow.__version__)"?

The problem is possibly caused by Apache or Flask not providing the necessary value of LD_LIBRARY_PATH to your Flask app. There are a couple of suggestions in this Stack Overflow answer.

Automatically closing due to lack of recent activity. Please reopen when further information becomes available.


data not loading correctly in terrain at high zoom level

Hi,
I'm looking for a map as at: http://maps.stamen.com/#terrain/14/50.3853/-3.8903
The terrain map is loading well in places, but some areas are blank. toner and watercolour seem ok but i'd prefer terrain if possible.

dupe #107


Add features specific to Shulkers, ShulkerBullets and ShulkerBoxes.

SpongeAPI | SpongeCommon
This PR adds everything I found for Shulkers and its derived products.
I only have a doubt about ShulkerBullet#getDirection, as it may be a DirectionalData.
Reviews are welcome.
Test Plugin
Fixes #1901

~qa

Links are broken here and in common


GRID not display template item and page number

using crud, after last composer update i lost the page, and item informatio in the grid.

Sorry, I need help.
I'm using yii2.
My PHP Version is 5.4.31.
I already update latest yii from composer, but this error still happening in gridview.
Showing {begin, number}-{end, number} of {totalCount, number} {totalCount, plural, one{item} other{items}}.
thankyou for your help.

please open a new issue, this one is really old. Also provide more info about your config regarding i18n and how you call the code.


Loose/less-effort body validation

What version of Elysia is running?
1.1.13
What platform is your computer?
Microsoft Windows NT 10.0.22631.0 x64
What steps can reproduce the bug?
Use this validation in a route
body: t.Union([
	t.Object({
		bookmarked: t.Optional(t.Boolean()),
		link: t.Optional(t.String({ format: "uri" })),
		timeSpent: t.Optional(t.String()),
		when: t.Optional(t.Date()),
	}),
	t.Object({
		bookmarked: t.Optional(t.Boolean()),
		mediaId: t.String(),
		number: t.Integer(),
		timeSpent: t.Optional(t.String()),
		when: t.Optional(t.Date()),
	}),
	t.Object({
		bookmarked: t.Optional(t.Boolean()),
		mediaId: t.Optional(t.String()),
		timeSpent: t.Optional(t.String()),
		when: t.Optional(t.Date()),
	}),
])

And provide this body:
{
"mediaId": "610132145125381",
"number": 1127,
"timeSpent": "PT4M35S",
"when":"2024-09-20T22:05:00.000-03:00"
}

What is the expected behavior?
This shouldn't be an edge case and it should recognize the body as the second type.
What do you see instead?
It recognizes the body as the first type and simply deletes mediaId and number from the body. They exist in ctx.body during onTransform;
Additional information
No response
Have you try removing the node_modules and bun.lockb and try again yet?
No response

If I add { additionalProperties: false }, to the first field it works.

Can u try it with plain typebox?


slurm_job_handler.py depends on "hostlist" executable

When I try to run on trinitite (and presumably other cray systems) with slurm I get the following error:
/bin/sh: hostlist: command not found
Traceback (most recent call last):
File "/var/spool/slurm/job12009/slurm_script", line 156, in
sys.exit(main())
File "/var/spool/slurm/job12009/slurm_script", line 101, in main
nodes = get_node_list()
File "/var/spool/slurm/job12009/slurm_script", line 85, in get_node_list
output = subprocess.check_output("hostlist -e $SLURM_NODELIST", shell=True)
File "/usr/lib64/python2.7/subprocess.py", line 573, in check_output
raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command 'hostlist -e $SLURM_NODELIST' returned non-zero exit status 127

@BenCasses I have not fully tested this to make sure it is compatible but I will on Monday. I would appreciate someone else checking that this change still gets an equivalent output.


Bug: Auto refresh does not work on network shares

Description
So I started using files in my company environment because of the "split area" feature.
We are mainly using network shares as drive spaces and hardly use any build in storage.
When copying/creating files / folders on a network share, I have to refresh with F5/the refresh button on the top left, to see the created/copied/moved item in the explorer window.
The wished behaviour, auto refreshing the explorer, works fine in storage connected directly to my pc e.g. M.2. (didnt try sata, but should be same behaviour). Also normal windows explorer works fine either with "offline" and network drives.
Steps To Reproduce

connect Network dirve to your windows
move/copy/create File or folder
Item is not shown in the "explorer" view
refresh to show Item

Files Version
<IP_ADDRESS>
Windows Version
19045.4894
User ID
No response
Log File
debug.log

Ok, seems like my first issue search wasn't good. There is already an issue with a similar Problem:
https://github.com/files-community/Files/issues/5869
imo it's odd, that this isn't fixed after three years.

Ok, seems like my first issue search wasn't good. There is already an issue with a similar Problem:

GitHub issue search can be hard to use, don't worry about it...
As mentioned, we're currently tracking this in #5869. Some of the challenges involved are also mentioned there.


[bug] ng-repeat + ng-model + input[type=email]

Hello!
Have just found a very weird bug: if I use input of type="email" instead of type="text" inside ng-repeat, binding becomes broken. Check out the fiddle http://jsfiddle.net/3L143sn6/ (slightly modified version of this http://jsfiddle.net/jaimem/rnw3u/5/ by jaime from here http://stackoverflow.com/a/13715352/1151950 )
Tried on both 1.2.1 at jsFiddle and 1.4.7 in my project.
Thanks.

type="email" will not update the model if the input is not an email. If you enter an email, it will update. Since 1.3, you can also use ngModelOptions.allowInvalid to set invalid values on the model.


Move docker config file location to allow for mounting configs

A blind mount allows you to overwrite the contents of an existing directory in docker. This PR moves the properties files for each docker image to a separate /config folder. This allows the config folder to be mounted to use config files on the local file system by setting SKIP_PROPERTIES_BUILDER=true. Doing so is advantageous as it is more flexible and powerful and because the docker properties builders often are overlooked when new properties are added.
I also fixed a part of #1207 that was missed - the ENC() block should not be in the default docker images. Since it was in hygieia-api it requires all images to use jasypt with no way to disable it. To use jasypt nothing changes - pass in / store in a compose file a JASYPT_ENCRYPTOR_PASSWORD and the property encrypted with ENC().
This also includes changes from #1674 as I needed to update that as well for this.
Docker blind mounts: https://docs.docker.com/engine/admin/volumes/bind-mounts/
Example:
  hygieia-api:
    image: hygieia-api:latest
    container_name: hygieia-api
    ports:
    - "8080:8080"
    volumes:
    - ./logs:/hygieia/logs
    - ./config:/hygieia/config
    environment:
    - MONGO_PORT=tcp://<IP_ADDRESS>:27017
    - SKIP_PROPERTIES_BUILDER=true

$ ls config
hygieia-api.properties
hygieia-appdynamics-performance-collector.properties
hygieia-artifactory-artifact-collector.properties
hygieia-bitbucket-scm-collector.properties
hygieia-jenkins-build-collector.properties
hygieia-jira-feature-collector.properties
hygieia-sonar-codequality-collector.properties
hygieia-xldeploy-deployment-collector.properties

You can also achieve the same using docker run passing in environment variables and a mount.

@MarkRx, I'm currently reviewing this PR and I have a couple of concerns. First off, I think it's a really good idea to pass in a properties file instead of using env vars to create a properties file at run-time. That being said, I've ran into some issues.

1: I'm currently using Docker For Mac version 17.09.0-ce and have mounted my config folder as you have suggested in your example, but unfortunately it seems that the folder is mounted too late in the container creation process and therefore isn't present when the last line of the Dockerfile is executed. So with a compose entry like this:
`hygieia-api:
image: hygieia-api:latest
volumes:

./logs:/hygieia/logs
./config:/hygieia/config
environment:

SKIP_PROPERTIES_BUILDER=trueand runningdocker-compose up` no config is loaded since the properties builder doesn't run and the volume isn't mounted yet. As far as I can tell the only way we can get the properties file loaded in time is by modifying the Dockerfile to COPY the file over.

2: This issue isn't as much of a deal breaker, but still a problem. You used $MONGO_HOST and $MONGO_PORT. These are only available when using legacy container linking which is a problem in that it we will have to take it out later when we introduce networks and we will have to introduce networks at some point. Especially if we ever want to run our containers in production. So changing the names of these env vars really isn't that big of a deal since there isn't really a standard but we shouldn't assume that Mongo is always going to provide these for us.

Here's an example of the env sharing present when using linking but missing using a network:
`# save this as links.yml
run 'docker-compose -f links.yml up | grep alpine'
env vars are shared when using legacy container linking
mongo:
image: mongo
alpine:
image: alpine
command: env
links:
- mongo:mongo`
`# save this as network.yml
run 'docker-compose -f network.yml up | grep alpine'
with networks there is no env var sharing
version: "3"
services:
mongo:
image: mongo
networks:
- my-network
alpine:
image: alpine
command: env
networks:
- my-network
networks:
my-network:`


[master] Bump Mesos to nightly master 19cdaed

High-level description
This is a routine bump to the latest Mesos and mesos-modules.
Related JIRA Issues
Checklist for all PRs

[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Changelog:
https://github.com/apache/mesos/compare/270a3dce490d5b334f9a0011ea416ffc42e187e4...19cdaed6409147ac94714df135649e080e0218f0
https://github.com/dcos/dcos-mesos-modules/compare/e9edd2d93d9fce88c8e3f5536c7f9abc326093d9...6c5189096804d37ee6640c446c0de1a3d80713a5

[ ] Test Results: [link to CI job test results for component]

[ ] Code Coverage (if available): [link to code coverage report]

@mesosphere-mergebot bump-ee

@mesosphere-mergebot label Ready For Review

Superseded by #6644.


Add zh_CN locale

I see the discussion, but don't speak chinese :p Do you want to change anything or can I merge it?

@Brawl345 I have changed it to the translation of "the end of tabs bar". You can merge now.


feat: add Polygon, Base mainnet and test in the network list

Closes: https://github.com/zeta-chain/networks/issues/53

Summary by CodeRabbit

New Features

Expanded support for multiple blockchain networks, including base_mainnet, base_testnet, and polygon_mainnet.
Enhanced configurations include detailed attributes such as chain IDs, fee structures, asset definitions, and API endpoints for better network integration.

I would add explorers, but other than that, looks good.

CI error looks unrelated to the change


gulp4 alpha3 and vinyl-fs` 3

If I run your plugin with gulp4 I got following error: Unhandled rejection TypeError: file.isSymbolic is not a function
It has to do with vinyl-fs version 3

@jonnitto this module is using a very out-of-date Vinyl that comes with gulp-util (which has now been deprecated). They need to update to use Vinyl 2.x directly.

@jonnitto @phated I’ve been using this plugin recently with gulp 4 without any issues.
But I’ve also seen gulp-plugin deprecation notice on twitter yesterday or 2 days ago, so I will indeed update this as soon as possible :)
Thanks for using this plugin and giving it some feedback!

@Hiswe There was a new alpha of gulp 4 pushed to the github repository last week. If you update or install with gulpjs/gulp#4.0, you'll get the new version that isn't compatible with the old vinyl you are using.


Subscription

Hello,
I'm trying to use Subscription feature. I use a jquery client, I manage to call the server but I get the following error:
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of `graphql.kickstart.execution.GraphQLRequest` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value.

The request is formated like this:
{
"query":"subscription LastFamilySubscription { \n    lastFamily \\{       id        name      \\}\\}",
"variables":{}
}

I suppose that I forgot to provide a setting like an ObjectMapper.
When I use the dependency bellow, it's work well and I manage to get the stream
<dependency>
   <groupId>com.graphql-java</groupId>
   <artifactId>graphql-java-tools</artifactId>
   <version>5.2.4</version>
</dependency>

My project is host on https://github.com/BaptisteMeynier/Graphql-Subscription/blob/master/src/main/java/com/meynier/spring/graphql/graphql/FishSubscriptionResolver.java
Thx a lot
Regards

It's work when I downgrade  version 6.0.1 to 5.11.1 and include
        <dependency>
            <groupId>com.graphql-java-kickstart</groupId>
            <artifactId>graphql-java-kickstart</artifactId>
            <version>9.0.1</version>
        </dependency>

You should only add the spring-boot-starter to the project, it'll pull in the correct version of graphql-java-tools and graphql-java-servlet. When you defined them all yourself you're going to run into compatibility issues like the ones you encountered here.
We just released version 7.0.0 of this starter which pulls in these dependencies, so it should be fixed using that. If not then feel free to reopen the issue.

i'm running into the same issue with the 7.0.0 starter. how can i fix this?

same issue with 7.0.1

F

Do not use Graphiql to test it ! Would you use Graphiql to do it in real business code? :)

After further investigation in the end this appears to depend on which subscription protocol is used. When you use Apollo (like GraphiQL and Altair do) it works fine and that's why I wasn't able to reproduce it. If you don't use Apollo but it needs to use the fallback protocol it will cause an issue. Please see https://github.com/graphql-java-kickstart/graphql-java-servlet/issues/252 to track this issue further, since the solution will be in that project instead.


[TEAMS] Add "openApp" type to CardAction set

Teams has an "openApp" type that they can send across so we should add this string to our CardAction class's types.

PR: https://github.com/microsoft/botbuilder-js/pull/1230


Passing dataloader to trainer.fit() doesn't work with tpu (and maybe ddp)

🐛 Bug
Receive a
AttributeError: Can't pickle local object 'Trainer.__set_fit_dataloaders.<locals>.patch_train_dataloader'

error when passing the dataloader directly to trainer.fit(model, train_loader)
To Reproduce
Steps to reproduce the behavior:
Try to call trainer.fit(model, train_loader) in TPU mode.
(I suspect that anything that calls mp.spawn will cause this problem, so ddp probably will face this issue too.)

Code sample
import os

import pytorch_lightning as pl
import torch
from torch.nn import functional as F
from torch.utils.data import DataLoader
from torchvision import transforms
from torchvision.datasets import MNIST

import torch_xla.core.xla_model as xm

class CoolSystem(pl.LightningModule):
    def __init__(self, use_tpu=False):
        super(CoolSystem, self).__init__()
        # not the best model...
        self.use_tpu = use_tpu
        self.l1 = torch.nn.Linear(28 * 28, 10)

    def forward(self, x):
        return torch.relu(self.l1(x.view(x.size(0), -1)))

    def training_step(self, batch, batch_idx):
        # REQUIRED
        x, y = batch
        y_hat = self.forward(x)
        loss = F.cross_entropy(y_hat, y)
        tensorboard_logs = {'train_loss': loss}
        return {'loss': loss, 'log': tensorboard_logs}

    def validation_step(self, batch, batch_idx):
        # OPTIONAL
        x, y = batch
        y_hat = self.forward(x)
        return {'val_loss': F.cross_entropy(y_hat, y)}

    def validation_end(self, outputs):
        # OPTIONAL
        avg_loss = torch.stack([x['val_loss'] for x in outputs]).mean()
        tensorboard_logs = {'val_loss': avg_loss}
        return {'avg_val_loss': avg_loss, 'log': tensorboard_logs}

    def test_step(self, batch, batch_idx):
        # OPTIONAL
        x, y = batch
        y_hat = self.forward(x)
        return {'test_loss': F.cross_entropy(y_hat, y)}

    def test_end(self, outputs):
        # OPTIONAL
        avg_loss = torch.stack([x['test_loss'] for x in outputs]).mean()
        tensorboard_logs = {'test_loss': avg_loss}
        return {'avg_test_loss': avg_loss, 'log': tensorboard_logs}

    def configure_optimizers(self):
        # REQUIRED
        # can return multiple optimizers and learning_rate schedulers
        # (LBFGS it is automatically supported, no need for closure function)
        return torch.optim.Adam(self.parameters(), lr=0.0004)

if __name__ == '__main__':
    from pytorch_lightning import Trainer

    model = CoolSystem(use_tpu=True)

    dataset = MNIST(os.getcwd(),
                        train=True,
                        download=True,
                        transform=transforms.ToTensor())

    sampler = torch.utils.data.distributed.DistributedSampler(
        dataset,
        num_replicas=xm.xrt_world_size(),
        rank=xm.get_ordinal(),
        shuffle=True)

    loader = DataLoader(dataset, sampler=sampler, batch_size=32)

    # most basic trainer, uses good defaults
    trainer = Trainer(num_tpu_cores=8)
    trainer.fit(model, loader)

Expected behavior

Ideally, specifying the dataloaders as part of the LightningModule should work just the same as passing the dataloaders into trainer.fit()
Environment
Please copy and paste the output from our
environment collection script
(or fill out the checklist below manually).
You can get the script and run it with:
wget https://raw.githubusercontent.com/pytorch/pytorch/master/torch/utils/collect_env.py
# For security purposes, please check the contents of collect_env.py before running it.
python collect_env.py

Docker image: gcr.io/tpu-pytorch/xla:nightly
build steps:

pip install git+git://github.com/williamFalcon/pytorch-lightning.git@master --upgrade

(I don't have access to the machine right now, so please forgive me on the specific version info temporarily)
Proposed solution
The issue is here, trying to assign a local function to the model
def __set_fit_dataloaders(self, model, train_dataloader, val_dataloaders, test_dataloaders):
        # when dataloader is passed via fit, patch the train_dataloader
        # functions to overwrite with these implementations
        if train_dataloader is not None:
            if not self.is_overriden('training_step', model):
                m = 'You called .fit() with a train_dataloader but did not define training_step()'
                raise MisconfigurationException(m)

            def patch_train_dataloader():
                return train_dataloader

            model.train_dataloader = patch_train_dataloader

Instead of using a closure or a local function, you could use a callable defined at the top-level.  This will be pickleable.

class DataLoaderPatcher
    def __init__(self, loader):
        self.loader = loader
    def __call__():
        return self.loader

def __set_fit_dataloaders(self, model, train_dataloader, val_dataloaders, test_dataloaders):
        # when dataloader is passed via fit, patch the train_dataloader
        # functions to overwrite with these implementations
        if train_dataloader is not None:
            if not self.is_overriden('training_step', model):
                m = 'You called .fit() with a train_dataloader but did not define training_step()'
                raise MisconfigurationException(m)

            model.train_dataloader = DataLoaderPatcher(train_dataloader)

I don't mind tackling the issue myself, but I'd like some input first.  Thanks everyone!

lightning automates the sampler. pass just the dataloader

that's super cool.  I'm giving that a try, both in the GCP XLA docker image and in colab.
It seems to run fine in a colab modified from the TPU-MNIST example, but is still failing in the GCP XLA docker image.
I suppose that's due to the different start_methods?
#  COLAB_GPU is an env var available by default in Colab environments.
start_method = 'fork' if os.getenv('COLAB_GPU') else 'spawn'
xmp.spawn(self.tpu_train, args=(model,), nprocs=self.num_tpu_cores, start_method=start_method)

Reading the flow of trainer.fit(), I don't see anything that would change the local functions set by __set_fit_dataloaders before hitting mp.spawn or xmp.spawn(start_method='spawn').
### excerpt from trainer.fit()

        # set up the passed in dataloaders (if needed)
        ### !! this will set the unpickleable local functions
        self.__set_fit_dataloaders(model, train_dataloader, val_dataloaders, test_dataloaders)

        ...

        elif self.use_ddp:
            if self.is_slurm_managing_tasks:
                task = int(os.environ['SLURM_LOCALID'])
                self.ddp_train(task, model)
            else:
                ### !! I expect this will fail.  need testing.
                mp.spawn(self.ddp_train, nprocs=self.num_gpus, args=(model,))

        ...

        elif self.use_tpu:
            log.info(f'training on {self.num_tpu_cores} TPU cores')

            #  COLAB_GPU is an env var available by default in Colab environments.
            start_method = 'fork' if os.getenv('COLAB_GPU') else 'spawn'

            ### !! using start_method=spawn here requires pickling
            xmp.spawn(self.tpu_train, args=(model,), nprocs=self.num_tpu_cores, start_method=start_method)

so you think the spawn method is causing issues?

so you think the spawn method is causing issues?

Yes.  spawn pickles the function and arguments to hand them to a new process, and patch_train_dataloader is not pickleable

A quick run of the same example in ddp mode (colab, so non-slurm) results in the same error

From the pickle docs:
The following types can be pickled:

None, True, and False
integers, floating point numbers, complex numbers
strings, bytes, bytearrays
tuples, lists, sets, and dictionaries containing only picklable objects
functions defined at the top level of a module (using def, not lambda)
built-in functions defined at the top level of a module
classes that are defined at the top level of a module

The "functions defined at the top level" requirement is what we're failing currently, by defining the patch_train_dataloader() function inside another function.

oh yeah. that’s just one way to do it. we could do the same another way. Basically just wanted to plug it into the framework instead of coming up with new functionality.
want to submit a PR?
or @ethanwharris @Borda

I can take a stab at it with my proposed solution if that's cool

looks great! give it a shot


Replace all (at)name with pragma marks in headers.

We were using @name only for documentation generation purposes.
Since our new doc generation supports pragma marks - use those instead for every header.
Starting from this point - we can finally use pragmas across both headers and implementations.

surewhynot


Add structured logging

Specifying our identifier in every log message + method (+ sub) is getting a bit old. Use this as an opportunity to clean up logging altogether and introduce structured logging.

This was handled in #147 ; ended up settling on logrus - my hopes for a nice testing story didn't pan out, but oh well. I'm still a little torn on log15 vs logrus, but we'll punt it for now.


Allow HE quals with no link to dfeta_hequalification table

Context
The V3 API returns HE quals but we’re currently filtering out those without a populated dfeta_hequalification.dfeta_name
Changes proposed in this pull request
Amend the API to not require the field to be populated (return null instead).

 Fix returning HE quals from API


v1.0.2 optimize

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (e52001f) 100.00% compared to head (9d7eff6) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main        #3   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            2         2
  Lines           44        50    +6
  Branches         8         8
=========================================
+ Hits            44        50    +6

Impacted Files
Coverage Δ

src/index.tsx
100.00% <ø> (ø)

src/compile.ts
100.00% <100.00%> (ø)

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


Error when clicking preview and submit on an empty report form

I go to create report
I don't fill in any field
I click on preview and submit
I get an empty page, and see the following error in the console:
error form.setSubmitting is not a function

This happens in candidate

Can't reproduce it any more.


Update employees listed under "Meet the team" on About page

[ ] Add Andy Product Manager
[ ] Add Leela Senior Project Manager
[ ] Remove Marissa
[ ] Remove Sarah

Ugh, why do the images themselves have rounded corners vs. we just do that in CSS?
Does anyone know the corner radius for these images? @AnthonyRollins @angela-tran @machikoyasuda

I'm not sure who has been preparing them when we add new team members

Yeah I figured it was a mix of folks.

Would it be easier to make all the images not have rounded corners and then apply a border-radius through CSS?

I think it would mean one less step in the preparation process if we applied the border-radius through CSS. My process was:

Click link from Anthony above to raw .png, download locally, open in GIMP
Add layer for background color (white) since default background is transparent
Crop image to roughly the dimensions we want
Scale image to 300x267 pixels
have to apply border radius in GIMP

However, that means unapplying the border-radius from all the existing images, which could take some time...

I like the approach of using CSS instead for the rounded corners 👍 (when I worked on PR #193 it was tricky to resize the images and round the corners in GIMP to match the existing images). So I quickly batch resized the original images that are saved here (and that originally have regular corners) to try to match the size of the current ones on the site, and they look good on my local development server.
Looks like we'd only need to replace the current images with these new ones and @thekaveman's PR #252 will close this issue without any other code changes since the classes bg-white rounded are already set on the images. Would it be ok for me to add a commit to my local branch with these new images and push to your chore/team branch @thekaveman?


Allow to inject current import & export column instance

Description
This will allow us to access current column instance when defining column.
Here is the example on my project to use same definition between label & example header without defining it twice.
ImportColumn::make('birth_date')
    ->label('Date of birth')
    ->exampleHeader(fn (ImportColumn $column) => $column->getLabel())

[x] Visual changes (if any) are shown using screenshots/recordings of before and after.

Code style

[x] composer cs command has been run.

Testing

[x] Changes have been tested.

Documentation

[x] Documentation is up-to-date.

I may be wrong here, but in the latest version, did you double check if ImportColumn $column works already without defining the evaluation param like you did here?

On my side, it is not working using Filament v3.2.29, here is the reproduction repository.
When downloading example CSV from import modal, I got an error Call to a member function getRecord() on null check this error page for more detailed trace. After this line commented out its working well.

The getRecord() error is actually unrelated and I've just fixed it, should be working fine now


Link blog page to the Comcast.github.io landing page

Link blog page (News) to the Comcast.github.io landing page, ideally next to "About, Projects, and Contact"
https://comcast.github.io/blog

Hi I would like to contribute and work on this issue.

@shillasaebi I have made a pull request regarding the Landing page. Please review #241

I will like to do it

Thank you all. This issue is now resolved!


OfflineClusterIntegrationTest.testInvertedIndexTriggering is flaky

https://github.com/apache/pinot/runs/5240101919?check_suite_focus=true

@klsince Please take a look at this test and see if it still applies

will look

not able to reproduce failure on my local; and didn't spot this test case being flaky recently. but lemme know if you've noticed any recent failure on this test case.

sampled a few recently failed PR builds, and didn't find this test failed the build. I'm closing this for now.

I encountered this today!

I think this is due to the iteration order of the hash map. @richardstartin Do you run into this locally or in Github Actions? Can you post the link here if there is one?

https://github.com/apache/pinot/runs/6453127269?check_suite_focus=true#step:5:30195

tried this: https://github.com/apache/pinot/pull/8739

Got another failure after the fix: https://github.com/apache/pinot/runs/6660284410?check_suite_focus=true

looking via this debug PR: https://github.com/apache/pinot/pull/8807

Still Flaky. Happened on PR

Some quick findings:
from the error msg, (will add segment name in the error msg)
java.lang.AssertionError: Table size: 20900902 should increase after adding inverted index, as compared with 20937551 expected [true] but found [false]

But as on my local, the table size is expected be 20949859.
The gap (48957) between 20949859 and 20900902 was like missing a metadata.properties file.  Close it


Is this project used?

I've started using this provider and it looks to for fill some of our use cases really well.
I'm just wanting to check if this is continued to be used, or have you as the contributor started using another terraform provider for snowflake?

Yes, though we are just staring to roll it out.


Fix boringssl building on Windows

Platform: Visual Studio 2022 on Windows 11
Following command failed because of warning C4191:
vcpkg install boringssl:x64-windows-static

Disable warning C4191 can fix this.

Dup to PR #24899

Closed as duplicate of #24899, this PR has been merged.


Submenu at wrong position when sider bar is at right side

Issue Type: Bug
Testing #100848
If the side bar is at right side, the Extensions -> View submenu appears at wrong position.

VS Code version: Code - Insiders 1.47.0-insider (0913b1aa43191d8af0ccb4a133d9a8d7c1a81d69, 2020-06-23T09:03:35.861Z)
OS version: Windows_NT x64 10.0.18363

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-1065G7 CPU @ 1.30GHz (8 x 1498)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onprotected_video_decode: enabledrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledviz_display_compositor: enabled_onwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.60GB (5.66GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (22)

Extension
Author (truncated)
Version

Bookmarks
ale
11.3.1

vscode-eslint
dba
2.1.5

gitlens
eam
10.2.2

flow-for-vscode
flo
1.5.0

rest-client
hum
0.24.1

search-node-modules
jas
1.3.0

tabsanity
jed
0.0.11

vscode-language-pack-zh-hans
MS-
1.46.3

remote-ssh
ms-
0.51.0

remote-ssh-edit
ms-
0.51.0

remote-wsl
ms-
0.44.4

hexeditor
ms-
1.0.1

powershell-preview
ms-
2020.6.1

typescript-javascript-grammar
ms-
0.0.53

vscode-js-profile-table
ms-
0.0.5

vscode-typescript-next
ms-
4.0.20200622

vsonline
ms-
1.0.2390

vscode-jest
Ort
3.2.0

vscode-autohide
sir
1.0.5

code-spell-checker
str
1.9.0

vscode-icons
vsc
10.1.1

material-theme
zhu
3.8.2

The menu is using the menubar logic and is unaware that it should flow left. Need to either adopt a flow direction in the toggle more button or make the menu logic more advanced.

@sbatten I don't think that's true. If I set "window.menuBarVisibility": "compact", and with my side bar on the right side, submenus will correctly flow to the left. I don't know if it's hard coded or it's smart enough to know there is no room at right side.

Compact menubar has the logic that this needs to adopt

Now the missing of background makes it totally unusable.
Version: 1.48.0-insider (user setup)
Commit: 731f9c25632dbbf01ee3a7892ad9d2791fe0260c
Date: 2020-07-24T05:57:10.466Z
Electron: 9.1.0
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19041

The problem is much worse when trying to use the new proposed submenus API in a right side sidebar editor context menu:


Update versions so this works with modern code

I've had to run this with node --max-old-space-size=8192 but it works with modern code now, whereas previously was breaking in my code base

awesome!


Automate application of unit traits

Currently, the unit trait icons in-game are controlled across multiple areas: the actual icons are specified by the Specialties member of the UI module, while the actual implementation is either in the Capacite module for certain traits, or in arbitrary other locations depending on the trait. For example, the ERA trait is just an extra 1 HP in the base damage module, while the False Flag trait removes the Dangerousness property.
This should be generally defined using something which defines an icon, name, description, and two callables, one which applies the trait and one which un-applies it. The latter might not be possible to define, for example in the case of False Flag, where the Dangerousness is not necessarily known once that module is removed.
This would make issues such as dninemfive/wn-9id#1 and dninemfive/wn-9id#21 much easier to implement.

Should try breaking this up into several sub-components rather than developing a holistic approach at first. Namely:

[ ] Traits implemented solely by one or more Capacites;
[ ] Traits implemented as changes to other modules;
[ ] Traits implemented as changes to other objects altogether (e.g. CLGP, which is a simple change on an artillery unit's AmmunitionDescriptor)

Traits implemented by capacites, according to my analysis:

[ ] choc
[ ] electronic_warfare
[ ] eo_dazzler
[ ] falseflag
[ ] fireDirection
[ ] gsr
[ ] jammer
[ ] mp
[ ] reservist
[ ] resolute
[ ] security
[ ] singint[sic]
[ ] sniper

TODO: some kind of check to prevent adding a trait multiple times or removing it multiple times?

There should be the option to force-apply a trait if a unit already has the trait visually but the changes have not been applied.


Add a todays seed button

As a user I would like to go back to the daily challenge seed without having to remove the seed from the URL.
A new button to be added: A 'daily challenge' button to return you to the original start url.

fixed by PR #22


Translate

How can I change/translate the texts?

Hi, I just had the same challenge. I did it like this:
All time specifc things with configuration of moment.js (see [MomentJS Customization]https://momentjs.com/docs/#/customization/)
moment.locale('de');
Some texts can be overruled within the daterangepicker initialization:
$('#daterange').daterangepicker({      minDate: ...,      maxDate: ...,      locale: {          applyButtonTitle: 'Speichern',          cancelButtonTitle: 'Abbrechen',          endLabel: 'Ende',          startLabel: 'Start'      },       ...
And others need to be updated with jQuery:
var periods = $('.daterangepicker ul.periods > li.period'); var day = periods.eq(0); var week = periods.eq(1); var month = periods.eq(2); var quarter = periods.eq(3); var year = periods.eq(4); day.text("Tag"); week.text("Woche"); month.text("Monat"); quarter.text("Quartal"); year.text("Jahr");
Hope that helps :)

Thanks @BlackMambaCH :+1: :smile:


Plots stuck in phase 3 for days

Hello,
plotman started two plot jobs before i stopped it to let them finish (for testing/learning).
Both of them are in phase 3 and seem to be stuck.

Node is fully synced if that makes a difference. Both the tmp and final dest is on a dedicated harddrive. It has sufficient space.

Summary:

The initial plot is one i made using the official gui before migrating to this.
The temp folder is full of .tmp files.

BTW my system is constantly on around 50% cpu usage with no disk usage.

Hello! Yes, that doesn't seem seem correct.  Please take a look at some in-container info via docker exec -it machinaris bash:
df -hT
ps auxw | grep "plots create"

Is the problem repeatable for your setup?  I would recommend killing the plots via the Plotting page and restarting the Machinaris container after clearing out the temp files.
As this issue seems to be Plotman-related, you may want to open an issue in their [Github issues].(https://github.com/ericaltendorf/plotman/issues)

Won't i lose the tmp files? I was hoping to recover the queue somehow and finish them off. Otherwise i will probably just use the official cli/gui as i do not want to be uselessly stressing out my HDD.

Yes, if you kill the plots then you would need to restart from zero, but days is far too long.  Please share the complete docker run command you are using.  I am interested to see your volume mappings to /plots and /plotting.

Hi, that docker compose looks good from what I can tell.  Sorry for the trouble you're encountering.
FYI, there is a new release today, so it may be worth upgrading and trying again to see if this recurs.
Please start with a single plot at a time (global_max_jobs=1 in Settings | Plotting).  If that works, then increase the Plotting settings to get more jobs running in parallel.

Updated and changed the config now.
Started a new plot, if this does not complete then unfortunately ill have to go back to the official gui.
I'll be happy to test and provide logs/support though to fix this.

Sadly its been stuck here for a while again.

I think it may be a bad ram stick, dont know how my initial plot went through but now nothing else is finishing. I'll close this for now and try this tool again down the line when i replace the stick.
Thanks


[SPARK-48266][CONNECT] Move package object org.apache.spark.sql.connect.dsl to test directory

What changes were proposed in this pull request?

Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

Was this patch authored or co-authored using generative AI tooling?

cc @zhengruifeng @amaliujia
Let's test first

can you write from where to where in the pr description

can you write from where to where in the pr description

done

Merged to master.

Thanks @HyukjinKwon @zhengruifeng @amaliujia


Result processing

Now that useful pass / fail statistics are being generated by the testing pipeline, we can start building summary statistics.  In our previous conversations, @s-good described a summary table that compares test results to an expectation for each dataset, one row in which could be generated by the following:
Given the vector of pass / fail information generated for a test by the testing suite, and a list of the same length and format containing the expected pass / fail performance, write a function that returns a 4-element list that counts, in order,

number of datasets that passed when they were expected to pass
number of datasets that failed when they were expected to fail
number of datasets that passed when they were expected to fail
number of datasets that failed when they were expected to pass

does #39 sufficiently address this? Close if so.

Yes, #39 sufficiently addresses this so this issue can be closed.


AC-11 Implement session inactivity logout

..after 15 minutes.
Silently log out the user and clear the screen display (to prevent a passerby gaining access to the info).

@bvizzier-ucsc @hannes-ucsc do you see any back-end dependency here? I am thinking we can log out after 15 minutes of inactivity purely on the client. Anything we need from Azul here?

No and no.

Complete


How to fix Javascript Intellisense in cshtml

Note: This will work on 2017 and above. Tested on visual studio 2019

Remove _references.js files
Add jsconfig.json

{
  "include": [
    "./typings/serenity/Serenity.CoreLib.d.ts",
    "./typings/jspdf/jspdf.autotable.d.ts",
    "./typings/jsondiffpatch/index.d.ts",
    "./typings/bootstrap-switch/index.d.ts",
    "./Imports/**/*",
    "./Modules/**/*"
  ]
}

Can you post this on wiki?

posted


Add new TextBlock styles

Description

Adding new TextBlock styles and update the TextBox test page to include TextBlock samples of the new style.
Motivation and Context

Closes #4106
How Has This Been Tested?

Tested manually
Screenshots (if appropriate):

YAY 10X style typography has arrived!
Now to cajole the Windows 10 Settings team into updating the inbox app into using them (or just moving to the 10X app ASAP) 😁

/azp run

/azp run

@chingucoding  looks like we have a failure in the visual baseline comparision.

@ranjeshj Updated the verification files now and merged with master.

/azp run

@chingucoding Can you update the master files from the build pipeline, or cherry-pick this commit from user/canhua/text
https://github.com/microsoft/microsoft-ui-xaml/commit/8bbff51e73f1007c4f94c59d1052fdc8cb41438e

@chingucoding please update visual verification files so the tests can pass: guide

Updated verification files now @licanhua.

/azp run

/azp run

@kmahone Is there anything you/we could do to make the infra more resilient against this:
Starting: OutputTestResults.ps1
==============================================================================
Task         : PowerShell
Description  : Run a PowerShell script on Linux, macOS, or Windows
Version      : 2.180.1
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/powershell
==============================================================================
Generating script.
Formatted command: . 'D:\a\1\s\build\Helix\OutputTestResults.ps1' -MinimumExpectedTestsExecutedCount '3000' -CheckJobAttempt $true
========================== Starting Command Output ===========================
"C:\windows\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command ". 'D:\a\_temp\9c78780d-8968-49a3-8c1b-81f172dd6a5a.ps1'"
Checking test results...
queryUri = https://dev.azure.com/ms/microsoft-ui-xaml/_apis/test/runs?buildUri=vstfs:///Build/Build/140748&includeRunDetails=true&api-version=5.0
Processing results from test run 'windows.10.amd64.clientrs5.open.xaml'
Processing results from test run 'windows.10.amd64.clientrs2.open.xaml'
Skipping test run 'windows.10.amd64.clientrs5.open.xaml', since we have already processed a test run of that name.
Skipping test run 'windows.10.amd64.clientrs2.open.xaml', since we have already processed a test run of that name.
Processing results from test run 'windows.10.amd64.clientrs3.open.xaml'
Invoke-RestMethod : Unable to read data from the transport connection: An existing connection was forcibly closed by
the remote host.
At D:\a\1\s\build\Helix\OutputTestResults.ps1:53 char:20
+ ... stResults = Invoke-RestMethod -Uri "$($testRun.url)/results?api-versi ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Invoke-RestMethod], IOException
    + FullyQualifiedErrorId : System.IO.IOException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

##[error]PowerShell exited with code '1'.
Finishing: OutputTestResults.ps1

Or is this just something we have to accept to happen occasionally?

@chingucoding we hit that issue from time to time where the REST call that we make fails due to random server side issues. I was able to work around this by adding some retry logic to the script, but that is in the WinUI3 fork and has not been back-ported to the WinUI2 repo. If you are interested in making the change, I can share the updated script with you.

Sure, if I can help with backporting and it's not too complicated, feel free to share the updated script with me and I'll create a PR for this!

Sure, if I can help with backporting and it's not too complicated, feel free to share the updated script with me and I'll create a PR for this!

I've attached an updated version of AzurePipelinesHelperScripts.ps1, that includes simple implementations of Download-FileWithRetries, Invoke-RestMethodWithRetries and Download-StringWithRetries. Update OutputTestResults.ps1, ProsessHelixFiles.ps1 and UpdateUnreliableTests.ps1 so that they call these functions instead of Invoke-RestMethod, DownloadFile and DownloadString.
The Azure DevOps rest apis are usually pretty stable, so only the calls to the Helix apis need to be updated.
AzurePipelinesHelperScripts.txt

Thanks for sharing @kmahone , I'll try to get this over the weekend and create a PR.

Thanks for sharing @kmahone , I'll try to get this over the weekend and create a PR.

Excellent. Thanks for jumping on this! It should make the test passes more reliable.


docs: Fix typo in the help pointer

Sorry for the PR spam, I noticed this other typo immediately after you merged the previous PR 😂

I'm going to add onto this a little, because it turns out that the neo-tree-custom-commands-global tag does not work, and when I looked into it I realized that the table of contents for this section doesn't really make sense.


Np 44703 allow profile picture deletion

Empty payload transforms to empty byte[] which then removes an existing picture in upstream. Size of 1mb was done in upstream, not in proxy


Upgrade the osm_cartography convertors to convert their enhanced features such as coastlines

Presently, the system is able to convert some osm details to different navigation actions, but this should be explored further.


User password authentication

Hi,
Can you implement RTMP source authentication by using user password?

Hi @kirikoglu
You can implement your authorization handler to check the username and password.
Please refer to


Feedback

Hey Sir and all dear contributors, How are you
first of all thanks a lot for the tool, it's amazing and best tester by miles, You sir are genius.
I want to host this tool on my website so I've downloaded source files but couldn't find index.html, what shall I do?
Feedback:
is it possible to implement these somehow? Website

also it would be awesome to support PS4, PS3 and Xbox controllers too, thanks in advance
is there any possibility to connect the controller with hitting any button of the controller and not with connect button?
and the last request, what is the price of creating this website for dualsense and dualshock? I want this for my website, I can pay with visacard
https://xboxdesignlab.xbox.com/en-us/configure/xbox-wireless-controller
also do you know anyone who can build painting machine for controllers? I want to start this little business and I think I'll need machine for this, cannot paint the controllers with my hands :)

@daidr Hey

Sorry, I just saw your issue.
If you want to deploy it on your server, you need to build it yourself.
pnpm install
pnpm build

The numerical display of pressure will be added in the next version.
At present, only dualsense is supported. Because I don't have a ps4 controller, I don't consider supporting it for the time being.

thanks a lot

Hey, thanks for the update
please add this too

Hey, thanks for the update
please add this too

Thank you for your suggestion. This feature will be added in the next release. 😀

And last thing
My Android chrome is updated so what is the problem?

And last thing
My Android chrome is updated so what is the problem?

https://caniuse.com/?search=webhid
Only desktop browsers have webHID support currently.

Another one last thing
Do you accept freelancer job? I want this for dualsense and dualshock, If you accept please tell me how much is the cost, thanks in advance

https://xboxdesignlab.xbox.com/en-us/configure/xbox-wireless-controller?recipeId=T27NJ228

?

Another one last thing
Do you accept freelancer job? I want this for dualsense and dualshock, If you accept please tell me how much is the cost, thanks in advance

https://xboxdesignlab.xbox.com/en-us/configure/xbox-wireless-controller?recipeId=T27NJ228

I'm not sure what you're referring to. Are you talking about adding DualShock support, or are you looking to achieve the styling effect shown in the image?

Hey again, please open the link
Xbox offers fully customize controller by your own in 360 view so I want to have design lab for dualsense too but with limited options

Hey Buddy, what's up?
here the leaked dualsense tester app via sony
we can inspire a lot of things from this app for example beep sound from speaker was good idea also better analog tester

please add this features, thanks a lot
DuelSense official test app + Guide .zip

Hey Buddy, what's up? here the leaked dualsense tester app via sony we can inspire a lot of things from this app for example beep sound from speaker and testing mic was good idea also better analog tester
please add this features, thanks a lot
DuelSense official test app + Guide .zip

I am currently refactoring to add multi-controller support, and the joystick indicator mentioned above will be updated by the end of this weekend.

I am currently refactoring to add multi-controller support, and the joystick indicator mentioned above will be updated by the end of this weekend.

Awesome, thanks a lot ❤

I am currently refactoring to add multi-controller support

this is "PS3 Gamepad tester.pkg" source code, Is it useful?
PS3_GamePadTest_src.zip

Hello again, I've investigate about Xbox 360 controllers and seems like there is no way to test them without this adapter


NodeJS#url - Weird union type mismatch (version 0.33)

Please refer to following example:
/* @flow */

import { parse, format } from 'url';

export function appendQueryParameters(url: string, params: Object): string {
  const urlObj = parse(url);

  return format(urlObj);
}

https://flowtype.org/try/#0PQKgBAAgZgNg9gdzCYAoVBLAtgBzgJwBcwBvMHAQ3wGcBTAGjCgKwuIF8n84swByAK74YfANzpaADzxEmAgHYBjQhjjywFHDlryAJgEUBtfAE8AClQpZahY9QAUQmAC4w1QvgzyA5o0r4ralcAeQAjACtaZQBKV3dPH1JUMDBFNXcwJzDwsABecio6R2Fo8WSwfBshdWZ8VkJimGzS1HYgA
I use nodejs' url.parse to parse a string to a url object, which is pretty much the same type signature as the  input parameter of url.format... strangely enough I get a weird string is not a number error, although I think this should be perfectly fine...
I reduced the example to a minimal repro:
/* @flow */

type T = {
  port: string
};

type U = {
  port: string | number
};

function format(x: U): string|number {
  return x.port;
}

// Works, because flow doesn't assume a type
format({
 port: 1,
});

const t: T = {
  port: '1',
};

// Doesn't work, because flow is biased to T
format(t);

Which produces following output:
8:   port: string | number                    ^ number. This type is incompatible with
4:   port: string           ^ string

Actually I expected flow to let this through, since it fulfills the structural requirements?
Is this expected behavior?

Is this expected behavior?

Yes, it's because object types are invariant with respect to property type. In Flow 0.34 we can do this:
type U = {
  +port: string | number
};

Okay makes sense, we should probably update the nodejs libdefs after 0.34 lands... IMO it's very likely someone will use the output of parse to modify the result and get a string with format later on... This error message was super confusing to me :-)

I guess we can start this process now, every property in every options object should be covariant.

This is a duplicate of https://github.com/facebook/flow/issues/908. @vkurchatkin, would you mind copying your solution there?

Oops, how could I not find this duplicate issue? I swear I tried to find it :-p


zero check for timestamppb

Is your feature request related to a problem? Please describe.
I would like to check zero value for timestamppb but it seems not possible.
import  "google.golang.org/protobuf/types/known/timestamppb"

func main() {
	ts := &timestamppb.Timestamp{}
	fmt.Println(ts.IsValid()) // True

	fmt.Println(ts.CheckValid()) // nil

	fmt.Println(ts.AsTime().IsZero()) // False

	if ts == nil {
		fmt.Println("kartal") // not printing
	}

	fmt.Println(ts.AsTime()) // 1970-01-01 00:00:00 +0000 UTC
}

I believe we shouldn't check if time is unix default time.
Describe the solution you'd like

We can create IsZero function as go's Time module and check default or zero values.
If value is the default Unix timestamp we can send it as zero when casting to the Time module.
Changing default value 1970 to zero (i'm not fan of this)

I take it that by "zero value" of the Timestamp proto, you meant that both the seconds and the nanos proto fields are set to 0.  Why not just compare those fields directly?  i.e.
func main() {
	ts := &timestamppb.Timestamp{}
	fmt.Println(ts.GetSeconds() == 0 && ts.GetNanos() == 0)  // true
	fmt.Println(ts.AsTime().Unix() == 0)  // true
}

If you convert it to Go's Time type, you can use Unix() and compare against 0.

But how about nil? nil != &timestamppb.Timestamp{}
func (x *Timestamp) AsTime() time.Time {
	if x == nil {
		return time.Time{}
	}
	return time.Unix(int64(x.GetSeconds()), int64(x.GetNanos())).UTC()
}

That code is indeed buggy, but where are you getting that code from? That’s not what this project has: https://github.com/protocolbuffers/protobuf-go/blob/v1.28.0/types/known/timestamppb/timestamp.pb.go#L206-L208
func (x *Timestamp) AsTime() time.Time {
	return time.Unix(int64(x.GetSeconds()), int64(x.GetNanos())).UTC()
}

Sorry, I originally meant to express that using time.Time{} and (*timestamppb.Timestamp)nil for equality is a more reasonable design.
But I suddenly don't think so now. Since it is named timestamp, it should default 0.

I think that the Timestamp.AsTime method is buggy. If the Timestamp is nil then it should return a time.Time{} (the zero value), not the Unix epoch time in UTC. A zero time.Time is different to the Unix epoch time (a totally valid time.Time, and a valid timestamppb.Timestamp). The current behavior does not permit the *timestamppb.Timestamp to express a zero time, when it has a perfectly valid way to do so (nil).
See: https://go.dev/play/p/hSdxcsC-laJ
I propose changing the AsTime method to this:
// AsTime converts x to a time.Time.
func (x *Timestamp) AsTime() time.Time {
        if x == nil {
                return time.Time{}
        }
        return time.Unix(int64(x.GetSeconds()), int64(x.GetNanos())).UTC()
}

I think that the Timestamp.AsTime method is buggy. If the Timestamp is nil then it should return a time.Time{} (the zero value), not the Unix epoch time in UTC. A zero time.Time is different to the Unix epoch time (a totally valid time.Time, and a valid timestamppb.Timestamp). The current behavior does not permit the *timestamppb.Timestamp to express a zero time, when it has a perfectly valid way to do so (nil).
See: https://go.dev/play/p/hSdxcsC-laJ
I propose changing the AsTime method to this:
// AsTime converts x to a time.Time.
func (x *Timestamp) AsTime() time.Time {
        if x == nil {
                return time.Time{}
        }
        return time.Unix(int64(x.GetSeconds()), int64(x.GetNanos())).UTC()
}

In actual use, it is indeed more convenient. 👍
Imagine in the scenario of json marshal/unmarshal:
	type A struct {
		DeletedAt *tspb.Timestamp `json:"deletedAt,omitempty"`
	}
	type B struct {
		DeletedAt time.Time `json:"deletedAt,omitempty"`
	}

In an expressive sense, A{} == B{} is definitely more convenient, otherwise the conversion statement must be written separately for each time.
And if omitempty is used, things get complicated when we want A's marshal to be unmarshal to B. This is extremely painful when we customize json marshaler/unmarshaler.
Even if I look at the meaning of the DeletedAt field of A alone, how can I express that it has not been deleted? In the current situation, perhaps I should write as DeletedAt: tspb.New(time.Time{}).
Of course, it is not advisable to modify the original AsTime method, maybe a new method can be added, such as ToTime

The value of an unset or not-appearing Message is its zero value, for a tspb that is the unix epoch, not the golang epoch.
https://go.dev/play/p/FYCPo92SNgr this invariant must be true, but the proposed “if x == nil { return time.Time{} }` would fail it.
It would be extremely weird for GetSeconds() and GetNanos() to both return 0 and then the AsTime() to return something other than what those zero values mean: the unix epoch.
Worst, it would be inconsistent with all the other big-4 languages. Having one language that ascribes a different semantic to a not-appearing Timestamp than every other language is a great way to cause bugs.

Even if I look at the meaning of the DeletedAt field of A alone, how can I express that it has not been deleted?

Not appearing (the nil value) is the same semantic as the default value. There is no reason to treat midnight at the start of 0001-01-01 as a “it has not been deleted” anymore than the unix epoch.

Makes sense to me. I withdraw my objections.

The value of an unset or not-appearing Message is its zero value, for a tspb that is the unix epoch, not the golang epoch.
https://go.dev/play/p/FYCPo92SNgr this invariant must be true, but the proposed “if x == nil { return time.Time{} }` would fail it.
It would be extremely weird for GetSeconds() and GetNanos() to both return 0 and then the AsTime() to return something other than what those zero values mean: the unix epoch.
Worst, it would be inconsistent with all the other big-4 languages. Having one language that ascribes a different semantic to a not-appearing Timestamp than every other language is a great way to cause bugs.

Even if I look at the meaning of the DeletedAt field of A alone, how can I express that it has not been deleted?

Not appearing (the nil value) is the same semantic as the default value. There is no reason to treat midnight at the start of 0001-01-01 as a “it has not been deleted” anymore than the unix epoch.

You are right. My thinking is too one-sided.

No problems. Human brains be like that.

so, whats concluded here to check for a nil time? is it to compare GetSeconds() and GetNanos() against zero?

@Aravindharigoppula use IsValid or CheckValid before AsTime. I wrote a summary here: https://stackoverflow.com/a/78005115/4108803


Failed to parse nested json buffer

What steps will reproduce the problem?
1. Not able to parse nested json buffer using rapidjson
2.
3.

What is the expected output? What do you see instead?
Trying to parse nested json buffer but unable to parse and IsObjet() crashed.

What version of the product are you using? On what operating system?
rapidjson-0.11

Please provide any additional information below.

Want to parse following json buffer
[
   {
      "A":
         [
            {
               "X":1,
               "Y":"Data"
            }
         ],
         "B":10,
         "C":10,
         "D":10,
         "E":20005
    }
]

and read the each field and its value

Original issue reported on code.google.com by amitkul111 on 15 Jan 2015 at 11:33
Attachments:

[Rapidjson Error.txt](https://storage.googleapis.com/google-code-attachments/rapidjson/issue-119/comment-0/Rapidjson Error.txt)

The text file seems not able to pass compilation. the datastring is different
from the one you describe.

By the way, please note that the repository has been moved to
https://github.com/miloyip/rapidjson and there will be more people from
community helping around.

Original comment by<EMAIL_ADDRESS>on 16 Jan 2015 at 5:06


Add license section to README

Just making a concrete version of a suggestion in #18.
Fixes #18

This looks good to me. What do you think @metasj? We can also add some licensing info to the API page, but that will need to be done in the website repo.

That looks good, thank you Mike :)

I updated the proposed change to incorporate our project-wide license.

Our license situation has evolved since this PR - closing as inactive for now, but please feel free to reopen!


Cloudflare Pages - 	Segmentation fault; command exited with code: 139

Hi,
Thank you for the great astro-imagetools package.
I am having an issue building Astro website on https://pages.cloudflare.com
13:05:42.469 | ▶ src/pages/[...path]/index.astro
-- | --
13:05:42.476 | ├─ /index.html (+8ms)
13:05:42.482 | └─ /cs/index.html (+14ms)
13:05:42.483 |
13:05:42.483 | generating optimized images
13:05:42.483 | Completed in 4.05s.
13:05:42.483 |
13:05:42.536 | @astrojs/sitemap: `sitemap-index.xml` is created.
13:05:42.536 |
13:05:45.537 | 11:05:45 AM [build] Waiting for the astro-imagetools integration...
13:06:31.455 | Segmentation fault
13:06:31.471 | Failed: build command exited with code: 139
13:06:32.411 | Failed: error occurred while running build command

It was already discussed over here: https://community.cloudflare.com/t/investigate-segmentation-fault-in-cloudfare-pages/387958 but without any progress.
It seems that the issue is related to the stack size/stack overflow.
Can we somehow debug this issue?

BUMP

Has to do with either image sizes or how many images you have. Just resize your images a little bit and it works again.

I have the same problem. What's strange though is that the log output from astro-imagetools is the same as on my computer where it doesn't segfault.
Does astro-imagetools do anything at the very end that does not generate any console output?


schismtracker: Add x86_64-darwin support

Motivation for this change
Adds Darwin support.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build schismtracker

Huh, that's weird, it takes less than a minute for me:

yeah, I can also build it locally


Traceback on diff

I get this everytime, comparing versions 28 and 36 of this file:
Traceback (most recent call last):
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/gui/vistrail_view.py", line 871, in diff_requested
    view.set_diff(version_a, version_b, vistrail_b)
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/gui/vis_diff.py", line 557, in set_diff
    self.diff = vistrails.core.db.io.get_workflow_diff(*self.diff_versions)
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/core/db/io.py", line 134, in get_workflow_diff
    True)
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/db/services/vistrail.py", line 1528, in getWorkflowDiff
    return getWorkflowDiffCommon(vistrail_1, v_1, v_2, heuristic_match)
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/db/services/vistrail.py", line 1429, in getWorkflowDiffCommon
    True, heuristic_match)
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/db/services/vistrail.py", line 1506, in check_params_diff
    moduleParamChanges = getParamChanges(m1, m2, same_vt, heuristic_match)
  File "/home/remram/Documents/programming/dat/vistrails/vistrails/db/services/vistrail.py", line 1014, in getParamChanges
    m2_functions = m2.db_get_functions()
AttributeError: 'NoneType' object has no attribute 'db_get_functions'

I can't pretend to understand all that goes on in the diff logic, but these lines are definitely suspicious: the old module id is used twice, but that might not resolve in the new workflow. Please check.
@dakoop: Commit message for 5d34e93e states that "ids are now unique" but that doesn't seem to be the case.

If a module is designated as only having parameter changes, control parameter changes, or annotation changes, the module itself does not change and should be the same id in both versions.

Got it. When support for annotations and control parameters in the diff was added to the diff in 64a77598, it did not mirror what was done for standard parameters exactly. Specifically, deleting from the corresponding dictionary was not done if the module was deleted like it was for parameters.

Awesome, thanks!

Backported to v2.2 with 0f0417e3d79a3df3d6bf2d3cde58b3178a2ed095.


Transfer of ownership and conversion to lowercase of the Monero package

As I signaled before in #2859, the Monero package name has been squatted. Nine months have passed since its creation and no working code appeared since then.
I'm a developer of the monero-python package which already had 9 releases:

Github: https://pypi.org/project/monero-python/
PyPi: https://github.com/emesik/monero-python

I'd like to get rid of the -python suffix, which is obviously redundant in PyPi, and move it to lowercase monero.

Done. Please note that you won't be able to make a release with the version 0.1 as this was previously used.

Also, note that you can change the display case when uploading your first release by setting the name appropriately in the metadata sent to create the release.


Python issue on launch

Problem/Motivation
Add on crashes just after start up
Expected behavior
Add on doesnt crash ;)
Actual behavior
[12:03:25] INFO: Starting AppDaemon...
s6-rc: info: service legacy-services successfully started
Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/aiohttp/client.py", line 92, in <module>
    import cchardet as chardet
ModuleNotFoundError: No module named 'cchardet'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/appdaemon", line 5, in <module>
    from appdaemon.__main__ import main
  File "/usr/lib/python3.11/site-packages/appdaemon/__main__.py", line 19, in <module>
    import appdaemon.http as adhttp
  File "/usr/lib/python3.11/site-packages/appdaemon/http.py", line 11, in <module>
    from aiohttp import web
  File "/usr/lib/python3.11/site-packages/aiohttp/__init__.py", line 6, in <module>
    from .client import (
  File "/usr/lib/python3.11/site-packages/aiohttp/client.py", line 94, in <module>
    import charset_normalizer as chardet  # type: ignore[no-redef]

Steps to reproduce
Happened after upgrade to 0.15.0. and 0.15.1
Proposed changes

if i try and cchardet as a package i get
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [21 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-311
      creating build/lib.linux-x86_64-cpython-311/cchardet
      copying src/cchardet/__init__.py -> build/lib.linux-x86_64-cpython-311/cchardet
      copying src/cchardet/version.py -> build/lib.linux-x86_64-cpython-311/cchardet
      warning: build_py: byte-compiling is disabled, skipping.

      running build_ext
      building 'cchardet._cchardet' extension
      creating build/temp.linux-x86_64-cpython-311
      creating build/temp.linux-x86_64-cpython-311/src
      creating build/temp.linux-x86_64-cpython-311/src/cchardet
      creating build/temp.linux-x86_64-cpython-311/src/ext
      creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet
      creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet/src
      creating build/temp.linux-x86_64-cpython-311/src/ext/uchardet/src/LangModels
      gcc -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -Isrc/ext/uchardet/src -I/usr/include/python3.11 -c src/cchardet/_cchardet.cpp -o build/temp.linux-x86_64-cpython-311/src/cchardet/_cchardet.o
      error: command 'gcc' failed: No such file or directory
      [end of output]

for some reason i cant remember, (Maybe for NSPANEL?) i had this in my config:
apk add --update python3 python3-dev py3-numpy py3-scipy
removed, it and now it starts ok :)