What is 'hot' about this boilerplate app?

I see it linked from https://github.com/gaearon/react-hot-loader/tree/master/docs#starter-kits with description:

react-boilerplate-app (react (duh), router, webpack with dev server, babel, hot reloading)

And the README.md says:

A simple hot React app with webpack, routing, babel, dev server, css loader.

But I cannot find any hot-reloading code anywhere in this project...?

It is using the react-hot-loader dependency.

Don't you need to be running an actual hot server (that will check for updates, and send updates to the client) in order for this to actually work as a hot reloader?
import webpack from 'webpack';
import hotMiddleware from 'webpack-hot-middleware';
const compiler = ...something that sets up a webpack containing a new webpack.HotModuleReplacementPlugin() plugin instance?
app.use(hotMiddleware(compiler));

And don't the rendered components need to use react-hot-loader to ensure they know to ask the server for updates?
import { AppContainer } from 'react-hot-loader';
ReactDOM.render(<AppContainer><MyActualComponent</AppContainer>, ...)

These were both necessary to make a hot reloader actually work for me, and this project doesn't have either of them. It just has the .babelrc reference (which I also had, but found to be insufficient).

Yes this doesn't work and need to be removed

Yup, hot reloading doesn't work here.


Linter crashes when using "use-cargo"

If I leave "use-cargo" off, the linter seems to work, but adding "use-cargo": true causes the linter to crash. From the console:
SublimeLinter: #15 rust lib.rs ERROR:

 Linter crashed.

Traceback (most recent call last):
  File "lint.backend in C:\Users\james\AppData\Roaming\Sublime Text 3\Installed Packages\SublimeLinter.sublime-package", line 97, in execute_lint_task
  File "lint.linter in C:\Users\james\AppData\Roaming\Sublime Text 3\Installed Packages\SublimeLinter.sublime-package", line 762, in lint
  File "linter in C:\Users\james\AppData\Roaming\Sublime Text 3\Installed Packages\SublimeLinter-contrib-rustc.sublime-package", line 70, in run
AttributeError: 'module' object has no attribute 'find_file'

I believe this is due to a breaking change in SublimeLinter 4. This could potentially be fixed with something like this. That said, I am not sure I see the utility of this linter given that Rust Enhanced exists. Is there a reason to prefer this to that?

I've used sublime linter for a long time, so it was just my go to choice. I'll look at Rust Enhanced and see if that will suit my needs.


create mutation to change 'missing' status of a column's value

This mutation, changeMissingStatus, should add/remove a value from a column's list of missing values in the store.
As per our Miro refactor draft, a missingValues list will be stored in the column objects in dataDictionary.annotated.
NOTE: Currently, this is referenced in annot-missing-values in the more specific form called declareNotMissing and in annot-categorical as designateAsMissing. The latter, however, is itself missing from the current implementation of annot-continuous-values.

[x] depending components have been checked and are calling this mutation correctly
[x] have unit tests to check functionality
[x] needed store state variables exist already or have been created if not

This would be a good candidate for the proposed, new columns store field.

Currently this is referenced in annot-missing-values in the more specific forms called declareNotMissing' and in annot-categoricalas 'designateAsMissing'. 'designateAsMissing', however, is itself missing from the current implementation ofannot-continuous-values`.

@surchs Does a 'Mark as missing' button make sense for the continuous values component?

Yes, I just noticed it was missing but its component test defines an unused designateAsMissing mutation (now changed to changeMissingStatus). Not planning on implementing it presently.

Closed by #359


inViewport falsely returns true

I attached verge.inViewport to a scroll event to test this.
When I start scrolling I keep getting true returned even if the element is not in the viewport. Only after I scroll past the desired element, false is returned.
If I scroll back up past that element, it's still true.

Huh, can you paste the code you used?

@dubstrike Make a jsfiddle/codepen and show the code please.

I will once I get some free time.

I have the same issue. I have the following JavaScript code:
window.addEventListener('scroll', function(e) {

  let test = $('#testme').get(0);

  if ( verge.inViewport(test) ) {

    test.style.backgroundColor = "blue";
    console.log('TRUE');

  } else {

    test.style.backgroundColor = "red";
    console.log('FALSE');

  }

});

and the following HTML:

The result is always true, the console never logs FALSE, and the test element's background color is always blue. Same results with verge.inY(test)!

I think I was able to reproduce on codepen and I commented what seems potential workarounds there.
Does verge.inViewport(test, -1) works as a solution for you?

verge.inViewport(test, -1) does not fix anything and the output is still the same. Console logs TRUE until I scroll down past the element. Scrolling back up past the element would make the console to log TRUE again (no change in behavior with -1).

@ramtinsoltani Can you reproduce that in codepen please? Either by forking mine or creating new and loading verge there via<EMAIL_ADDRESS>

@ryanve Well I've made this codepen using the link to load verge, and it's working! But using the same link in a local .html file (or downloading verge.js and loading it locally) still behaves as before! I'm using Chrome 62.0.3202.62 64-bit on Windows 10.
So to reproduce it, copy the code below and save them as local files. Then run the .html file and you should run into the issue I'm having when you look at the Dev Tools console. These are the exact code I'm using locally (same as codepen but the html contains a script tag to load the javascript after loading verge):
index.html

script.js
window.addEventListener('scroll', function(e) {

  let test = $('#testme').get(0);

  if ( verge.inViewport(test, -1) ) {

    test.style.backgroundColor = "blue";
    console.log('TRUE');

  } else {

    test.style.backgroundColor = "red";
    console.log('FALSE');

  }

});

When you scroll all the way down, these are the different console logs:
Codepen output (the correct output, only logs TRUE when the element is in view):
FALSE
TRUE
FALSE

Local output (the incorrect output, only logs FALSE if you scroll pass the element, the rest of the time it logs TRUE):
TRUE
FALSE

I hope this helps.

Great repro @ramtinsoltani! I reproduced it now too locally in Windows 7 in Chrome and FF. I isolated it to viewportH() returning a value that's too high. viewportH() uses a max technique due to reasons in S/O and to workaround issues with zooming. But in this case the window.innerHeight is smaller and correct
Math.max(document.documentElement.clientHeight, window.innerHeight || 0)

I used actual to confirm the correct viewport height but it was obviously wrong in my window because it was the result was so huge that it was like the document height
actual("height", "px") // 986
window.innerHeight // 986
$(window).height() // 4516
document.documentElement.clientHeight // 4516


No API detected

I’m trying to capture my app.
It launches it OK, attaches OK, but doesn’t do anything, the UI says “Connection established (No API detected)”.
Meanwhile, the app uses both Direct3D 9 (it has a .NET frontend, and D3D9 is used by WPF I’m using for 2D GUI parts), and Direct3D 11 (the app renders complex 3D content into a texture that’s shared with WPF through DXGI surface sharing).
I know my app doesn’t look like a game, it’s actually a CAD app, I’m not creating any swap chains, never call Present, and I only render my stuff on demand when something’s changed as the result of user input.
But still, is there a way to use it with RenderDoc?
Maybe there’s a way to do manual integration, e.g. link with renderdoc.dll, and after I call Direct3DCreate9Ex and D3D11CreateDevice pass these interfaces to renderdoc.dll to have them wrapped in these capturing wrappers?
Thanks in advance.

You should be able to use manual integration, although not of the form 'link to renderdoc.dll'. I think the only missing piece is that without any swapchains, renderdoc doesn't know where the frames start or stop (or call it a 'section of work' if it's not really frames) so it can't generate any frame captures.
You need to use the in-application API from your code, to manually start and stop the frame capture from your code rather than relying on renderdoc's handling based on keypress. See the StartFrameCapture and EndFrameCapture functions. If you have D3D9 and D3D11 active then you'll need to at least pass the D3D11 device into those functions to disambiguate where you want the capture to happen, but you can leave NULL as the window.
The "no API detected" is indeed misleading, it's originally from when I found applications might initialise different APIs but then choose on and start using it - I didn't want to mis-report, so I waited until the first presented frame. Obviously this falls down and gives a weird message when you never present any frames. I'm thinking about adding some heuristic like if I see a certain amount of created resources or drawcalls or something. It would still require manual intervention to trigger the capture but at least it could pop up a warning "there's rendering but no presenting. Are you offscreen rendering? see X documentation."

Thanks a lot!
I will try to implement that method tomorrow.
I do render frames, I just don’t present them. Instead, each time I’m done rendering, I call ResolveSubresource to copy my render target texture to the non-MSAA texture shared with WPF. Then in C# code I call D3DImage::AddDirtyRect, and that one does present somehow, with D3D9 API. Apparently, the way WPF presents stuff does not cause RenderDoc to trigger frame captures.

With the above improvements in v1.0 I think this should be a lot clearer, so I'm going to close this issue. If you have other questions or clarification you want please ask.


[FLINK-32317] Enrich metadata in CR error field

What is the purpose of the change
CR Error field is improved in https://issues.apache.org/jira/browse/FLINK-29708.
The error field is more structured with exception type, stackTrace, additionalMetadata, etc.
This ticket is a proposal to expose a config ("kubernetes.operator.exception.metadata.mapper") to enrich the additionalMetadata further.
The config consists of key-value pairs, for example:
kubernetes.operator.exception.metadata.mapper: IOException:Found IOException,403:Found 403 error code

The key is a REGEX string that will be used to match against the whole stack trace and if found, the value will be added to additionalMetadata. For example:
apiVersion: flink.apache.org/v1beta1
kind: FlinkSessionJob
....
  name: basic-session-job-example
  namespace: default
  resourceVersion: "70206149"
  uid: 916ea8f5-0821-4839-9953-2db9678c3fc9
spec:
  deploymentName: basic-session-deployment-example
  job:
    args: []
    jarURI: https://test-s3.s3.amazonaws.com/doubleExecute.jar
    parallelism: 4
    state: running
    upgradeMode: stateless
status:
  error: '{"type":"org.apache.flink.kubernetes.operator.exception.ReconciliationException","message":"java.io.IOException:
    Server returned HTTP response code: 403 for URL: https://test-s3.s3.amazonaws.com/doubleExecute.jar","additionalMetadata":{"exceptionMapper":["Found
    403 error code","Found IOException"]},"throwableList":[{"type":"java.io.IOException","message":"Server
    returned HTTP response code: 403 for URL: https://test-s3.s3.amazonaws.com/doubleExecute.jar","additionalMetadata":{"exceptionMapper":["Found
    403 error code"]}}]}'
...

Brief change log

Added new operator config for user to specify REGEX to extract info from exception and enrich CR error field with it.

Verifying this change

Added unit test
Sanity test by building image and testing in minikube

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changes to the CustomResourceDescriptors: (no)
Core observer or reconciler logic that is regularly executed: (no)

Documentation

Does this pull request introduce a new feature? (yes)
If yes, how is the feature documented? (docs)

I wonder if label mapper would be more appropriate naming for the feature/config/status field:
additionalMetadata":{"labels":["x", "y"]}...

you need ro run mvn spotless:apply


Code for updating invoice headers and footers

Fixes # .
Changes proposed in this pull request:
Adding functionality to administration section to allow users to update invoice headers and footers.

cc @HospitalRun/core-maintainers

@taras here's the PR for the invoice header work.

@billybonks this PR needs some UI/UX attention. We should pull @jglovier in to look at this and then we can start doing clean up. Adding i18n and such.

Can someone please post some screenshots of the UI changes in this PR?

This PR is for issue #370

Screenshots
Here is what the new screens look like at the moment. We need to make them clearer.
Administration -> Invoice Template -> Edit

Administration -> Invoice Template -> Preview

TODO

[ ] i18n the template strings
[ ] [UX/UI] Need design for Administration -> Invoice Templates
[ ] [UX/UI] Design/content for default templates
[ ] Pre-populate the database with default template

/cc @jglovier

@taras thanks for picking this back up and updating this PR!  Looking forward to having Chris and Lennex contributing!

Closing b/c this is covered by other features.


Xcluster; forwarder-vpp in nsm v1.8.0 crashes

Describe the bug
One trench usually works, but when starting more trenches the forwarder-vpp on the nodes where the Meridio LB is deployed dives into a crash-loop.
I saw OOM-kill once when monitoring with "watch", but I am very unsure that's the root cause
Expected behavior
No crash
Context

Kernel: 6.2.0
Kubernetes: v1.26.1
Spire: 1.5.1
Network Service Mesh: v1.8.0
Meridio: Local build on master and v1.0.1
...

Logs
The last entries before re-start below:
Mar  3 07:44:54.488 [ERRO] [cmd:/bin/forwarder] signal: killed
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=168 context=22020097 data_len=19 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=4fa28a85 msg_id=816 msg_name=sw_interface_set_l2_xconnect seq_num=1
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=169 context=22151169 data_len=24 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=d0678b13 msg_id=818 msg_name=sw_interface_set_l2_bridge seq_num=1
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=170 context=22282241 data_len=74 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=863fa648 msg_id=1302 msg_name=af_packet_delete seq_num=1
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=171 context=22413313 data_len=19 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=4fa28a85 msg_id=816 msg_name=sw_interface_set_l2_xconnect seq_num=1
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=172 context=22544385 data_len=74 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=863fa648 msg_id=1302 msg_name=af_packet_delete seq_num=1
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=173 context=22675457 data_len=19 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=4fa28a85 msg_id=816 msg_name=sw_interface_set_l2_xconnect seq_num=1
time="2023-03-03T07:44:54Z" level=warning msg="Unable to send message" channel=174 context=22806529 data_len=138 error="write unix @->/var/run/vpp/api.sock: write: broken pipe" is_multi=false msg_crc=2457116d msg_id=1373 msg_name=add_node_next seq_num=1
Mar  3 07:44:54.513 [ERRO] [cmd:/bin/forwarder] <nil>

I interpret the "signal: killed" as a failed probe which also is indicated by;
# kubectl describe pod forwarder-vpp-kksqq
...
Events:
  Type     Reason     Age                  From               Message
  ----     ------     ----                 ----               -------
  Normal   Scheduled  8m4s                 default-scheduler  Successfully assigned default/forwarder-vpp-kksqq to vm-002
  Normal   Pulling    8m4s                 kubelet            Pulling image "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0"
  Normal   Pulled     8m1s                 kubelet            Successfully pulled image "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0" in 3.191323307s (3.191332663s including waiting)
  Warning  Unhealthy  97s (x3 over 7m59s)  kubelet            Readiness probe failed: timeout: failed to connect service "unix:///listen.on.sock" within 1s
  Normal   Created    58s (x4 over 8m)     kubelet            Created container forwarder-vpp
  Normal   Started    58s (x4 over 8m)     kubelet            Started container forwarder-vpp
  Normal   Pulled     58s (x3 over 2m5s)   kubelet            Container image "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0" already present on machine
  Warning  Unhealthy  57s                  kubelet            Readiness probe failed: command timed out
  Warning  BackOff    44s (x9 over 115s)   kubelet            Back-off restarting failed container forwarder-vpp in pod forwarder-vpp-kksqq_default(afab3247-3397-415d-a4a1-f943c279a981)

Even when everything is OK (one trench) there are error printouts in the forwarder-vpp log. The problem seem to be transient though;
Mar  3 07:39:26.091 [ERRO] [cmd:/bin/forwarder] [component:netNsMonitor] [inodeURL:inode://4/4026532665] inode<PHONE_NUMBER> is not found in /proc
time="2023-03-03T07:39:26Z" level=info msg="No subscription found for the notification message." msg_id=701 msg_size=19
time="2023-03-03T07:39:26Z" level=info msg="No subscription found for the notification message." msg_id=701 msg_size=19
time="2023-03-03T07:39:26Z" level=error msg="Channel ID not known, ignoring the message." channel=132 msg_id=24
time="2023-03-03T07:39:26Z" level=info msg="No subscription found for the notification message." msg_id=701 msg_size=19
time="2023-03-03T07:41:15Z" level=error msg="Channel ID not known, ignoring the message." channel=176 msg_id=24

I also got an enormous stack trace once.

Altering the liveness/readiness timeouts did not help. Not even removing the probes. Forwarder-vpp still crashes with "signal: killed". Since no probe fails, I don't know where the signal comes from.


[Bucket Tier]Analyze and prepare design documet for Tiering policy

Issue/Feature Description:
As a admin i want to have tiering policy support in SODA Multi-cloud. So that while creating bukcket, user can use particular tier. Now, all the object upload will happen with this tier policy.
Why this issue to fixed / feature is needed(give scenarios or use cases):
How to reproduce, in case of a bug:
Other Notes /  Environment Information: (Please give the env information, log link or any useful information for this issue)

[ ] CRUD API Definition [Swagger - API]

[ ] Tier Policy Definition design
- Admin perspective [CRUD]
- User perspective  [READ]

[ ] Design Selection Service

[ ] Role based policy design for users

[ ] [FUTURE] Catalog Service Analysis and Design

Fixed with #1194


Where should I insert my api key?

I implemeted this library per the example provided here and I get the following exception when trting to submit requests:
System.Security.Authentication.AuthenticationException: Authentication failed
I guess this is due to missing api key.

Hello @ShlomiShif ,
The issue you are facing is most likely caused by another part of your application.
Whisper.net is based on Whisper.cpp and runs locally so it doesn't need any api key nor other form of authentication in order to run the model.

Will close this for now as it doesn't seem related to the Whisper.net library.

Was probably due to an old download URL from huggingsface - I saw the same issue before when debugging why the downloader stopped working.


print(image) function for easier debugging

It would be great to have a print(image) function that sends an image to stdout, or a function that turns an image to a string str(image) that can be sent to stdout. This would be useful for debugging.

This might be doable as a preprocessor directive... So no need to modify the API


Feat graphql rfc

I'll add some actual examples to give a better idea of the end results.

I'll add some actual examples to give a better idea of the end results.

I should probably also add a section about the way the Appwrite Database is going to be translated to GraphQL.

I should probably also add a section about the way the Appwrite Database is going to be translated to GraphQL.


Support a selector for "last matched region."

Eventually, Quip will support brace (et cetera) matching, such that when you type a closing } the matching { is briefly highlighted. It would be interesting to have a method of selecting the inner or outer region of that matched range, potentially.

This would be redundant with whatever command exists for "prior block," and so doesn't really need to exist.


[HOW-TO] Fastest way to capture continuous full resolution .dng files

Hello,
I would like to know how to and how many raw images I can capture in .dng format (full resolution) per second.
I have modified the capture_dng.py file by removing time.sleep(2), and I have looped the line: picam2.switch_mode_and_capture_file(capture_config, "full.dng", name="raw"). By running the script, I can capture 1 image every 2 seconds on average, that is 60 images in 2 minutes of total script runtime. Is there any other way to improve the capture speed?
I wondered if I could capture raw images in .dng format every 0.25 seconds for two minutes. Please let me know if my approach is wrong in fast saving the .dng files.
My specs : Raspberry pi 4 model B (4 GB); camera module v3 NOiR

The major part of the 2 seconds is the conversion of the raw buffer to a dng file by the pidng module.
If you want to speed it up you need to save buffers first for say 2 minutes and afterwards convert them to dng files.
On my Pi3b+ with camera module v3 NoIR  the conversion of a full resolution (4608x2592) takes almost 3 seconds (2975 msec).

Hi, thanks for the question. I think there could be a number of different answers depending on which route you'd like to explore.
Saving raw files quickly
This does get asked from time to time because saving DNGs is not that quick. Some users have saved the raw buffers as (for example) bare numpy arrays, and then you can read them back and convert them later. It's worth noting that the exposure time and analogue gain need to be fixed, otherwise even raw files are likely to show some variation.
Getting consistent processing
It's possible to get 100% consistent processing in a raw and even in a JPEG file.
I'm going to assume you have a fixed environment. In this case I would work out what shutter time and gain you want, and program these manually. This will disable the AGC/AEC, which may otherwise make adaptive changes as time goes on. Your raw files should now be as "consistent" as possible (though see comments below for the imx708).
For JPEG files there are a few more things to fix (these changes have no effect on the raw files). I would decide what colour gains you actually want and program these manually too. This will stop the AWB from changing the colour balance subtlely over time. Actually the imx708 (camera v3) is a bit unusual in that the AWB can affect raw files in a slightly indirect way, so I would certainly recommend fixing the colour gains even for an imx708 raw file (other cameras don't show this behaviour).
Next, in the camera tuning file you need to find the line that says "ce_enable": 1, and change it to "ce_enable": 0, and finally find the line that says "n_iter": 100, and change it to "n_iter": 0,.
Hope that helps, please get back to us if you need more information.

@akarsh-sa I have been experimenting with the "saving raw buffers" way @davidplowman mentioned above.
If you want 2 minutes worth of 4 frames per second then you need to save 480 frames.
For the imx708 (as in the camera module v3) the frame size for raw can only be the size of one of the available 3 modes:
1536x864, 2304x1296, 4600x2592. SRGGB10_CSI2P stores 4 pixels in 5 bytes.
So for a single 1536964 frame you need 1536x864x1.25 = 1,658,880 bytes. 480 frames need 796,262,400 bytes.
Moreover for each frame the metadata also has to be stored, since the save dng needs both.
Conclusion: only a Pi4b with 2GB might work,  probably best using a 4GB or 8GB model.
For 46002592 it s up to 14MB per frame. 480 frames is already 7GB.
Therefore I have used the smallest format (1536*864).
Here is the code for acquiring and storing 480 frames at 4 fps:
#!/usr/bin/python3

import pickle
import time
from picamera2 import Picamera2, Preview

picam2 = Picamera2()
picam2.start_preview(Preview.NULL)

# Specifying a small size in capture_config forces the smallest mode
capture_config = picam2.create_still_configuration(raw={"size": (640, 480)}, buffer_count=2)
picam2.configure(capture_config)
print(capture_config["raw"])

picam2.set_controls({"FrameRate": 4})

# Add other controls to force constant exposures here

time.sleep(2)

buffers = []
metadatas = []
starttime = time.monotonic()
while (time.monotonic() -  starttime) < 120.0:
    request = picam2.capture_request()
    buffers.append(request.make_buffer("raw"))
    metadatas.append(request.get_metadata())
    request.release()
endtime = time.monotonic()

print('Capture duration = ', endtime - starttime)
print(len(buffers))
print(type(buffers[0]))
print(type(buffers[0][0]))
print(len(metadatas))
print(metadatas[0])

starttime = time.monotonic()
# The dng conversion needs the used config, frames and metadatas
savedata=[capture_config["raw"], buffers, metadatas]
with open('testbuffers','wb') as f:
    pickle.dump(savedata, f)
endtime = time.monotonic()
print('pickletime = ', endtime-starttime)

My testbuffers file has size 798156718. for 481 frames.
Hre is the code to produce 481 dng files:
#!/usr/bin/python3

import pickle
from picamera2 import Picamera2

with open('testbuffers','rb') as f:
    data=pickle.load(f)

print(len(data))
config = data[0]
print(config)
buffers = data[1]
print(len(buffers[0]))
metadatas = data[2]
print(metadatas[0])

picam2 = Picamera2()
for i in range(len(buffers)):
   filename = 'full{0:03d}.dng'.format(i)
   print(filename)
   picam2.helpers.save_dng(buffers[i], metadatas[i], config, filename)

Each dng file has size 1659640
I have not tried to save the buffers directly to disk instead of to memory.
Might be possible with a fast SSD.

Is there anything else to investigate here? If there are no further updates I'll consider closing this issue shortly. Thanks!


Peloton cannot support multi-statement queries from JDBC

A JDBC client can send multiple queries together in a single "Parse" packet, separated by semicolons. While the parser can handle such requests, the frontend code for PSQL manually splits strings on ';' and processes them as separate queries and the frontend code for JDBC assumes single query strings everywhere. This portion of the protocol needs to be fixed.

Replaced with #681


iOS build app.framework consumes lots of memory

IOS flutter工程，通过xcode_backend.sh 源码打包app.framwork，内存一直增长无法打出app.framework，打印dart文件3400个文件。
通过本地编译flutter_tools，编译发现打包会一直读写，导致内存增高，下面是卡死在flutter_tools的俩段代码
  final BuildResult result = await globals.buildSystem.build(target, environment, buildSystemConfig: BuildSystemConfig(
      resourcePoolSize: argResults.wasParsed('resource-pool-size')
        ? int.tryParse(stringArg('resource-pool-size'))
        : null,
    ));

 if (canSkip) {
        skipped = true;
        logger.printTrace('Skipping target: ${node.target.name}');
        updateGraph();
        return passed;
      }
      logger.printTrace('${node.target.name}: Starting due to ${node.invalidatedReasons}');
      await node.target.build(environment);
      logger.printTrace('${node.target.name}: Complete');

      node.inputs
        ..clear()
        ..addAll(node.target.resolveInputs(environment).sources);
      node.outputs
        ..clear()
        ..addAll(node.target.resolveOutputs(environment).sources);

Hi @robin0822
Can you please provide your flutter doctor -v, a complete reproducible minimal code sample or complete reproducible steps, and complete flutter run --verbose logs running the minimal code sample?
Thank you

1  用的是flutter 系统的xcodebackup脚本打包的
2 之前flutter文件不多时候是可以打出来app.framework的，现在我们集成的dart文件大约在3000多个文件
3 文件量大了，这个时候就打不出来app.framework，并且会卡死，卡住不动了。
上面我我发的代码是flutter_tools里面的代码，我看到是在这个方法里面卡死的，混合开发不能直接使用 flutter run 的命令输出日志

Hi @robin0822
Translated your message using Google Translate
1 It is packaged with the xcodebackup script of the flutter system
2 Before there are not many flutter files, you can type app.framework. Now we have more than 3000 integrated dart files.
3 The amount of files is too large, and the app.framework cannot be typed out at this time, and it will freeze and freeze.

The code I posted above is the code in flutter_tools. I see that it is stuck in this method. Hybrid development cannot directly use the flutter run command to output the log

To me, it sounds like your app.framework is stuck? or your app is stuck.  Is this Flutter App or Add to app iOS app? Can you please provide complete steps to reproduce the memory issue? Also, provide memory screenshots if you can and can you please provide your flutter doctor -v.
Thank you

YES  That's what I mean

Hi @robin0822
Is this Flutter App or Add to app iOS app? Can you please provide complete steps to reproduce the memory issue? Also, provide memory screenshots if you can, and also provide your flutter doctor -v.
Thank you

It is Add to app iOS app
complete steps
1  xcode build  run flutter build script  xcode_backend.sh
2 xcode_backend    build  app.framework
[assemble, --output=/Users/quyanhui/Desktop/app/app_all/.ios/Flutter/, -dTargetPlatform=ios, -dTargetFile=lib/main.dart, -dBuildMode=debug, -dIosArchs=arm64, -dSplitDebugInfo=, -dTreeShakeIcons=false, -dTrackWidgetCreation=, -dDartObfuscation=false, -dEnableBitcode=, --DartDefines=, -dExtraFrontEndOptions=, debug_ios_bundle_flutter_assets]
3 assemble commonds Connect local  flutter_tools，in  build_system.dart   Future _invokeInternal(Node node) async    Wait to continue  Memory keeps growing
flutter doctor -v
[✓] Flutter (Channel stable, v1.17.5, on macOS 11.5.2 20G95, locale zh-Hans-CN)
• Flutter version 1.17.5 at /Users/quyanhui/flutter
• Framework revision 8af6b2f038 (1 year, 3 months ago), 2020-06-30 12:53:55 -0700
• Engine revision ee76268252
• Dart version 2.8.4
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at /Users/quyanhui/Library/Android/sdk
• Platform android-29, build-tools 29.0.3
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 12.5.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.5.1, Build version 12E507
• CocoaPods version 1.10.2
[✓] Android Studio (version 3.5)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 44.0.1
• Dart plugin version 191.8593
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
[✓] Connected device (1 available)
• 温静婷的iphone • 00008020-0008550C2ED0003A • ios • iOS 13.3
• No issues found!

Hi @robin0822
Reproducible steps are not clear, please make provide clear provides with some explanation
Unfortunately, the Flutter version you're using is outdated and is no longer supported, it's not feasible to provide any bug fixes for such an old version of Flutter.
I kindly advise you to update to the latest Flutter stable, if you encounter the issue again, please comment below with the details from the latest stable, including steps to replicate the issue.
Can you please upgrade to the latest  stable and try again
Execute the following commands to upgrade
flutter channel stable
flutter upgrade --force
flutter doctor -v


Sheet misaligned from right on documentation

Issue is on http://localhost:3000/docs/components/sheet
This is probably just a weird css bug.

It doesn't look like it's happening on the left side with the mobile menu.

I'm gonna work on this :)

Thank you!


Make SLURMCluster.scale() to request multiple nodes at once

Our cluster prefers multiple node requests over single node requests.
The problem is that

Scaling a SLURMCluster on this system takes long time.
E.g. SLURMCluster.scale(10) makes 10 single node requests which takes much longer than just requesting 10 nodes at once.

Our current workaround to speedup scaling is to start the cluster via the script
#SBATCH -J try_dask
#SBATCH -N 11              # Number of workers + 1
#SBATCH -n 11
#SBATCH -c 10
#SBATCH -p S-M
#SBATCH --account=GT5DSTC
#SBATCH --time 00:10:00
#SBATCH --mem 60GB

# Select scheduler node
SCHEDULER=$(srun hostname | head -1)

# Start scheduler
srun -N 1 -n 1 --nodelist=$SCHEDULER dask-scheduler --interface ipogif0 --scheduler-file cluster.json &

# Wait until scheduler is ready
sleep 20

# Start worker
srun -N 10 -n 10 --exclude=$SCHEDULER dask-worker --scheduler-file cluster.json &

try_dask.py

In this case, the 11 nodes are requested at once which is much faster than making 11 single requests.
How can SLURMCluster.scale() be adapted to request all the 11 nodes at once?

I don't see an easy path towards fully supported multi-node jobs in Dask jobqueue as it's designed to serve as a common or at least very similar interface to many different batch scheduling systems.
I'm not familiar with many of the supported batch scheduling systems, but none I know has something that is as flexible as the salloc or sbatch --> srun you outline here. So maintaining general support of most batch scheduling systems while at the same time implementing this logic likely won't happen. One of the things that would become substantially more difficult if we gave up the notion of 1 worker = 1 job is fine grained scaling and adaptivity.
There might, however, be a simple workaround that could help with most of your scenarios and if you don't care about fine-grained cluster.scale() or adaptivity:

Use the job_extra= kwarg to set -n ... and -N ... in the header of the jobscript.

Use the python= kwarg to inject the  srun call: python="srun -N 10 -n 10 --exclude=$SCHEDULER python" could work if the python in you default Path is the right one. Otherwise activate with env_extra=["<whatever needed to activate correct env", ].

Note that SLURMCluster will set up a scheduler so you don't nee this part in the job script.
(cc: @kathoef who might be interested in giving this a try as well.)

Also, for Dask clusters of static size, dask-mpi could be the right solution.

Just tried this. The hard coded -n 1 https://github.com/dask/dask-jobqueue/blob/master/dask_jobqueue/slurm.py#L67 stops you from just adding more tasks to the job header.

Hi @demaheim, see also https://github.com/dask/dask-jobqueue/issues/196. It is about job arrays, but I think it shares your concern,  and give some explenation on why this is not implemented in dask-jobqueue.
TL;DR; the current approach is to find a workaround to avoir complexifying dask-jobqueue code. So if you find one for Slurm, this would be very welcomed!

Just tried this. The hard coded -n 1 stops you from just adding more tasks to the job header.

Hey @willirath, could you try to use header_skip parameter?

Hi @willirath and @guillaumeeb ,
thanks for explaining why my request is difficult do implement in dask-jobqueue.
I tried using
header_skip=['-n', '-N'],
job_extra=['-n 2', '-N 2']

but there are still only single node requests:
JOBID PAR     NAME     USER ACCOUNT ST       TIME NODE   CPUS NODELIST(REASON)
465932 S-M dask-wor    dheim gt5dstc PD       0:00    1      4       (Priority)
465933 S-M dask-wor    dheim gt5dstc PD       0:00    1      4       (Priority)
465934 S-M dask-wor    dheim gt5dstc PD       0:00    1      4       (Priority)
...

Later I will try

python="srun -N 10 -n 10 --exclude=$SCHEDULER python"
Consider dask-mpi
And think about finding a workaround for Slurm without complexifying dask-jobqueue.

header_skip=['-n', '-N'],
job_extra=['-n 2', '-N 2']

I think header_skip skips lines that contain the listed strings: https://github.com/dask/dask-jobqueue/blob/d7afbfe50191a4dca5f07ee506294edebbe05ad5/dask_jobqueue/core.py#L284
The following could do:
header_skip=['-n 1', '-N 1']
job_extra=['-n 2', '-N 2']

You can check the job script with
print(clutster.job_script())

and make sure the header looks fine.

When I use
header_skip=['-n 1', '-N 1'],
job_extra=['-n 9', '-N 9'])
cluster.scale(1)

it looks good (requesting 9 nodes at once)
  JOBID PAR     NAME     USER ACCOUNT ST       TIME NODE   CPUS NODELIST(REASON)
 465990 S-M try_dask    dheim gt5dstc  R       0:51    1     10         nid00438
 465991 S-M dask-wor    dheim gt5dstc PD       0:00    9     36       (Priority)

cluster.job_script():
#SBATCH -J dask-worker
#SBATCH -p S-M
#SBATCH -A GT5DSTC
#SBATCH --cpus-per-task=4
#SBATCH --mem=56G
#SBATCH -t 0:10:00
#SBATCH -n 9
#SBATCH -N 9

/home/dheim/miniconda3/bin/python -m distributed.cli.dask_worker tcp://<IP_ADDRESS>:45527 --nthreads 4 --memory-limit 60.00GB --name name --nanny --death-timeout 60 --interface ipogif0

but when I use numbers > 9, e.g. 10:
header_skip=['-n 1', '-N 1'],
job_extra=['-n 10', '-N 10']
cluster.scale(1)

only one node is requested:
  JOBID PAR     NAME     USER ACCOUNT ST       TIME NODE   CPUS NODELIST(REASON)
 465995 S-M try_dask    dheim gt5dstc  R       0:18    1     10         nid00438
 465996 S-M dask-wor    dheim gt5dstc PD       0:00    1      4       (Priority)

cluster.job_script():
#SBATCH -J dask-worker
#SBATCH -p S-M
#SBATCH -A GT5DSTC
#SBATCH --cpus-per-task=4
#SBATCH --mem=56G
#SBATCH -t 0:10:00

/home/dheim/miniconda3/bin/python -m distributed.cli.dask_worker tcp://<IP_ADDRESS>:44112 --nthreads 4 --memory-limit 60.00GB --name name --nanny --death-timeout 60 --interface ipogif0

(sorry, I need to logoff the cluster now, I will try again tomorrow)

This looks like expected (but somewhat buggy, see #461) behaviour: header_skip=['-n 1', ...] will remove all lines containing "-n 1" including the one for 10 nodes you added with job_extra.  Dirty workaround until #461 is fixed would be to add an extra space or in the job_extra arg 😞
The Job script with 9 nodes looks promising. But you'll need to use
python="srun -N 9 -n 9 /home/dheim/miniconda3/bin/python"

to make sure you're really getting 9 tasks each running a worker.

The dirty workaround first looks good:
header_skip=['-n 1', '-N 1'],
job_extra=['-n  10', '-N  10',

leads to
  JOBID PAR     NAME     USER ACCOUNT ST       TIME NODE   CPUS NODELIST(REASON)
 466348 S-M try_dask    dheim gt5dstc  R       0:10    1     10         nid00001
 466349 S-M dask-wor    dheim gt5dstc PD       0:00   10     40       (Priority)

but
python="srun -N 9 -n 9 /home/dheim/miniconda3/bin/python"

seems to result in many errors
distributed.utils - ERROR - 'tcp://<IP_ADDRESS>:40346'
Traceback (most recent call last):
  File "/home/dheim/miniconda3/lib/python3.7/site-packages/distributed/utils.py", line 663, in log_errors
    yield
  File "/home/dheim/miniconda3/lib/python3.7/site-packages/distributed/scheduler.py", line 1923, in remove_worker
    self.stream_comms[address].send({"op": "close", "report": False})
KeyError: 'tcp://<IP_ADDRESS>:40346'
distributed.core - ERROR - 'tcp://<IP_ADDRESS>:40346'
Traceback (most recent call last):
  File "/home/dheim/miniconda3/lib/python3.7/site-packages/distributed/core.py", line 408, in handle_comm
    result = handler(comm, **msg)
  File "/home/dheim/miniconda3/lib/python3.7/site-packages/distributed/scheduler.py", line 1923, in remove_worker
    self.stream_comms[address].send({"op": "close", "report": False})
KeyError: 'tcp://<IP_ADDRESS>:40346'

There are a few potential issues that could be triggering this, one is that (to my understanding) there is likely no guarantee from the the launcher (srun in this case) that anybody other than the root process can access argc and argv, with MPI you would usually have to distribute these if they were required by other MPI tasks.
The other is that even if they were available, your 9 workers would all share the same name kwarg which I'm pretty sure leads to the type of errors that you are seeing.
With the current approach what you are really looking for is to use dask-mpi (without a scheduler) from within dask-jobqueue...might not be so hard (especially if you a are already willing to hack the headers) but I imagine it is uncharted territory.
I don't have a general solution for this, the job array discussion in #196 would probably serve your needs but that might be some time away.

Thank you for all your help! I will try dask-mpi and check if it serves our needs!

The other is that even if they were available, your 9 workers would all share the same name kwarg which I'm pretty sure leads to the type of errors that you are seeing.

I think there is a workaround for this with https://github.com/dask/dask-jobqueue/pull/480.
Closing this one.

The other is that even if they were available, your 9 workers would all share the same name kwarg which I'm pretty sure leads to the type of errors that you are seeing.

I think there is a workaround for this with https://github.com/dask/dask-jobqueue/pull/480.
Closing this one.


⚠ ClamAV has degraded performance

In 6c454f9, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 288 ms

Resolved: ClamAV performance has improved in 4972fe4 after 5 minutes.


Collection is not getting created

I am new with solr, i tried you given example but 'gettingstarted' collection is not created. It would be great help if you can provide me one detailed example

You need to create the collection first. see [Solr Collections API] (https://cwiki.apache.org/confluence/display/solr/Collections+API)


Changed -1 to -1.0 for broader GPU suppot.

Some GLSL compilers are more sensitive to types than others. With this fix, my Intel HD Graphics 5500 (Broadwell GT2) gives no error on this script anymore.
Thanks for contributing to manim!
Please ensure that your pull request works with the latest version of manim.
You should also include:

The motivation for making this change (or link the relevant issues)
How you tested the new behavior (e.g. a minimal working example, before/after
screenshots, gifs, commands, etc.) This is rather informal at the moment, but
the goal is to show us how you know the pull request works as intended.

Input from a moderngl maintainer:
There might be more of this around in the glsl code. I think where floats should be expected it's typically a good idea to use 1. or 1.0 instead of 1 as it could lead to strange behaviour with some drivers and in this case actually a complier error.
This fix however makes Manim run at least!

It works! thanks.


chore: introduce ofNatLt to reduce usage of Fin in bitvec proofs

This PR is an effort to improve reasoning at the Nat level about bitvectors and reduce of Fin and Nat.
It slightly tightens some proofs, but is generally aimed at reducing inconsistencies between definitions at the Nat and Fin types in favor of more consistently using Nat operations.

Dear @joehendrix, it might be helpful to explain briefly in the commit message (and maybe even in code/) why reasoning using Nat and ofNatLt is preferable.

chore: introduce ofNatLit to reduce usage of Fin in bitvec proofs #663

I guess you mean ofNatLt in the commit message.

It's mostly about consistency.  If we use the same types and style in definitions and proofs, there is less surprise when unfolding or otherwise using definitions.  We use some Nat based operations that haven't been extended to Fin such as the bitwise operations, and I don't want to pay the overhead of introducing a Fin version of every Bitvector operation.
So this basically means Nat is preferred.
One argument potentially in favor of Fin is that we could reuse results proven there, but that doesn't really seem to be the case so far.
A second argument is that we want to simplify expression to use more canonical forms and we currently can pretty-print those operations better using ofNat than ofFin.  We could define the notations using ofFin of course though, but that's additional operators that will show up in expressions.

I think it'd be good to have a writeup of normal forms and how to reason about Bitvectors, but I don't want to hold up PRs for that if there aren't objections to this code.

One argument potentially in favor of Fin is that we could reuse results proven there, but that doesn't really seem to be the case so far.

I'd say this is mostly a symptom of a lacking Fin API in std. For now, we've proved most things directly in terms of Nat  because we don't have the equivalent Fin-result yet, and proving the Fin version first add overhead.
However, I would argue that some of these result are ones we should have for Fin at some point, and it would be nice if, when we do, the BitVec proof is becomes a trivial collorary.
For example, consider add_not_self : x + ~~~x = allOnes w (which currently we prove via the "bitblasted" adc). Morally, this is the same as
/-- Analogue of `Fin.last` given `n ≠ 0` -/
def Fin.last' (h : n ≠ 0) : Fin n :=
  ⟨n - 1, Nat.sub_lt (Nat.zero_lt_of_ne_zero h) Nat.zero_lt_one⟩

theorem add_rev_eq_last' (i : Fin n) : i + i.rev = Fin.last' _

Which I'd argue makes for an interesting statement about Fins on its own merit

A second argument is that we want to simplify expression to use more canonical forms and we currently can pretty-print those operations better using ofNat than ofFin. We could define the notations using ofFin of course though, but that's additional operators that will show up in expressions.

I agree a good, simple notation for creating a bitvector with known-bound is beneficial, but what is wrong with ofFin?
That is, what goes wrong if we define the notation as
macro_rules | `($i#'$p) => `(BitVec.ofFin <| Fin.mk $i $p)

With the unexpander:
/-- Unexpander for bit vector literals. -/
@[app_unexpander BitVec.ofFin] def unexpandBitVecOfNatLt : Lean.PrettyPrinter.Unexpander
  | `($_ { val := $i, isLt := $p }) => `($i#'$p)
  | s => throw ()

I don't think coupling BitVec so closely to Fin is good practice.  Fin has some of the operations that BitVec has, but not all are natural (such as most-significant bit-based indexing), and it's primarily used in my experience in array indexing.
This PR is also showing that using Fin wasn't buying much in terms of simplifying the code.  One could conceptually hide the Fin.mk behind syntax (just as we hide BitVec.ofNat and BitVec.ofNatLt), but I don't see the point.  If you are specifying an ISA or something like LLVM, you probably dont need a close Fin connection.  Crypto-might benefit a bit more, but even then they may have custom types for GF(2^n) or prime fields rather than use BitVec or Fin directly.
There's also the whole class of SAT tactics that work very nicely with BitVec, but don't have naturally Fin analogues.
In short, I think the benefits of decoupling and simple user types outweigh the potential code savings.  The consistency with Fin could be addresses through tooling eventually, but I think is low priority.


You can consider using the new B3FD dataset or IMDB-WIKI filtration lists for even better results

Great repository! You can get even better results by training on the new B3FD dataset: https://github.com/kbesenic/B3FD

Great work!
Thank you for your information.


Support synonyms in the engine

Milli must support the synonyms. Synonyms can be more than one word and are already supported in the query tree construction logic, we only need to introduce methods to set and save them on disk.
You can find more information on the official MeiliSearch documentation.

Introduce a field in the Settings struct to accept a list of synonyms.
Store this list of synonyms in an efficient way in the key-value store.
Fetch this list in the Context trait implementation of the QueryTreeBuilder.

Details about the synonyms
As explained above the synonyms can only be declared one-way (i.e. android gives smartphone), if a user needs to declare a two-way synonym (i.e. wolverine gives logan and logan gives wolverine) it must be declared in both way by the user in the settings, that's expected behavior.
Here is the kind of JSON object that the engine will receive describing the list of synonyms:
{
  "wolverine": ["logan"],
  "logan": ["wolverine"],
  "android": ["smartphone"],
  "wow": ["world of warcraft"],
  "world of worcraft": ["wow"]
}

How can we store the synonyms?
We must find an efficient way to store the synonyms in LMDB (using heed), preferably in the main (polymorph) database like for stop-words. A HashMap serialized using serde JSON could do the job.
However, if a user has a lot of synonyms (think plurals or CJK), it could take a lot of time to deserialize the whole HashMap to, then, only fetch one list of associated synonyms. Finding a better way to store the synonyms (using another database) will be part of another issue, in the future.
Normalize the synonyms!
When performing a search, the user query is compared to the list of synonyms, for synonyms to be matched correctly with the query words, both synonyms and query words must be normalized. Query words are already normalized (@LegendreM could you confirm?), we must not forget this step with synonyms when storing them. Both sides must be normalized (i.e. wolverine and logan).
If a synonym is found to be multiple words, it must be split using the tokenizer and stored splitter, on both sides.

the official MeiliSearch documentation.

I suppose link to the doc isn't correct 😄

I think I can start working on this one and present a PR draft in a while 🙂

@Kerollmops how's about filling another issue regarding synonyms storage optimization (as you said, it may be another DB)?

@shekhirin thank you, I just updated the relevant part of the issue, I hope we already have a mutable transaction in the query builder to be able to fetch the synonyms from the database.


Move sys.path insert earlier in s3op.py

ok, I am running the tests. Please run yours as well so we can make sure this also works.


Sink data plane not released

Describe the bug
https://github.com/knative-sandbox/eventing-kafka-broker/releases see assets
Expected behavior
eventing-kafka-sink.yaml in assets
Knative release version
0.18
Additional context
soon
/assign

Done!
/close


TypeError: network_test() missing 1 required positional argument: 'case' when adding an example

Hey. Not sure why this happens but when use the swagger file below, I get the following error:
TypeError: network_test() missing 1 required positional argument: 'case'

Removing the example field under content.application/json fixes it.
paths:
  /v1/some/request:
    post:
      summary: Summary
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - break
                - pod
                - id
              properties:
                break:
                  type: integer
                pod:
                  type: integer
                id:
                  type: string
                  format: uuid
              example:
                breakdur: 90
                podid: 4
                asstid: 9da17b9f-b029-4bfe-9640-d76009f6e717
      responses:
        "200":
          description: Request accepted
        "400":
          description: Invalid JSON
        "404":
          description: not found
        "5XX":
          description: Internal server error

I figured it out. example is one level too low (it should be under application/json but I had it under schema).
The error the cli gives isn't clear though. Closing.

Hm, interesting - it should give an error from jsonschema validation. I'll check it, maybe we can improve the error message

There are two bugs under the hood, unfortunately.
Since "schema" value is Schema object it can have "example" field (this is why built-in validation didn't complain) - https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#fixed-fields-20 and it should not fail as it does at the moment.
Another problem is that for "requestBody" examples are ignored (https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#fixed-fields-12)
Thank you very much @pjrt for reporting it, I will work on fixes

And another issue is that the CLI output is not helpful at all - I will create a separate issue for it

The original bug is solved in #393
Better examples support is implemented in #395
Expanding tracebacks option is done in #396
Changes will be released later today / tomorrow
Let us know if there is anything we can improve :)


Rename SOURCE_CHAIN in refund context

Current dependencies on/for this PR:

main

PR #56   👈

This comment was auto-generated by Graphite.


Run golangci-lint as part of pull request workflow #604

Resolves #604

Is there an easy way we can test these workflows before merging?

Yes, you can look at the fork here https://github.com/abstractj/louketo-proxy/actions/runs/99223707. As you may notice, there are several alerts there for golangci-lint. Which ones do you think we should disable?
IMO the alerts for whitespace make sense, but not sure about the complexity warnings. Because sometimes we only updated the code to please the Linter. But if you consider this something important, we can keep it.

In general I think the complexity ones are good, but you can get ones that are a bit annoying, such as the ones highlighted here. I believe we can add an exception to .golangci.yaml if we want to keep it turned on. I have no strong opinion either way on this one

@JoelSpeed np, let's keep it. Found a typo on my YAML file, but it's fixed now. If there's anything else that you would like to change, please let me know.

Do you think we should try and fixup the linting issues before merging this? Probably as a separate PR?

@JoelSpeed of course, we can do that, there's no need to rush about merging this.

@stianst could you please review?


CLOUDSDK-77 Catch possible error on pipeline execution

Error message in console of SDK outputs an empty string.
It should show the stacktrace of the error


Fix site customize 2

Why
Oops, I merged the https://github.com/replit/nixmodules/pull/272 before testing. sitecustomize.py broke: it contained the path to the file rather than the contents. This fixes it (version 2).
Test Plan

create a Python Repl
pip install gunicorn
cat .pythonlibs/bin/gunicorn see that the shebang line starts with #!/usr/bin/env python3
make sure template tests (in particular pip and poetry tests) pass
pip install --upgrade pip
which pip to see we are using the pip inside .pythonlibs
try using that pip to install a thing: pip install flask

Verified the shebang line works even with the upgraded version of pip.


Planner Strategy 1: Alarm Management

Story:
We should manage alarm with clock and it should be set up in android phone , and then should call a ring by the certain time.
Acceptable Criteria:

[ ] Alarm Management in Android (Add, Update, Delete)
[ ] Train its command and handle its prompt properly in Brain

Challenge:
There are few different clocks in android and it is a little difficult to manage them with its Intent.

It takes around 4 days.

Please follow the blow steps to implement this function.

call /sendNotificaiton with user's input (Android) and return its command(program: "alram_crud [create | delete | update | get]) as its response.
call /alarm/[your alarm api] with the list of alarms (Android) and return its detail information including id, title, dec, time etc as its response.

To: @peterluo3131 @jupiter0913

This is alarm lists schema for update | delete | get.
{
alarms: [{
id: Int,
time: String,
enabled: boolean,
label: String
}],
prompt: String
}
Please make response like below.
{
status_code: Int,
message: [],
result: {
program: "alarm_manage",
content: {
alarms: [{
type: String,
id: Int,
time: String,
label: String,
enabled: boolean
}]
}
}
}

I've tried to get a list of alarms on device, but it's not possible. We can only schedule alarm. 😢
To: @jupiter0913 @stackdev37
Cc: @posix4e @tukpsyche


Add files via upload

https://www.kwspz.pl/

@Lich555 kwspz.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@Lich555 kwspz.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@Lich555 kwspz.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@Lich555 I renamed the file in the request on your behalf to have a correct path. The pull request merged. Thank you.

Thank you for help :) Now can I buy this product with student's discount?Od: "Philip Torchinsky"<EMAIL_ADDRESS>"JetBrains/swot"<EMAIL_ADDRESS>Wysłane: 10:20 Czwartek 2020-04-16Temat: Re: [JetBrains/swot] Add files via upload (#8114)
@Lich555 I renamed the file in the request on your behalf to have a correct path. The pull request merged. Thank you.
—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or unsubscribe.


Workflow.Status.Message not propagated correctly from pod failures

A proper 'message' field for a failed pod needs to be propagated up to the node.message as well as the workflow.status.message.

Commit 705193d will give a better error when main container fails, and when we fail to load/save artifacts. But the error reason could be improved to provide even more details, known only to the init/wait container. Filed issue #522 for this.


[PT-BR] new JSX Support.ts

Hi guys, this is my "hello world" to open source contribuing, so I hope I don't have commited any mistake haha, really glad of making part of this project!
Not sure if I've used the best words in some terms, but I'm 100% opened to opnions so if you think that something could have been a little better, please feel free to comment.
@khaosdoctor @alvarocamillont @danilofuchs @orta

lgtm


Support for vmagent cluster setup

Ref doc: https://victoriametrics.github.io/vmagent.html#scraping-big-number-of-targets
It requires to identify each member in cluster,
/path/to/vmagent -promscrape.cluster.membersCount=2 -promscrape.cluster.memberNum=0
/path/to/vmagent -promscrape.cluster.membersCount=2 -promscrape.cluster.memberNum=1

vmagent is deployed via Kubernetes Deployment, I assume it's impossible to identify correctly each member in case of Rolling  Upgrade and etc. It could be achievable via Kubernetes StatefulSet and downward API

In addition, statefullset implementation will allow to use pvc claim and do not lose persistent queue state after restart.
index can be obtained with `
  - name: promscrape.cluster.memberNum
    valueFrom:
      fieldRef:
        fieldPath: metadata.annotations['spec.pod.beta.kubernetes.io/statefulset-index']

and set membersCount with arg according to the number of replicas.
Note, this solution may lead to metrics loss on statefulset upgrade.

Note, this solution may lead to metrics loss on statefulset upgrade.

setting .spec.template.updateStrategy.type to OnDelete will Alleviate this problem. Let users decide when to update.

any progress? if not, I will finish this feature.

any progress? if not, I will finish this feature.

going to add it in next few days. I've made few experiments with design.

Added to master branch, example usage, produces 3 shards with 2 replicas per shard:
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMAgent
metadata:
  name: example-vmagent
spec:
  serviceScrapeNamespaceSelector: {}
  podScrapeNamespaceSelector: {}
  podScrapeSelector: {}
  serviceScrapeSelector: {}
  scrapeInterval: 60s
  vmAgentExternalLabelName: vmagent-ha
  shardCount: 3
  replicaCount: 2
  remoteWrite:
    - url: "http://vmsingle-example-vmsingle-persisted.default.svc:8429/api/v1/write"

Great, thank you for your wonderful work !

Included to 0.12.0 release


Support for Ollama

Hi I was wondering if there is currently a way to use this with an llm running locally on my machine instead of having to use chatgpt or claude APIs. Ollama has a few different llms, perhaps there is a way to generalize is, giving people the freedom to test against more models.

Hi,
Thank you for your interest in our work. Indeed, we used gpt-3.5-turbo and claude-2 as harmful classifiers and model under test respectively in our paper, but in fact you can use any model you want to use to achieve these two purposes. We will support open source LLMs in the future, please stay tuned.


A recover mode for DSC

In cases when files are moved from one computer to another, the unique identifier that we have saved for these files is likely to have changed (e.g. file name change due to path change) and thus triggering unnecessary rerun. We need an option to "recover" from trusted existing files.

Fixed.


[pwm] RTL modifications for specification compliance and predictable behavior

This PR addresses a number of issues found within the PWM RTL as part of the D3 review process. Since the changes have ended up becoming pretty extensive, the PR is structured as a number of commits. Each of these, except perhaps the final one, should be easy to understand in isolation since it is either (i) small and self-contained or (ii) not a functional change.
Since the last involves significant changes to the blink mode and particularly heartbeat logic it is more involved.
Please see the commit messages for a breakdown of what each commit does.
Issues with the current PWM implementation:

phase counter configuration is accepted immediately; software could probably tolerate either immediate or deferred acceptance, but this PR changes the RTL to match the specification/documentation, allowing the configuration to be changed at any point and the phase counting to be disabled at any time. New configuration settings are accepted into the core logic only upon enabling the counter.

phase counter is not fully reset when the configuration was changed.

channel enable only gates the output on/off and does not start the internal logic from a defined state.

heartbeat logic is not reset properly when the configuration was changed, so to achieve synchronized heartbeat signaling (eg. tri-color LED operation) it is necessary first to configure the pwm channels for blinking operation and then quickly set the htbt_en bits to ensure that they start at the same time (not at the 5us clock-cycle level, but close enough for LEDs).

changing the pwm_en or invert register impacts the other channels, causing a reset of the blinking logic and a partial reset (loss of predictable timing) of heartbeat logic.

the duty cycle within the channel is updated at the end of the pulse cycle without any regard for the phase delay. A given output pulse may thus be formed from two different duty cycles.

there is a lot of combinational logic on the output of the PWM block which means that it is likely to suffer from glitches; this could be a problem for any application that is edge-sensitive or relies upon specific timing rather than just the overall average signal level.

CHANGE AUTHORIZED: hw/ip/pwm/rtl/pwm_chan.sv
CHANGE AUTHORIZED: hw/ip/pwm/rtl/pwm_core.sv
This has intentional functionality change (for the better) and has been carefully reasoned about and tested.

CHANGE AUTHORIZED: hw/ip/pwm/rtl/pwm_chan.sv
CHANGE AUTHORIZED: hw/ip/pwm/rtl/pwm_core.sv


Export bug, data being output on incorrect rows

Might be due to something with a line break.

Looking into this, I think you're correct in guessing that the export shifted rows due to the creation of a new sheet during the export. I've changed this to collect the sheet IDs at the beginning of the export, and only work with these which should resolve this issue.


"version `CXXABI_1.3.8' not found" on Amazon Linux with Node 12

After upgrading to Node 12 on my Amazon Linux server, I get this error when trying to load lzma-native:
$ node
Welcome to Node.js v12.18.2.
Type ".help" for more information.
> require('lzma-native')
Uncaught:
Error: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/ec2-user/test/nodejs-doctrine-test/node_modules/lzma-native/binding-v6.0.1-n-api-linux-x64/lzma_native.node)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1188:18)
    at Module.load (internal/modules/cjs/loader.js:986:32)
    at Function.Module._load (internal/modules/cjs/loader.js:879:14)
    at Module.require (internal/modules/cjs/loader.js:1026:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at /home/ec2-user/test/nodejs-doctrine-test/node_modules/lzma-native/index.js:13:14
>

It seems that this is because the binary package is built with a more recent C++ ABI than the one with Amazon Linux:
$ strings /usr/lib64/libstdc++.so.6 |grep CXXABI
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_TM_1

I am using lzma-native 6.0.1, Node.js v12.18.2 on Amazon Linux AMI 2018.03.
It is possible to temporarily work around the issue by running npm rebuild lzma-native --build-from-source after npm install in my build process but of course this is kind of a hack.
Is there any better way to fix this for me? A way to fix it on your side?

Hm yeah, not sure what to do about this – the prebuilt binaries are built on Travis CI, so that’s where the ABI requirement comes from. I’m not sure if there’s a way to request a lower built target value? Other than that, building from source when installing seems like a fair workaround …

Thanks for you fast answer! Do you know if there a way to specify "permanently" that I always want to install lzma-native from source? like in package.json/npmrc or anything I could checkout in my own project repo?

@raphaelchampeimont Sorry, I’m not aware of anything like that … :/

@raphaelchampeimont I've had success with this same issue by specifying --build-from-source=lzma-native when running npm install or npm rebuild to have it recompile (and more importantly, re-link) lzma using node-gyp against my current toolchain and libstdc++ library version. You'll need the prereqs outline on node-gyp's site though: https://github.com/nodejs/node-gyp

@raphaelchampeimont I've had success with this same issue by specifying --build-from-source=lzma-native when running npm install or npm rebuild to have it recompile (and more importantly, re-link) lzma using node-gyp against my current toolchain and libstdc++ library version. You'll need the prereqs outline on node-gyp's site though: https://github.com/nodejs/node-gyp


Bot Authentication Graph throws exception

Github issues for Bot Authentication MSGraph
Sample information

Sample type: \samples\csharp_dotnetcore\24.bot-authentication-msgraph
Sample language: dotnetcore
Sample name: <24.bot-authentication-msgraph>

Describe the bug
Objective is to deploy a bot able to send an OAuth Card. I followed the Add authentication to a bot tutorial along with the directions in the Readme. I get an ""Operation returned an invalid status code 'Unauthorized'"" exception in AdapterWithErrorHandler.OnTurnError when testing with the Bot Framework Emulator (connected to bot with the AppId and password - same in appsettings.json)
To Reproduce
Steps to reproduce the behavior:

Follow Add authentication to a bot tutorial
Add the AAD Client Id and Password to appsettings.json and launch the Bot via Visual Studio
Connect to Bot with the Bot Framework Emulator with the above Client Id and Password
Break point at AdapterWithErrorHandler Line 19

Expected behavior
An OAuth Card should be displayed.
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
The purpose of this is to deploy a Bot sending an OAuth Card to test with the Windows Voice Assistant Client. I want to modify the client to render an OAuth Card
[bug]

@splumber, I tried the sample 24.bot-authentication-msgraph and it works just fine for me.

You need to add the Microsoft bot app ID and password along with the connectionName in the appsettings.json, not the client ID and password. The client ID and secret which you generate in the 'Create an AAD app' step is used to register your Azure AD application with your bot. Also, did you test your connection to see if it was working?

Thank you for replying, I tested the Connection and it worked
Yes, I entered the MicrosoftAppId, MicrosoftAppPassword, and ConnectionName to both appsettings.json and in the BotFramework Emulator.
I'll retry all of the steps and will follow up with results


[CP STAGING] fix crash when saving a reason during hold request flow

Details

Fixed Issues
$ https://github.com/Expensify/App/issues/36831
PROPOSAL: https://github.com/Expensify/App/issues/36831#issuecomment-1953545524
Tests
Same as QA step

[ ] Verify that no errors appear in the JS console

Offline tests
Same as QA step
QA Steps

Login any account
Create a manual request from any user
Go to request details page
Click 3-dot menu > Hold request
Add a reason and save it
Verify that app doesn't crash and no console error shows

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else

[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)

[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/97676131/b34bf50a-12ce-441f-87b7-d72c5b2c156d

Android: mWeb Chrome
https://github.com/Expensify/App/assets/97676131/d59a32e2-bb81-4f59-9529-799d3a7757d9

iOS: Native
https://github.com/Expensify/App/assets/97676131/d6d4adcf-a70f-4e19-b5e4-ba6f4b1ebee6

iOS: mWeb Safari
https://github.com/Expensify/App/assets/97676131/609ccf24-4215-4150-a1ff-f9390b987913

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/97676131/438e1f05-fad0-41fc-9894-156478646eb3

MacOS: Desktop
https://github.com/Expensify/App/assets/97676131/698db11f-dd7f-48d3-8b88-75b52ac2e67f

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to production by https://github.com/puneetlath in version: 1.4.43-20 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


imagemin-cli freeze on win7x64

Try with git-bash and cygwin

Don't use Windows 7. https://support.microsoft.com/en-us/lifecycle

Hmm, not a great answer. Win7 support ends January 14, 2020.
For others: gulp-imagemin works fine, use it.

gulp-imagemin uses this module though.


Heartbeats

Heartbeat ping to some set webserver to tell if agent is keeping their relay up.

If token goes invalid just send a notification if no new message has been seen in an hour to the system webhook with @here tbh.


Wrong user is written to audit log

Found that sometimes a wrong user is written to audit log when there is a high concurrency in access to server. Some investigations shown that the reason of it is AuditlogMiddleware imperfections, specifically a multiple signal receiver setup for LogEntry pre-save (https://github.com/jjkester/django-auditlog/blob/master/src/auditlog/middleware.py#L46)
A possible chain of events to reproduce the bug:

User A does a request to the server, AuditlogMiddleware attaches a signal receiver to LogEntry,  with signal_duidspecific to thread that prcesses the request of the user A.
User B does a request to the server, AuditlogMiddleware also attaches a signal receiver to LogEntry, with signal_duidspecific to thread that prcesses the request of the user B
Thread that processes request of user B does a write to LogEntry table, so pre-save signal for LogEntry is triggered.
Because two signal handlers are attached to LogEntry pre-save at the moment (for user A and B), they are triggered sequentially, with the first one specific for user A, so user A is written to actor field of LogEntry record.
After, signal handler specific to user B is triggered, but because of overwrite protection (https://github.com/jjkester/django-auditlog/blob/master/src/auditlog/middleware.py#L77) the user isn't written to the LogEntry record, leaving incorrect user A in a record for user B
After the request of user B is processed, its signal handler is removed from LogEntry pre-save signal handlers by its specific signal_duid, leaving the only signal handler for user A, so any LogEntry writes for the user will write correct actor.
At the end of user A request, its signal handler for LogEntry is removed by its signal_duid

There are also some thoughts about how to fix it: when currying set_actor to request user (https://github.com/jjkester/django-auditlog/blob/master/src/auditlog/middleware.py#L45), we can also curry signal_duid stored in threading.local, and when actually doing an actor write in set_actor, check if passed signal_duid matches the current value in threading.local. Match would mean that we execute signal handler of corresponding thread, so write the actor value, and avoid any writes on mismatch - because its a signal handler for different thread/user.

Thanks for your issue report! This obviously has to be fixed. Since I'm low on time and this project doesn't have a high priority I encourage you to implement your suggestion yourself and submit a pull request. Either way, your input is appreciated.

This was a problem for us too so I've created a pull request for an implementation of @eugene-daragan-codex s' suggestion

For reference, fixed in #74.

It has taken some time, sadly, but 0.4.1 is out and can be downloaded through pypi or from the 'Releases' part of this web site.


Add end-to-end encryption for push notifications

Closes #6954.

@gnprice @timabbott this is ready for a review.

I merged a few of the preparatory commits.

@hashirsarwar can you also respond individually to the comments I posted?  It wasn't clear to me whether your last push is expected to address them.

@hashirsarwar can you also respond individually to the comments I posted? It wasn't clear to me whether your last push is expected to address them.

The last push only addressed one of the comments. I am working on the rest.

Closing in favor of the more current https://github.com/zulip/zulip/pull/26262 for this issue.


Including byte order mark

Including byte order mark before create the CSV Data for export the encoding correctly

What is this PR solving ?

I noticed that the problem was already fixed!


fix(valuecard): fix to support precision 1 for all cards

Summary

small fixes to truncation in xsmallwide cards and precision in xsmall cards
small fix to the HR color to match that of the structured list
added extra testcases to cover the two possible layouts of xsmallwide cards

Acceptance Test (how to verify the PR)

Verify the Value cards

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.0.0-beta.9 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.64.0 :tada:
The release is available on npm package (@release-1.x dist-tag)
Your semantic-release bot :package::rocket:


Provide option to not include joe made this header

The joe made this header is annoying and I have to remove it from the top of all my files. I don't want this to be checked into my repositories. There should be an option to not have it included.

#brandingbro
There won't be an option for this, as it doesn't add any utility.
PS: Don't remove the header. Helps me in tracking usage stats without invading privacy. :bow:


Split server into CentralChain, and ChainApi

CentralChain is a centralised radicle chain (what we have now, but will be replaced by a decentralised version)
ChainApi is a server that connects to a chain and provides a nice API to interact with it, including viewing input, viewing outputs, submitting expressions, etc.

@jkarni @geigerzaehler Done? No longer relevant?

I think this is no longer relevant.


Pin the version of kustomize, v4 is not supported.

There are issues installing Kubeflow with version v4.
Note:
https://github.com/kubeflow/website/issues/2570
https://github.com/kubeflow/kubeflow/issues/5755

/ok-to-test

/assign @joeliedtke

Can a @kubeflow/wg-manifests-leads please review, this is a simple change.

Seems like https://github.com/kubeflow/website/pull/2542 is an alternative to this

The contract of the manifests wg is to use version 3.2.0, as in previous versions:
https://github.com/kubeflow/manifests/tree/v1.3.0-rc.0#readme
This is a link to the 3.2.0 version:
https://github.com/kubernetes-sigs/kustomize/releases/tag/v3.2.0
Can we change the PR to reflect that? Since those are the GKE distribution docs, I believe the appropriate owners (cc @Bobgy @zijianjoy) should give the final wording they want to adopt.

Added reference to the manifest repo in case it updates the source of truth is available.
Also defaulted to install 3.2.0 from https://github.com/kubeflow/website/pull/2542.

Thank you!
/LGTM
/Approve
Because this is GCP specific


Hide / disable parent container when dragging

Hello, I'm trying to have this behaviour using react-dnd
The problem is for hiding/disabling the whole menu.
I've tried not rendering but html5 dnd need a node to drag
I've tried opacity 0 but then I can't drop on the left part because the menu is still here on top.
I then tried height 0 as in the customdraglayer example (even if the comment says it's there for IE6) but if I drop on the exact same spot I start dragging, onDrop is not called (I supposed it's drop on the dragsource which is on top)
Tried Negative z-index but I can't see my custom drag layer
Any idea ?
ps : the discord channel need-help is too broad and a message get lost in 10mins

I have the same problem. @ioRekz do you found the way to solve it? Thanks !

I was experiencing similar issue, I needed to drag-n-drop element from a popup block and hide the popup while dragging. For some reason any operation on popup (like changing z-index or positioning) terminated the drag. The only working solution I found (quite a hacky one, I'm afraid) was to manually apply css-translate after a timeout in parent component method, which is passed to dragged element via props and called from beginDrag. So dragging animation starts before you move container.
onBeginDrag() {
    setTimeout(() => {
       this.setState({ movePopupAway: true });
    }, 1);
}

And in render() method something like:
if (this.state.movePopupAway) {
     popupStyle.transform = 'translateX(9999px)';
}


Pinch-to-Zoom on mobile triggers next image load

Hello. First of all, thank you for this great lib!
I'm enctountering an issue on mobile devices (tested on safari - iOS). Whenever I perform Pinch-to-zoom gesture, to zoom into image, Gallery component automatically triggers next image loading.
Is there something I can do to prevent this behaviour?
Thanks.

Hi @sebqq, thank you very much for using this small library.

I'm enctountering an issue on mobile devices (tested on safari - iOS). Whenever I perform Pinch-to-zoom gesture, to zoom into image, Gallery component automatically triggers next image loading.

Interesting, I will test it and see what is happening ok?


New button widget "Open In Browser"

Contains
Add new button widget with predefined action opening default web browser.
How to test
Add the button widget to some existing screen and set up a link.
Check that default web browser open the link.
e.g. tryFind("openInBrowser", UIButtonWebBrowser.class).ifPresent( b -> b.setLink("https://github.com"));
Outstanding before merging

[x] Check on Windows.
[x] Check on Mac
[x] Check on *nix

Hooray Jenkins reported success with all tests good!

Nice work :-)
This widget is somewhat special and opens up a potentially malicious way modules can trick a user into opening a specific URL in a browser. I wonder if there'd be an easy way for us to include a disclaimer popup before the browser open request is honored?
Potentially with the option to ignore further confirmations for a given module or even all uses of the widget, until the config file is edited anyway. There should be similar logic in place for the first time a user opens the host game or join game option to pick a player name.

Hm, that makes sense. So, I added confirmation popup and I'd like to propose next code snippet.
UIButtonWebBrowser buttonWebBrowser = find("yourButtonId", UIButtonWebBrowser.class);
        if (buttonWebBrowser != null) {
            buttonWebBrowser.setLink("https://github.com");
            buttonWebBrowser.setConfirmationHandler(() -> {
                TwoButtonPopup confirmationPopup = getManager().pushScreen(TwoButtonPopup.ASSET_URI, TwoButtonPopup.class);
                confirmationPopup.setMessage(translationSystem.translate("${engine:menu#button-web-browser-confirmation-title}"), translationSystem.translate("${engine:menu#button-web-browser-confirmation-message}") + "\n" + buttonWebBrowser.getLink());
                confirmationPopup.setLeftButton(translationSystem.translate("${engine:menu#dialog-yes}"), buttonWebBrowser::doConfirmation);
                confirmationPopup.setRightButton(translationSystem.translate("${engine:menu#dialog-no}"), () -> {
                });
            });
        }

Should get something like this:

Hooray Jenkins reported success with all tests good!

I think the problem is that the module -- caller of find("yourButtonId", UIButtonWebBrowser.class); -- cannot be the one to provide confirmation since the module is untrusted.
It's not likely to be an issue when the engine in the caller, but we have to plan for modules as well as engine use.
What Cervator is suggesting is that the confirmation take place inside of the widget code.
Maybe the widget accesses an Environment variable Map<Url, Boolean> isUrlConfirmedMap to determine if this particular URL has already been confirmed.  If not, it puts up a display panel.....
It's going to be a bit tricky no matter how it's done.

I can second mkienenb and say that I'd like to see all the code regarding confirmation within the widget. I don't think that perhaps an environment variable is needed. Simply encapsulate the confirmed boolean to wholly inside the widget.
One other thing is that I'd like to see a popup if the opening failed.

Tested on Win10 - works great! :-)
Yep the confirmation needs to be done within the widget, a module should only configure the button and supply the link.
A checkbox could be added to the button that goes "[ ] Accept all future links from [root url]?" - save whitelisted URLs to a section in config.cfg somewhere probably. But that could be a future enhancement. Main thing needed to merge this is just forcing the confirmation :-)

Hi All, I move the logic within the widget, please take a look.
Also, attached the gist: https://gist.github.com/ar0ne/4138988b167e0ba661071d2118424335

Hooray Jenkins reported success with all tests good!


lb: backends: 清理后端虚机已删除的backend

这个 PR 实现什么功能/修复什么问题:
lb: backends: 清理后端虚机已删除的backend
pkg: atexit: 增加PRIO_LOG_OTHER
lb: backends: 仅针对guest类型后端查询vpcId

是否需要 backport 到之前的 release 分支:

release/2.10.0

/cc @wanyaoqi
/cc @swordqiu

Codecov Report

Merging #1223 into master will increase coverage by 0.02%.
The diff coverage is 24%.

@@            Coverage Diff            @@
##           master   #1223      +/-   ##
=========================================
+ Coverage    7.88%   7.91%   +0.02%
=========================================
  Files         369     370       +1
  Lines       57869   57934      +65
=========================================
+ Hits         4563    4583      +20
- Misses      52906   52951      +45
  Partials      400     400

Flag
Coverage Δ

#aFlag
7.91% <24%> (+0.02%)
:arrow_up:

Impacted Files
Coverage Δ

pkg/compute/models/loadbalancerbackends.go
2.46% <0%> (-0.05%)
:arrow_down:

pkg/compute/models/loadbalancerbackends_stales.go
30.5% <30.5%> (ø)

pkg/appsrv/response.go
69.23% <0%> (+3.07%)
:arrow_up:

Continue to review full report at Codecov.

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

/lgtm

/lgtm
/approve


ISPN-11985 Enforce  for protobuf payloads in indexe…

…d caches

turn into a fatal exception whatever version 11 allowed leniently and just logged a warning
indexed cache startup with undeclared types is prevented

https://issues.redhat.com/browse/ISPN-11985

Waiting CI

The test org.infinispan.rest.resources.ProtobufResourceTest.addAndGetListOrderedByName[security=true, protocol=HTTP_11, ssl=false] failed 2x in this PR, is it related?

ProtobufResourceTest.addAndGetListOrderedByName fails on master also. I tried a clean local run and that's what I see.


GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

https://ci-beam.apache.org/job/beam_PreCommit_Python_Commit/19195 has no flakes in test_display_data

Run Python PreCommit

Run Python PreCommit

Run Python PreCommit

Run Python PreCommit


Try to enable 3.8 and 3.9 python for cc7

Builds are broken for cc7 and almalinux for python < 3.10:
74.19 ImportError: /usr/local/lib/python3.9/site-packages/libmambapy/../../../libmamba.so.2: undefined symbol: solver_ruleinfo2str, version SOLV_1.0


chore: bump registry 7.2.1 -> 7.2.2

Refs https://github.com/prax-wallet/registry/pull/35

Discussed offline, will take this one over to get it into the release


Cosmetic changes for the roboticist

About the PR

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

add: Added new items for roboticist.
tweak: Changed robodrobe sprite and items in it.

i dont love these they look a bit too syndi moded silly boated boy coded

sprites look very out of place

also please dont undo my vend polishes make the vending machine look shinier like this

this looks like syndicate equipment.
no thanks


generate_queries.sh fails on a query type

generate_queries.sh fails when building queries for :
format : crate , query that fails building : high-cpu-all
format : mongo ,  query that fails building : high-cpu-all
I get the following error message :
panic: number of hosts cannot be < 1; got 0
Steps to reproduce :
Run (you must export $GOPATH and replace BULK_DATA_DIR with a folder on your system)
crate bug :
FORMATS='crate' SCALE=4000 SEED=123 TS_START='2021-02-28T00:00:00Z' TS_END='2021-03-01T00:00:01Z' QUERIES=1000 QUERY_TYPES='high-cpu-all' BULK_DATA_DIR='/data/research/benchmark-ts-databases/bulk_queries/small_data_queries/crate' $GOPATH/src/github.com/timescale/tsbs/scripts/generate_queries.sh
mongo bug :
FORMATS='mongo' SCALE=4000 SEED=123 TS_START='2021-02-28T00:00:00Z' TS_END='2021-03-01T00:00:01Z' QUERIES=1000 QUERY_TYPES='high-cpu-all'  BULK_DATA_DIR='/data/research/benchmark-ts-databases/bulk_queries/small_data_queries/mongo' $GOPATH/src/github.com/timescale/tsbs/scripts/generate_queries.sh
Detailed error message :
panic: number of hosts cannot be < 1; got 0

goroutine 1 [running]:
github.com/timescale/tsbs/cmd/tsbs_generate_queries/databases/mongo.panicIfErr(...)
        /localhome/home/****/go_projects/src/github.com/timescale/tsbs/cmd/tsbs_generate_queries/databases/mongo/devops.go:17
github.com/timescale/tsbs/cmd/tsbs_generate_queries/databases/mongo.(*Devops).HighCPUForHosts(0xc00079a010, 0x791b00, 0xc0007a6000, 0x0)
        /localhome/home/****/go_projects/src/github.com/timescale/tsbs/cmd/tsbs_generate_queries/databases/mongo/devops.go:324 +0xee5
github.com/timescale/tsbs/cmd/tsbs_generate_queries/uses/devops.(*HighCPU).Fill(0xc00079e000, 0x791b00, 0xc0007a6000, 0x416c6f, 0x7f1977530f00)
        /localhome/home/****/go_projects/src/github.com/timescale/tsbs/cmd/tsbs_generate_queries/uses/devops/high_cpu.go:31 +0x84
github.com/timescale/tsbs/internal/inputs.(*QueryGenerator).runQueryGeneration(0xc000161f08, 0x78aa20, 0xc00079a010, 0x78ab40, 0xc00079e000, 0x92ae40, 0x0, 0x0)
        /localhome/home/****/go_projects/src/github.com/timescale/tsbs/internal/inputs/generator_queries.go:221 +0x1dc
github.com/timescale/tsbs/internal/inputs.(*QueryGenerator).Generate(0xc000161f08, 0x78d720, 0x92ae40, 0x0, 0x0)
        /localhome/home/****/go_projects/src/github.com/timescale/tsbs/internal/inputs/generator_queries.go:92 +0x174
main.main()
        /localhome/home/****/go_projects/src/github.com/timescale/tsbs/cmd/tsbs_generate_queries/main.go:94 +0xae

@Hadrien-Cornier thanks for reporting. I created #165 to fix it. Would you mind testing it locally?

done, posted the answer on #165


Automate periodic updates

Currently one has to run cargo run -- generate and push the changes or propose them in a PR.
Even though the system calls don't change that frequently, it still would be nice to automate this in a Dependabot-like style by creating PRs automatically and updating/re-opening them if the change was not merged yet, but the new updates have already arrived.

Implemented in https://github.com/edigaryev/awesome-system-calls/commit/95232f8787d4175797fd28a71f07027361578802.


github_detail: Limit bot to 5 requests per message.

It is theoretically possible to run the bot like:
@botname #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11 #12 #13 #14 #15 #16 #17 #18 #19 #20 #21 #22 #23 #24 #25 #26 #27 #28 #29 #30 #31 #32 #33 #34 #35 #36 #37 #38 #39 #40 #41 #42 #43 #44 #45 #46 #47 #48 #49 #50

but this operation would take a lot of time to complete, and is not a real world scenario. Thus, we should rate limit this bot to 5 issues or PRs per message.

@zulipbot label "bite size"

We should probably do this on a bot-by-bot basis, since the amount of work that a bot has to do with denial-of-service messages largely depends on the nature of the bot.  A good use case is the giphy bot.

So for the github_detail bot, shall I limit the bot to 5 requests per message? Is there any other way than to randomly limit the number of messages for different bots?

5 requests is a good number for github_detail

Ok so I will work on this now for github_detail.
@zulipbot claim