[WIP][api-minor] Add support for PageLabels in the API

This PR adds support for PageLabels in the API.
Please note that it's still very much a WIP patch, in order to gauge the interest for adding the feature.
TODO:

[ ] Decide if we actually want this feature in PDF.js.
[ ] Hook this functionality into the viewer.
[ ] Add unit-tests.
[ ] Improve the code (I hacked this together quickly while having a slight fever, so improvements should be possible :)

Re: https://github.com/mozilla/pdf.js/issues/3165 and https://bugzilla.mozilla.org/show_bug.cgi?id=793632.

/botio-linux preview

I definitely think that this would be a nice feature to include in PDF.js, especially since it is used in practice and test cases are available. I usually see this kind of page numbering in e-books.
With regards to hooking this into the viewer, we must look into how other readers handle this in their page number box, i.e., if a user enters page 1, will he arrive at the page with page label 1 or at the first page of the document?
I have added some comments to improve the code, but overall it's already looking good. I like the minimal changes required to re-use the NameTree structure for the NumberTree structure.

/botio-linux preview

There has been some discussion about this on IRC, starting here: http://logs.glob.uno/?c=mozilla%23pdfjs#c43831
The API for this appears fine, but we need to carefully determine how to hook this into the viewer. Adobe's behavior can be confusing, so we need to implement this in a way that makes more sense. Let's think about ideas to realize this.

I'm thinking there is mistake at "Uppercase letters (A to Z for the first 26 pages, AA to ZZ for the next 26, and so on) "  at http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/PDF32000_2008.pdf#page=383&zoom=100,-178,800
I'm thinking they meant "... AA to ZZ for the next 26*26 (676)... " -- it goes as AA, AB, ... AZ, BA, ... ZZ

I'm thinking they meant "... AA to ZZ for the next 26*26 (676)... " -- it goes as AA, AB, ... AZ, BA, ... ZZ

You might think so, but that's not how it's implemented in Adobe Reader, which seems to follow the specification to the letter (sorry, couldn't resist the pun :-).
I've modified a long document (the PDF spec) to use that kind of page labels, please see https://www.dropbox.com/s/9z7e37sydrrxvb0/PDF_spec.pdf?dl=1 (but beware of the file size, I wasn't able to compress it well enough).

Oh, wow! That's so .... unorthodox.

/botio unittest

Given that the API/core parts of this are pretty self-contained, and have unit-tests, could we consider landing this as-is and then figure out how/if we should wire this into the default viewer in a follow-up?
In my opinion, having the ability to at least fetch pageLabels in the API seems like a good thing regardless of what we decide to do for the default viewer.

The test commit was removed, the following code can be used in the console to fetch the pageLabels:
PDFViewerApplication.pdfDocument.getPageLabels().then(function (labels) {
  console.log(labels);
});

/botio unittest
/botio-windows preview

/botio-windows preview

Could you rebase this patch and fix the comment above?

/botio-linux preview

/botio test

/botio-linux preview

/botio test

This API looks really good! I'll file a follow-up issue for deciding if/how we want to hook this into the viewer.


Assertion error less verbose in latest version

What is your Test Scenario?
Any test scenario.
What is the Current behavior?
Using the latest version of Testcafé, when an assertion fails, the stack trace is not present anymore.
I try the same test with the 1.2.0 version and I've got the stack trace (see the screenshots).
What is the Expected behavior?
The stack trace should display in the error message
What is your web application and your TestCafe test code?

Execute this command...
See the error...

Your Environment details:

testcafe version:                   1.3.3
node.js version:                    10.15.3
command-line arguments:
browser name and version:
platform and version:
other:

@HugoDel
Hello,
I cannot reproduce the "stack trace is not present anymore" issue.
My Environment details:

testcafe version: 1.3.3
node.js version: 10.15.3
command-line arguments: testcafe chrome test.js -S -s screenshots --debug-on-fail

test.js:
fixture('Test fixture')

test('Test verbose error', async t => {
    await t.navigateTo('http://google.fr')
    await t.expect(1%2).eql(5)
})

Result:
d:\tst\i4117>node -v
v10.15.3

d:\tst\i4117>testcafe -v
1.3.3

d:\tst\i4117>testcafe chrome test.js -S -s screenshots --debug-on-fail
 Running tests in:
 - Chrome 76.0.3809 / Windows 10.0.0

 Test fixture

----
Chrome 76.0.3809 / Windows 10.0.0
DEBUGGER PAUSE ON FAILED TEST:
AssertionError: expected 1 to deeply equal 5

Browser: Chrome 76.0.3809 / Windows 10.0.0
Screenshot: d:\tst\i4117\screenshots\2019-08-07_11-19-16\test-1\Chrome_76.0.3809_Windows_10.0.0\errors\1.png

1 |fixture('Test fixture')
2 |
3 |test('Test verbose error', async t => {
4 |    await t.navigateTo('http://google.fr')
> 5 |    await t.expect(1%2).eql(5)
6 |})
7 |

at eql (d:\tst\i4117\test.js:5:25)
----

Is there any difference in your command-line arguments that cause the issue?

Not really, I use the most simple command: tetscafe chrome mytest.ts

@HugoDel
I tried to run the *.ts test without any flags and it was passed with the correct stack trace:

Could you please send us your screencast with the following steps:

Run node -v.
Run testcafe -v.
Run your testcafe command.
Show the report without the correct stack trace.


BaseExecutor should not send TaskStateChangedEvent after stop task

What is the purpose of the change
fix #247
Brief change log
(for example:)

BaseExecutor should not send TaskStateChangedEvent after stop task

Verifying this change
(Please pick either of the following options)
This change is already covered by existing tests, such as (please describe tests).

Codecov Report

Merging #249 (10870fb) into master (78720d7) will increase coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #249      +/-   ##
==========================================
+ Coverage   66.79%   66.81%   +0.02%
==========================================
  Files         206      206
  Lines       15505    15505
  Branches     2329     2329
==========================================
+ Hits        10356    10360       +4
+ Misses       4579     4577       -2
+ Partials      570      568       -2

Impacted Files
Coverage Δ

ai_flow/store/sqlalchemy_store.py
75.39% <0.00%> (+0.18%)
:arrow_up:

..._service/notification_service/high_availability.py
85.41% <0.00%> (+1.38%)
: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 78720d7...10870fb. Read the comment docs.


Widen HeaderNames field to show what is allowed.

This allows me to see "Access-Control-Allow-Headers" instead of "Access-Control-Allow".
When I set 3 different headers that all start with "Access-Control-Allow..." I can't see where they differ unless I widen the field.

Thanks for your contribution (with a huge delay, sorry for that!)


Phase 3: UI Bugs

Specially mobile Safari which is a PITA.

[21:auth.js,lfi.js,rce.js:Dev:Android:Chrome,iOS:Safari] In vertical orientation code blocks do not fit on the screen properly and you cannot scroll left and right to view the whole block.

[22:All:Dev:Android:Chrome,iOS:Safari] Faux browser buttons are misaligned above URL drop down.

[24:All:Dev:Android:Chrome,iOS:Safari] When navigating between challenges, focus is placed in the middle of the page on faux browser instead of the top. Appears it may focus on first code block on page.

[27:All:Dev:iOS:Safari] Button controls on page are pale and not dark red.

[30:All:Dev:iOS:Safari] After using the back and forward buttons to navigate, the faux browser control is empty. Sometimes it is partially rendered. Happens sometimes happens when choosing Next Challenge.

[31:xss.js:Dev:Android] Chat div element not responsive which causes overflow

[32:All:Dev:Android] data-uri images showing broken links instead of image


Add support for different fonts in the same file

Add support for choosing different font ligatures, than those within the "editor.fontFamily" selected font. For example, I would really like to use Operator Mono letters together with Fira Code ligatures. Atom-editor lets you do this.
A hacky workaround is with the Custom CSS and JS Loader extension. https://medium.com/@zamamohammed/multiple-fonts-alternative-to-operator-mono-in-vscode-7745b52120a0 @mohammedzamakhan
The Custom CSS and JS Loader extension makes vscode think it is corrupted, so I'd really prefer avoiding this hack.
Another custom workaround, which stopped working: https://gist.github.com/Mikeysax/e707e6971d991a7552017b4c00ef6a97
Semi-related: https://github.com/Microsoft/vscode/issues/192
Possibly helpful: https://github.com/tonsky/FiraCode/wiki/VS-Code-Instructions

any progress here? eagerly waiting for this.

I came across this issue after spending some time reading the same Medium post linked above, I as well would like to my Operator Mono font with Fira Code ligatures. The method in the medium post does not seem to work. If I to take a guess it seems like the styles changed with the recent update of vscode 1.14.2. It's a shame that this does not seem to work, hopefully there will be a solution some time soon :)

I use Pragmata Pro, and would love to see ligature support in VS Code for generic fonts that have ligatures, as opposed what seems to be essentially whitelisting fonts that the developers are aware of.
(though I'd probably be satisfied with support for just my particular font/use case, of course...)

Late to the game. I was able to add ligatures using the Killman operator-mono-lig project as mentioned by @sagarrabadiya above, and adding "editor.fontLigatures": true in my settings.json.
Here's my fonts section in VS Code's settings.json:
{
    "editor.fontSize": 18,
    "editor.fontFamily": "Operator Mono Lig, Menlo, Monaco, 'Courier New', monospace, 'Apple Color Emoji'",
    "editor.fontLigatures": true
}

I find this related to my subject, so I request it here. Is it possible to have support for multiple font families in VS Code? I like my comments be in different font family for example.
As mentioned there is an Custom CSS and JS Loader extension, but I don't like it because it seems VS Code complain about using it (with promoting it's corrupted).

Any updates on this, eagerly waiting

This would be so good, and people have been hacking vs code to do this for more than 5 years, i would love if somehow we could implement as an official feature and dont worry about breaking vs code anymore.

And now with GitHub's own Monaspace fonts... Neon for code, radon for comments 💯

Any suggestions where to start from trying to implement this feature? I need it actually for rendering same font but in different sizes at the same file. #200971


The differences between the generated "clean" events and "noisy" events is not as expected

Hi, I wanted to investigate the influence of DVS noise. so I converted the provided sample video (pendulum) to events streams with v2e. I conducted two experiments with all the arguments same except the ones controlling the noise. The commands are as follows.

I expected this one generated clean events without noise.

python v2e.py -i input/pendulum_trim.mp4  --overwrite  --auto_timestamp_resolution=False --timestamp_resolution=0.001  --dvs_exposure duration 0.005 --output_width=346 --output_height=260   --output_folder=output/pendulum_trim_wo_noise  --pos_thres=.2 --neg_thres=.2 --sigma_thres=0 --leak_rate_hz=0 --shot_noise_rate_hz=0 --cutoff_hz=0 --dvs_aedat2 pendulum.aedat   --dvs_params=None  --no_preview --ignore-gooey

I intended to generate noisy events.

python v2e.py -i input/pendulum_trim.mp4  --overwrite  --auto_timestamp_resolution=False --timestamp_resolution=0.001  --dvs_exposure duration 0.005 --output_width=346 --output_height=260   --output_folder=output/pendulum_trim_noise1  --pos_thres=.2 --neg_thres=.2 --sigma_thres=0 --leak_rate_hz=0.01 --shot_noise_rate_hz=0.001 --cutoff_hz=0 --dvs_aedat2 pendulum.aedat   --dvs_params=None  --no_preview --ignore-gooey

Since the only difference of two commands is the --leak_rate_hz and --shot_noise_rate_hz parameter, I supposed that the generated stream of these two commands have many "events" in comman and the extra data generated by the 2nd command are all noisy events. However, the results showed that generated data were very much different and the event item generated with the 1st command can hardly find the counterpart in the 2ndone.
Can anyone help me to figure out the problem?
The following figure shows part of the generated data. The left column corresponds to the 1st command and the right 2nd.

Been a while since we looked at pendulum data.... thanks for taking a look.
Where is the pendulum_trim.mp4 video? I don't think is is part of the
project. I can only find our original pendulumXXX.avi files. In fact I
don't see any input sample files in v2e anymore, not sure what happened
to them.

Been a while since we looked at pendulum data.... thanks for taking a look. Where is the pendulum_trim.mp4 video? I don't think is is part of the project. I can only find our original pendulumXXX.avi files. In fact I don't see any input sample files in v2e anymore, not sure what happened to them.

Thank you. I downloaded the pendulum.avi from the Google drive this repository shares. I clipped part of the video which is named pendulum_trim.mp4.

BTW, including leak events will definitely change the non-noise events
as well, because the leak affects the internal state of the Lmem of the
pixel. Therefore the non-leak events will be affected too. See the model
figure


Edge case in checking server interface MTU

I'm submitting a ...

bug report

Traffic Control components affected ...

Traffic Ops

Current behavior:
If you create a server having an interface with an MTU of exactly 1280, you get back a 500 Internal Server Error response. This is because the validation in the API checks for MTU >= 1280, but the database check is strictly MTU > 1280 (or NULL).
Expected behavior:
The API and database constraints should be consistent - I think the intended behavior is for 1280 to be a legal value.
Minimal reproduction of the problem with instructions:
Create a server having an interface with an MTU of exactly 1280.

I can take this one.

I can take this one.


npm ERR! code<PHONE_NUMBER>

OS: Windows 11
Node: v18.12.1
npm install sqlanwhere results in:

This is after I've already (https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#compiling-native-addon-modules):

Installed node-gyp both globally and locally: npm install -g node-gyp and npm install node-gyp
Installed Visual Studio 2017 Community (using the "Desktop development with C++" workload)
Installed Python 2.7 and ran npm config set python python2.7
Ran npm config set msvs_version 2017

Any assistance here would be greatly appreciated

I ran into similar issues. The problem is that driver currently supports node up to version 12.x,  and according to the provided picture you are running node version 18.x.
There is work being done to update the driver to newer versions of node (mainly 14 and 16). We will have to wait a little longer.


Use relative refs

Bug fix
Fixed bug
The json schemas cannot be used to generate code because they use absolute refs pointing to a non-existent url.

Fix applied
Use relative refs and rename 2D Location to Location 2D.

If your pull request is a bug fix, delete this line and all the below lines.
If your pull request is a feature implementation, delete this line and all the above lines.

What I did in the schema validation tool is stash all the schemas into the validator options based on their URL IDs.
With this change, the check_samples test no longer works because it is looking for the schemas relative to the URI of their IDs. E.g. I get this error:
Errors in ../rmf_api_msgs/samples/task_log/multi_dropoff_delivery.json:
 -- error sending request for url (https://open-rmf.org/rmf_api_msgs/task_log/log_entry.schema.json): operation timed out

Maybe we should just go ahead and point their IDs at the raw GitHub files (e.g. https://raw.githubusercontent.com/open-rmf/rmf_api_msgs/main/rmf_api_msgs/schemas/robot_state.schema.json for robot_state.schema.json). I think at that point it won't matter whether we use absolute or relative IDs (but the relative would certainly be cleaner).

I think we still need relative urls in order to get reproducible builds, unless we change the structure of this repo to include all previous versions, and freeze any schemas committed on the main branch so that they can never be changed.

I'm okay with relative paths, as long as we can get the sample validator tool to pass. I'm also okay with making changes to how we're configuring the sample validator tool.


Feature request: stretched grid file attributes and run-time error checking

The MAPL stretched grid capability is now available for use by the general public in GCHP and we are starting to receive feedback. This week a user asked a question about the model not crashing when using a restart on the wrong grid. The grid size was correct but the restart was not generated using the same grid stretching as the simulation. The question was would this output be scientifically valid. The answer was no, there would be a silent bug.
To avoid this problem there could be (1) stretched grid information (target lat, lon, stretch factor) stored in the checkpoint file, and (2) grid validation of the restart file upon simulation start beyond just size. Having this information in the checkpoint files for easy referencing would help users stay organized and avoid mistakes. Having this information in History files would also be beneficial for the same reasons.
Pinging @LiamBindle, @bena-nasa, @atrayano, @tclune, @sdeastham for discussion.

I think this issue came up previously.  Certainly such errors should be trapped, but there might be reasons that this is nontrivial.

I'll give this a crack. It should not be that hard other than adding more complexity to what is already way too long of a code in MAPL_IO.F90. Perhaps I could add another function to the grid factories, some sort of check and this might make sense to do a level higher than MAPL_IO so avoid adding more to that, perhaps in the call in MAPL_Generic. Turns out the stretch parameters are already being set in the grid so let me first confirm I can retrieve them when needed.

Just an idea, but an alternative method to enforcing this via attributes would be inspecting one of the corner coordinates of the grid. Specifically, one can calculate the stretch-factor, target lat, and target lon from a single point. If the calculated stretch-factor is 1.0, the target lat is -90, and the target lon is 170 then it is a normal cubed-sphere grid. The advantage would be it doesn't require new attributes.
Sorry for the late comment, but before I didn't realize it was pretty easily doable.

A bit of a kludge, but at first glance it does look like it would be reasonably robust.   I've not looked at the stretch formulation recently, so I don't know how easily invertible it is.   Or do we just need to check that a few points are identical in which case the stretch parameters are identical.     In theory we need to be a bit careful as there should be some degeneracies, but I doubt those are an issue in practical cases.

I've not quite thought it through, but could you use the fact that you have multiple workers to make this non-degenerate? If you always have >= 6 workers so that there is always one worker whose [1,1] grid cell is at a cube corner, I think that if you have every worker check its corner then you'll always check all 6 corners (at minimum) and fully locate the grid?

The stretching procedure is

apply schmidt transform [can be solved for the stretch-factor]
rotate about (0,1,0)  [reversible]
rotate about (0,0,1)  [reversible]

so I think it's doable. The rotations can be determined by inspecting the center of face 6; the center of face 6 is well-defined (south pole) for the GMAO/ESMF cubed-sphere so for any grid we can figure out how much it was rotated. Once we know how much the grid was rotated we can apply the reverse rotations to a single point and then plug it in to the Schmidt transform solved for the stretch-factor.

Here's a proof-of-concept for getting the stretching parameters according to the coordinates of two points (center of face 6 and the coordinate of some grid-box on face 6): get_stretching_params_demo.zip. Btw, this POC doesn't handle the special case where the center of face 6 is at one of the poles, but it could be added.

ok - thanks.  We'll look into it.   Note that even determining on any given process, whether or not it owns the points in question is a bit nontrivial.    And presumably we'll allow some numerical tolerance so that we don't reject things where the numerical inverse is not exact.

I'm still in favor of having stretch information in the file metadata for reference. It seems like basic important information that should be easily accessible with having to do math.

I agree. That way you could ncdump the file to see the grid info which would be useful.
Sorry, to clarify, I just meant to share that the run-time check could be implemented with only the grid's coordinates, in case it's useful.

I've been working on this.  The strategy I'm working on to

Add the stretch coordinates to the restarts when writing.
Modify the cubed-sphere grid factory to when it tests equality it takes these into account
When we read the restart make a factory from the file and check it it matches the application grid

This is a little more involved that I thought it would be for technical reasons.

This has been implemented, turned out to be harder than I thought and unfortunately only works for cubed-sphere (although as you pointed out that is all GCHP uses so you should be good). Note that once you take this, users who are currently running stretched grid simulations and have restarts already will need to add these attributes to the restart so it doesn't fail. Not a problem if you are bootstrapping the restart but if they already have them, then they would need to do this. I'm closing this issue for now.

@lizziel I'm going to close this issue as it is implemented and is in the 2.8.2 release

Thanks @bena-nasa. Heads up on this @LiamBindle since it means the attributes needs to be added to the stretched CS regrid tool you developed.

@lizziel Thanks for the reminder! Do you know what GCHP version this will come in?


log: Do not log to stderr

With this change, debug, info and warning log messages will
not be logged to stderr when debug is enabled, these will just
be sent to syslog.
Only error messages will be logged to stderr.
Signed-off-by: Archana Shinde<EMAIL_ADDRESS>

LGTM

Sure.
lgtm


Pass 'stanc3_bin_url' to downsteam job

Submisison Checklist

[ ] Run tests: ./runCmdStanTests.py src/test
[ ] Declare copyright holder and open-source license: see below

Summary:
Pass additional parameters to downstream job.
Intended Effect:
How to Verify:
Side Effects:
Documentation:
Copyright and Licensing
Please list the copyright holder for the work you are submitting (this will be you or your assignee, such as a university or company): Toptal
By submitting this pull request, the copyright holder is agreeing to license the submitted work under the following licenses:

Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)

I assume https://github.com/stan-dev/performance-tests-cmdstan/pull/46 needs to be finished and merged first, but this LGTM here.


Error code 104: ngrok is not yet ready to start tunnels

Getting a 104 error when trying to run the out of the box example.
Expected behavior
$ node index.js
Getting webhooks…
Removing webhooks…
Removing https//.../webhook
Registering https://.../webhook as a new webhook…
Webhook created.
Subscribed to ... activities.

Actual behavior
$ node index.js
Getting webhooks…
Removing webhooks…
{
  error_code: 104,
  status_code: 503,
  msg: 'ngrok is not yet ready to start tunnels',
  details: {
    err: 'a successful ngrok tunnel session has not yet been established'
  }
}

Steps to reproduce the behavior
index.js
require('dotenv').config()
const { Autohook } = require('twitter-autohook');

async function initWebhook(oauth_token, oauth_token_secret) {
    try {
        const webhook = new Autohook();

        // Removes existing webhooks
        await webhook.removeWebhooks();

        // Listens to incoming activity
        webhook.on("event", event => console.log("Something happened:", event));

        // Starts a server and adds a new webhook
        await webhook.start();

        // Subscribes to a user's activity
        await webhook.subscribe({ oauth_token, oauth_token_secret });
    } catch (e) {
        console.log(e);
    }
}

initWebhook(
    process.env.TWITTER_ACCESS_TOKEN,
    process.env.TWITTER_ACCESS_TOKEN_SECRET
);

.env
TWITTER_CONSUMER_KEY= ...
TWITTER_CONSUMER_SECRET= ...
TWITTER_ACCESS_TOKEN= ...
TWITTER_ACCESS_TOKEN_SECRET= ...
TWITTER_WEBHOOK_ENV=...

package.json
...
  "dependencies": {
    "dotenv": "^8.2.0",
    "twitter": "^1.7.1",
    "twitter-autohook": "^1.4.2"
  }
...

I suspect this is a firewall issue. Running this from a network not behind a firewall I get the following (error):
$ node index.js
Getting webhooks…
Removing webhooks…
Registering https://d65ab0ba.ngrok.io/webhook as a new webhook…
WebhookURIError: Non-200 response code during CRC GET request (i.e. 404, 500, etc). (HTTP status: 400, Twitter code: 214)
    at setWebhook (/Users/jan/Documents/Projects/ultra/node_modules/twitter-autohook/index.js:188:12)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async Autohook.start (/Users/jan/Documents/Projects/ultra/node_modules/twitter-autohook/index.js:289:23)
    at async initWebhook (/Users/jan/Documents/Projects/ultra/autohook.js:16:9) {
  name: 'WebhookURIError',
  code: 214
}

Thanks for clarifying @Rainymood. I'm going to close this out for now. Please feel free to comment if you still need help, so we can reopen.


Doesn't provide a way to disconnect

What is the new or updated feature that you are suggesting?
want to disconnect
Why should this feature be included?
how do i operate

Closing for non activity :)


Detect DV, HDR10, HDR10+

mediainfo and ffprobe are currently unable to detect these. This means that if they are not in the filename, then they are never found.
As soon as a way of detecting these is found, it should be implemented

May have to switch from ``ffprobetomediainfo`.
It seems insanely complex and potentially error-prone using ffrpobe (https://www.radiantmediaplayer.com/blog/how-to-tell-if-my-video-file-is-hdr.html - and this blog post is only about HDR, which is most videos),
Mediainfo comes with a field in the report:
HDR format                               : Dolby Vision, Version 1.0, dvhe.08.06, BL+RPU, HDR10 compatible / SMPTE ST 2094 App 4, Version 1, HDR10+ Profile B compatible

Moving to mediainfo will require a refactor and change of dependencies, but not a major revision upgrade.

Merged to develop


Add NoOperationAsync

Two remarks:

We previously included NoOperationAsync but decided to remove it: https://github.com/polyadic/funcky/issues/385
This function belongs in AsyncFunctional


Annotation of ALT chromosome

When 'Lifting Over' mutation data sometimes data points will be mapped to an _ALT chromosome. These are being dropped during annotation but have not contributed to a significant amount of data lose. However, these should be remapped to non-Alt contigs and reannotated if possible. Changes will need to be made to either the LiftOver pipeline, annotation pipeline or both. See #297

@Mandloi2309 is this still relevant or has been fixed already?


[figshare] private FS files are public on public OSF projects

A public OSF project will make public all linked Figshare files, even if they are private according to Figshare. For example, this is confirmation that my file is private on Figshare:

But when not logged into the OSF and viewing a public project, I can still see that private file listed:

Will be worked on when we refactor the warning system. Thanks.


Package loads assets from unpkg.org and has no way to change that

Please consider including a version of htmx.js or at least making the asset URL configurable.
Currently the plugin loads the Javascript from https://unpkg.com/htmx.org , and the module does not mention that, and also has no way to provide an alternative URL.
Ideally, the distribution would include a copy of htmx.js or a way to configure the location of htmx.js. Loading external assets should be documented.

Hi,
to load a the library from your own directory you can pass the URL into htmx->asset
%= htmx->asset(src => '/assets/js/htmx.min.js')

I have updated the manual to clarify how to load the library.


Fix crash when loading Animation Library after reloading a scene

_update_player() got an early return since Animation Library was added. Disabling of the Animation menu and Pin button needs to be executed before that return.
To reproduce the crash:

Open a scene with an AnimationPlayer and select the AnimationPlayer node.
Close the scene. Notice that the "Animation" menu is not disabled like it was in 3.x.
Reopen the scene. Open "Manage Animations" in the "Animation" menu, load any animation library. This will result in a crash because there is no AnimationPlayer currently associated with the plugin.

Thanks!


No longer write Parquet column metadata after column chunks and in the footer

Which issue does this PR close?

Closes #6115.
Rationale for this change
This metadata is now deprecated.
What changes are included in this PR?
Leaves file_offset as 0 and deprecates setting the field. Also stops writing an extra copy of ColumnMetaData.
Are there any user-facing changes?
Yes, since some metadata is no longer written (but considering it was incorrect, likely it is not widely used). Also deprecates ColumnChunkMetaDataBuilder::set_file_offset().

I merged the 53 dev branch and that seems to have closed this PR -- any chance you can reopen and retarget main?

Can you please retarget this PR to the main branch and we'll get it merged in ?

Does this pr remain un-related patches? I found this is hard to review 🤔

Does this pr remain un-related patches? I found this is hard to review 🤔

Eek, I'm not quite sure what happened...let me try to merge with master and see if that clears things up. Thanks @mapleFU for pointing this out!

Thanks again 🚀


feat(protocol/activitypub): rebuild activitypub engine protocol and provider

Summary
This PR is about implementing the relay subscription solution for ActivityPub data collection. This solution is compatible with most of the common Relay URLs that either end with '/inbox' or without.
Guide: How to Run a Mastodon Worker locally ?

Get a Public URL endpoint forwarding to localhost:{port number} and input it as the mastodon endpoint in config.yaml. You can use a tool like Ngrok to expose a server at a port. e.g., "https://your-subdomain.ngrok.app".

Add a Relay service list and a port as a parameter in config.yaml for local development. Relays aggregate messages from different servers, and the port is where your input endpoint will forward requests. You can add multiple relay URLs in config.yaml or default relay URLs will be used if none are specified:

config.yaml -> component -> federated -> id: mastodon-core -> parameters

ex:

  federated:
    - id: mastodon-core
      network: mastodon
      worker: core
      endpoint: mastodon
      parameters:
        relay_url_list: ["https://relay.fedi.buzz/instance/mastodon.social","https://relay.intahnet.co.uk/inbox"]
      port: 8181

Default Parameter Values:
Default Server Port: 8181
Default Monitor Server Port: 9191
Default Relay Service List:
         "https://relay.toot.io/inbox",
	"https://relay.infosec.exchange/inbox",
	"https://relay.intahnet.co.uk/inbox",
	"https://relay.fedi.buzz/instance/mas.to",
	"https://relay.fedi.buzz/instance/mastodon.online",
(note): messages from relay.fedi.buzz server do not contain "share" type object.

Main Modified Components

mastodon/client.go: Functions for relay service interaction and received relay message handling
activitypub/data_source.go: implementation of the core data collection process with the HTTP server

Technical Implementation

HTTP Server: Built on Echo framework to handle ActivityPub endpoints
Mimic as a mastodon instance with Authentication: Dynamic RSA key pair generation for secure relay communication with other mastodon servers
Message Processing: In-memory message channel for ActivityPub object processing

Future Improvements:

Implement monitoring and client stability in another PR

Checklist

[x] The commit message follows Angular Contributing guidelines;
[x] Tests for the changes have been added (for bug fixes / features);

Does this PR introduce a breaking change?

[x] Yes
[ ] No

Other information

Remember to update and close this: https://github.com/RSS3-Network/Docs/issues/9

Remember to update and close this: RSS3-Network/Docs#9

Please pay attention to this comment: https://github.com/RSS3-Network/Docs/issues/9#issuecomment-2456149108.


Update index.html

Adding some lines, comment please if you agree with those changes.

Added some text to the html file, which Saumil reviewed.


Kotlin (and java?): go like source layout,  classify co-located test sources as test sources.

We layout a lot of our kotlin modules and packages like go code, I often pop simple unit tests in the same directory as the package. It would be good to be able to have the sources auto classified -- this would mean  reading in test source via aspect processing in addition to using a directory glob.
@brendandouglas Is there some support in the sync model currently for this (to support go maybe) ?

There's no support for this currently -- we do associate sources with targets during sync, and we know which targets are tests. This works for Go, because Go rules (at least internally) have the nice behavior that test sources are specified directly in the test rule.
For java_test (and kt_jvm_test, I assume?), this isn't necessarily the case (you don't need to specify sources at all, just a test runner which could run tests from any class in the class path.
I don't think this is solvable via the aspect either -- to get this information you'd need to run the test. We could use heuristics to recognize test files though (and already do in several places).

Hi there! We're doing a clean up of old issues and will be closing this one. Please reopen if you’d like to discuss anything further. We’ll respond as soon as we have the bandwidth/resources to do so.


Set value for all rows in a column

If there is no data in any of the rows of specific column (Group), we want to be able to select a group that would be set for all rows. Is this possible to achieve?

It would looks something like
      <ReactSpreadsheetImport
        {...mockRsiValues}
        isOpen={isOpen}
        onClose={onClose}
        onSubmit={setData}
        matchColumnsStepHook={(table, rawData, columns) => {
          /* your logic here: */
          const newTable = table.map((row) => row)
          return newTable
        }}
      />

Thank you for quick answer. As this is on click to next step, We need to have a select dropdown, that is visible if no groups before click on next as we dont want to hardcode the group

@Tobias235 I don't think I understand the problem, could you explain it a bit more or give an example?

How to map undefined values?
After uploading a file sometimes the user gives empty cells. We need a way to map empty cells to some value.
Currently when a cell is undefined , it does not show up in the "match columns tab"

@Tobias235 I am sorry, but I still don't understand the use case. I would suggest to investigate other hooks or if nothing matches what you need, feel free to fork the project!


UFW instead of iptables

Hi,
Is there any way to use UFW instead of iptables or to migrate all to ufw?
Thanks :)

Or at least extend the iptables rules, because these only affect OpenVPN, it would make sense to go into more detail here and e.g. limietize ssh to a specific port and adjust the default policy as well.


Please publish as a module

I am refactoring a project to use C++20 modules, would it be possible to publish tinyxml2 as a module, so I can use import <tinyxml2> instead of `#include "tinyxml2.h"?

TInyXML-2 is firmly C++ 11, sory.


Fix problem report url for cc

Reviewing cheatsheet
Before merging the PR, comments starting with

❌ ❓must be fixed
🤔 💅 should be fixed
💭 may be fixed
🎉 celebrate happy things

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

The merge queue build has failed. Click here to see all failures.


Kodular error on page load

When I load a page with the MaryDialog extention I sometimes get this error:

Is it a mistake on my side, or a extention bug?
Thanks in advance :)

Now it also says this since i added a is shown

So after remaking everything and making sure everything is really alright, the bug seems to be gone for now. Don't be like me and directly post an issue xD

This was not a bug, you were just trying to access a dialog with invalid id.

It still does happen randomly sometimes tho


Test: Panel Alignment Setting

Refs: #132893

[x] anyOS @weinand
[x] anyOS @joyceerhl

Complexity: 2
Create Issue

This milestone, we added an experimental setting that is available in insiders that determines how the panel spreads underneath the editor and side panels.
Setup
Enable the side panel feature with workbench.experimental.sidePanel.enabled and reload the window. Drag some view (e.g. Outline) into the side panel to keep it visible while testing.
Test by:

Reading the setting options and descriptions.
Try each option and verify it functions properly and does what you expect.
Try across reloads.

Since I was a bit confused, here are some clarifications:

the setting to test is workbench.experimental.panel.alignment.
in order to test the right and justified alignments it is necessary to enable a "sidePanel" on the right via the workbench.experimental.sidePanel.enabled.
the workbench.experimental.panel.alignment setting does not require to have workbench.experimental.sidePanel.enabled set to true (the settings are independent)

@weinand @joyceerhl sorry for not adding the setting id, wrote the tpi out of order and forgot some key info it seems


ci: Introduce static type checker

🚀 Feature
As PL has pyright type checker in ci https://github.com/PyTorchLightning/pytorch-lightning/issues/2093, we should have one in Bolts as well.
There are a number of type checkers, and reasonable options are:

https://github.com/python/mypy

Python's official project
easy installation with pip
more stars(\approx users) than pyright

https://github.com/microsoft/pyright

(core members may be familiar with pyright just because PL uses it (?))

In my humble opinion, mypy would be a better choice for the reasons listed above.
Motivation
We have type annotations in some classes and functions mainly for docs, but we're currently not sure if the added type hints are correct or not, which should be addressed.

I guess mypy would be nice. Even torchvision uses mypy. A sample init file which might prove useful is from torchvision is here.

@Borda @ananyahjha93 Can I give it a go for this? I'll first make a PR adding mypy check to GH Actions and later apply type annotations to the codebase step-by-step like applying isort in PL repo.

@Borda @ananyahjha93 Can I give it a go for this? I'll first make a PR adding mypy check to GH Actions and later apply type annotations to the codebase step-by-step like applying isort in PL repo.

sure, go ahead :]


feat(import): copy folder contents

What type of PR is this?

Which issue does this PR fix:
What does this PR do / Why do we need it:
If an issue # is not available please add repro steps and logs showing the issue:
Testing done on this change:

Automation added to e2e:

Will this break upgrades or downgrades?
Does this PR introduce any user-facing change?:

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

layer1:
  from:
    type: docker
    url: docker://ubuntu:latest
  import:
    - path: folder1/
      dest: /
  run: |
    ls /

^ at least this works with this PR.
Evaluating what changes will be needed.

Documenting docker behavior
[Destination /folder1 doesn't exist]

COPY folder1 /folder1

creates /folder1 and copies contents on folder1 -> /folder1

COPY folder1/ /folder1

same as 1.

COPY folder1 /folder1/

same as 1.

COPY folder1/ /folder1/

same as 1.

ADD definitely looks like a bunch of iterative behaviors. complete with behavior like:

If  is a local tar archive in a recognized compression format (identity, gzip, bzip2 or xz) then it is unpacked as a directory.

Also, ADD seems to indicate add not "merge", and I really could be missing something in the long description of ADD's behavior, but I don't see what happens if I ADD directory 'foo' to /etc which already has 'foo'.  Do the contents get merged somehow? As I can tell, that is "union" and I only see that term used wrt tar.
if you want to use that as your reference of something to implement, and then attempt to keep your implementation bug-for-bug in sync with docker's then I guess its fine.   I just think that it is more complex than required.

ADD definitely looks like a bunch of iterative behaviors. complete with behavior like:

If  is a local tar archive in a recognized compression format (identity, gzip, bzip2 or xz) then it is unpacked as a directory.

Also, ADD seems to indicate add not "merge", and I really could be missing something in the long description of ADD's behavior, but I don't see what happens if I ADD directory 'foo' to /etc which already has 'foo'. Do the contents get merged somehow? As I can tell, that is "union" and I only see that term used wrt tar.
if you want to use that as your reference of something to implement, and then attempt to keep your implementation bug-for-bug in sync with docker's then I guess its fine. I just think that it is more complex than required.

Not yet sure what stacker does in all these scenarios to compare/contrast yet.
Not one-on-one, but we are constrained by

stacker cannot deviate too much from docker behavior, but it may not have to
stacker imports (and copies) are set up as overlay-dirs

but I don't see what happens if I ADD directory 'foo' to /etc which already has 'foo'. Do the contents get merged somehow? As I can tell, that is "union" and I only see that term used wrt tar.

It is a union. If the entry exists in the destination, it gets overwritten.


Heath check for CI/CD + added tests

Set env variables to globally pick latest stable package versions

CI/CD updates required bases on package/ module updates

Create a ci check to update stable packages


Investigate api pod and its pre-hook pod connection issue (SPIKE)

Describe the issue
There is some connection issue where the pre-hook pod cannot talk to api pod in dev environment.
Additional context
The network policies (as a result of policy migration from aporeto to knp) in dev envrionment are:
networksecuritypolicy.security.devops.gov.bc.ca/any-to-any
networksecuritypolicy.security.devops.gov.bc.ca/any-to-external

networkpolicy/allow-all-internal
networkpolicy/allow-from-openshift-ingress

The pre-hook pod container is responsible for running db migrations each time new api deployment is rolled out.
Definition of done
When the cause for above is determined and/or a solution is provided.

Closing as the cause has been determined and a solution is provided that registry dev is now working fine.
Cause: the transitioning nspnetworksecuritypolicy.security.devops.gov.bc.ca/any-to-any misconfigured.
Solution: rectify the above.


Infinite scroller has jitter on iOS

smfr, webkit's compositing/scrolling expert, indicated there is some jitter on iOS with the demo, at the moment.
cc @surma @flackr

We are scrolling inside an element and don’t have -webkit-overflow-scrolling: touch; because of side-effects. IIRC @flackr was mentioning that we could move to scrolling on body soon-ish.

We do have -webkit-overflow-scrolling: touch;, there are no side effects on this page.
https://github.com/GoogleChrome/ui-element-samples/blob/gh-pages/infinite-scroller/styles/messages.css#L6
We are scrolling inside an element because that prevents us from creating a large solid color layer for the document body. The scrolling contents layer is actually completely transparent (draws nothing) because all of the items within are composited which means that it doesn't incur any layer cost.
I hadn't noticed any jitter on iOS but I clearly need to play with it more. I suspect that it may be because we're very aggressively setting the scroll position to what we think it should be, which could cause rounding errors on a high dpi display while smooth scrolling?

It looks like setting scroll position is conflicting with the rubber banding effect. You can see the jitter as you rubber band upwards at the top when there are more than one viewport height worth of contents.


HLS stream name

how to specify the name of the Stream if the URL http://server:1935/appName /streamName/playlist.m3u8 ??

Talking about... HTTPStream? Not support "appName".
var httpStream:HTTPStream = HTTPStream()
httpStream.attachCamera(DeviceUtil.device(withPosition: .back))
httpStream.attachAudio(AVCaptureDevice.defaultDevice(withMediaType: AVMediaTypeAudio))
httpStream.publish("streamName") // <- streamName

var lfView:LFView = LFView(frame: view.bounds)
lfView.attachStream(httpStream)

var httpService:HTTPService = HTTPService(domain: "", type: "_http._tcp", name: "lf", port: 1935) // <- port
httpService.startRunning()
httpService.addHTTPStream(httpStream)

// add ViewController#view
view.addSubview(lfView)


CLoudmqt

stream_socket_client(): unable to connect to tcp

I am restarting this project so having a clear out of old issues (If you believe this is still valid please reopen)

Some recent updates may of fixed the issue


remove Brisbane Hub

I tried using this method to comment out the section "<!--" but it didn't work.

Done!


Support Checklist for Onboarding Peter

New Support Team Member Onboarding Checklist
Special Notes

[x] Paste a link to the general onboarding ticket, which includes the onboarding authorization, here: https://github.com/cloud-gov/product/issues/3033

Complete additional cloud.gov trainings

    Federal employees and staff contractors, expand this section. Not applicable to project contractors.

Engineers who are federal employees or staff contractors have a Contingency Plan role and may participate in Incident Response, so they must complete the CP and IR trainings. Project contractors do not need to complete these trainings. Check one of the following:

[ ] Coordinate with your onboarding buddy to schedule Contingency Planning training within 60 days. (and annually after that). This will cover the following document, which you should also review before or after training:

[ ] Read the Contingency Plan.

[ ] Coordinate with your onboarding buddy to schedule Incident Response Training within 60 days of joining the team (and annually after that). This will cover the following document, which you should also review before or after training:

[ ] Read the Incident Response Guide.

Learn our policies and procedures

[ ] Review the cloud.gov open source policy guidance about protecting sensitive information.
[ ] Read the Continuous Monitoring Strategy, particularly the cloud.gov team responsibilities.
[ ] Read the Configuration Management Plan.
[ ] Read the cloud.gov Security Policies and Procedures. These documents explain the high-level policies and procedures we must comply with while running cloud.gov, sorted into security control "families" They explain that we follow GSA IT security policy, and they provide a summary of the procedures in our System Security Plan.
[ ] Review the System Security Plan (the latest version lives on Google Drive; look for "cloud.gov System Security Plan (SSP)" as a .docx file). Of particular note for onboarding: Section 9 (System Description) and Section 10 (System Environment)

Getting to know cloud.gov
These items will help you come up to speed on cloud.gov and what it is, how it works, why it exists, etc. While you
should take the time to go through them, please do not try and tackle it all in one shot! It can become overwhelming
very quickly, so your onboarding buddy will walk through this list with you at a high level with you to help manage the work.

[ ] Sign up for a cloud.gov sandbox using your GSA email address and start experimenting to get familiar with the basics of the PaaS from a user's perspective.
[ ] Read our service disruption guide to learn how we handle customer-facing service disruptions.

Slack channels
Your onboarding buddy will add you to these Slack channels:

[ ] #cg-aws-security - private channel where bots post security notices
[ ] #cg-incidents - private channel for incident response
[ ] #cg-ops-banter - private channel for operations/engineering banter
[ ] #cg-priv-compliance - private channel for security and compliance discussions

You will want to keep #cg-support unmuted so you are aware of requests from TTS-internal customers of cloud.gov.
Support-specific items
Machine admin rights

[ ] In order to install development tools on your Mac, you will need to request local admin rights by submitting a ServiceDesk ticket using this justification. If you're unable to create a ticket for yourself, your onboarding buddy can create one for you.

Additional compliance setup/review

[ ] Install caulking git leak prevention by following the README
[ ] Verify caulking by running make audit and pasting a screenshot as a comment on this GitHub issue
[ ] Set GPG signing set up for GitHub (instructions here)

Install a development environment for cloud.gov

[ ] Install Homebrew (brew)
[ ] Install CloudFoundry for mac per their docs:

brew tap cloudfoundry/tap
brew install cf-cli@8
brew install openssl

[ ] Verify CloudFoundry Installation via the CLI (once an existing cloud.gov teammate has made your cloud.gov admin account)

cf login -a api.fr.cloud.gov --sso
cf orgs

As a cloud.gov support team member, you should have access to your sandbox; if you don't, please reach out to your onboarding buddy

Needs a buddy assignment

Wrong ticket - replacing with correct workflow here: https://github.com/cloud-gov/product/issues/3039


Set cookies or any other http header

Does ui4j provide ways to set request headers?

Hi, this feature is available with version 1.2.0. Please check the unit tests for sample usage.
https://github.com/ui4j/ui4j/blob/master/ui4j-webkit/src/test/java/com/ui4j/test/CookieTest.java
https://github.com/ui4j/ui4j/blob/master/ui4j-webkit/src/test/java/com/ui4j/test/HeaderTest.java


Godot Physics CylinderShape volume calculation wrong

Godot version
Both 3.x and 4.0
System information
W10
Issue description
I noticed the volume calculation for cylinders isn't correct. Should be πr²h, not πr²h+(4/3)πr³.
(Note that these functions are erroneously named get_area. See #54616 for a 4.0 fix.)
master:
https://github.com/godotengine/godot/blob/56cfebbe98ef18d91b891dbbde96081343d5b4cc/servers/physics_3d/godot_shape_3d.h#L259
3.x:
https://github.com/godotengine/godot/blob/14c366ddd7b016fc62c6cd3b940ffa2c1fb34726/servers/physics/shape_sw.h#L271
Steps to reproduce
N/A
Minimal reproduction project
No response

Ah yes, thanks for catching this! I copied the one from capsule and totally forgot to update it :D


Use window.localStorage to ensure the lib works in a mocha environment

Simple fix to ensure the library works when being run in a mocha environment which doesn't use window as the global variable

The code around this has a deeper problem: localStorage may not be well defined at all, e.g. in a React Native environment.  I just tried to give redux-localstorage a try in an RN project, but the code in persistState.js (1.0 branch) blows up with "localStorage is not defined", even though I was passing a valid storage to persistState built with adapter(AsyncStorage).

React Native doesn't support localStorage to begin with, so I don't think redux-localStorage will work for you there.

@globexdesigns, redux-localstorage isn't even a little bit specific to localStorage, speaking to the 1.0-breaking-changes branch:

Unopinionated store enhancer that persists state changes (locally).

It explicitly has adapters for several different stores including RN's AsyncStorage.  localStorage is just one of the supported stores and happens to also be the default.
After my prior comment, I discovered that HEAD of 1.0-breaking-changes works correctly with AsyncStorage due to the fix in 61f9db95237a090daff2968ae1cae3b9252d6875.  For my part, I'd like to see either a full 1.0 release, or at least an rc5 containing this fix.
Your issue can be fixed easily in your app code by explicitly using adapter(window.localStorage) instead of relying on the default store code.  You'll probably also need to use HEAD of the 1.0 branch for that to work correctly under mocha.

Merged, thanks!


Can the VL-BERT model be applied to metric learning?

I want to apply the algorithm to a multi-modal problem(VL data). Since the data is in the form of pairs and it is difficult to decide the categories of samples, I think metric learning may be more suitable. How to apply VL-BERT in this situation?

What do you mean by saying "apply VL-BERT to metric learning"? Did you mean fine-tuning pre-trained VL-BERT on some VL metric learning task, or pre-train VL-BERT using metric learning methods?

What do you mean by saying "apply VL-BERT to metric learning"? Did you mean fine-tuning pre-trained VL-BERT on some VL metric learning task, or pre-train VL-BERT using metric learning methods?

Fine-tuning pre-trained VL-BERT on some VL metric learning task.  Because the data is relatively small, I think the pre-trained model can provide some useful information. But I am not sure if this can be applied to metric learning task.

Yes. VL-BERT can be applied to any task that input format is a pair of image and text.


handle requests to APIs that are behind CloudFlare

Saw some recurring errors in New Relic, and further investigation showed that CloudFlare is blocking "circular" requests. In other words, a request passes through CloudFlare to get to https://jsonp.afeld.me, but then might pass through CloudFlare again to get to http://www.tornadohq.com, which throws an error. Here is what I wrote to support:

I have an application sitting behind CloudFlare, which allows people to proxy to APIs that don't support cross-domain requests from browsers:
https://jsonp.afeld.me/
Unfortunately, it seems that doing requests to other sites behind CloudFlare gives an Error 1000 ("DNS points to prohibited IP"). A couple examples:

https://jsonp.afeld.me/?url=https://jsonp.afeld.me/package.json
https://jsonp.afeld.me/?url=http://www.tornadohq.com/summary.json

I can see why this protection would be enabled, but am wondering if there is a way around it for legitimate proxy requests that need to pass through CloudFlare twice. Thanks!

Hmm, doesn't seem to be a problem anymore.


Feature request: Ndarray stack

It would be useful to have a function stack in the Ndarray module similar to the stack function in numpy:
https://docs.scipy.org/doc/numpy/reference/generated/numpy.stack.html#numpy.stack
To achieve the same functionality right now we have to first expand the dimensions of the ndarrays and concatenate along that axis. The proposed function would have type signature
val stack : ?axis:int -> arr array -> arr

A naive implementation would be
let stack ?(axis = 0) xs =
      let shp = Arr.shape xs.(0) in
      let ndim = Array.length shp + 1 in
      let axis = Owl_utils.adjust_index axis ndim in
      let new_shp = Array.init ndim (fun i ->
             if i < axis then shp.(i)
             else if i = axis then 1
             else  shp.(i-1)) in
      let y = Array.map (fun x ->
                   let shp' = Arr.shape x in
                   if shp' <> shp then failwith "stack: ndarrays in [xs] must all have the same shape";
                   Arr.reshape x new_shp) xs in
       Arr.concatenate ~axis y

The naive impl looks fine by me, for large ndarray, most of the time will be spent in concatenate function anyway.


Linux makefile syntax checker with fixed arguments

I saw the Issue scrooloose/syntastic#1383 and decided that it might be
useful to contribute my simple makefile for linux kernel development.
Changing a comment allows me to change the arguments passed to the Linux
Kernel makefile, path in cwd allows me to switch between different
forks. All the rest was copied from standard makefile syntax and
displays errors and warnings nicely.

If afraid this is not needed: you can achieve the exact same thing without code changes, by setting syntastic_c_make_args and syntastic_c_make_fname in your vimrc:
let g:syntastic_c_make_args = '-j4'
let g:syntastic_c_make_fname = 'ARCH=arm CROSS_COMPILE=arm-none-eabi- am335x_boneblack42_defconfig zImage dtbs'

You can also use an autocmd to set these only for kernel sources.
In general, patches that add checkers for the only reason to change defaults are not accepted.  Sorry, but no.


New_term : Debugging

Is there any changes I want to do?
Feedback appreciated 🙂

My apologies, it won't repeat again, for now do I want to do any changes.

No worries. We'll get back to you soon. Thanks for your patience!! :)

@CathPag
Oh no, I accidentally clicked Resolve conversation  :(
thank you for your suggestions I made a note of it and I resolve it as soon as possible.

Code is written by humans, and, as such, inaccuracy will come. When a programmer develops a game, software, or mathematical computation [?] and an error occurs, that program will likely not function as desired (undefined behavior). To identify the source of the problem the developer has to review the code line-by-line. Without context, i.e. variables, data, location in memory, etc., catching errors is quite hard.

It's ok if you skip that sentence. Let me know when you incorporated the chances so you can continue the conversation.

Just following up on this @Krishnamohan-Yerrabilli

@CathPag I'm sorry to say, I'm not able to follow up on the conversation
please do what you think is right thank you.

Ok, I'll close this and let someone else work on it

I'm extremely sorry @CathPag for wasting your team time, it's completely my fault :(


Twinmaker Sceneviewer integration

Describe the issue with documentation
A clear and concise description of what the issue is.
How to integrate the twinmaker into the appkit?

I tried this method, I am not able to render the twinmaker in the dashboard.
Can you provide a more precise code as to how to actually render the twinmaker scene.

We have a detailed full react example here. In general to load a Scene in a SceneViewer in your dashboard this assumes you already created a TwinMaker workspace and composed a scene in that workspace using Scene Composer in AWS TwinMaker Console. Then you provide all these info like AWS account credentials (account where your workspace is created), region, workspace Id, scene Id and any queries related to scene rules see config file in the example mentioned above.


vdk-structlog: cannot remove timestamp when using json format

Steps to reproduce

Install vdk-structlog and configure as follows

logging_metadata=level,file_name,line_number,vdk_job_name
logging_format=json

Run an example data job

Expected
Timestamp not visible in log messages
Actual
Timestamp still visible in log messages
Acceptance criteria

Fix the bug described above
Check this for other metadata fields
Create e2e tests that check for it if there aren't any

this issue appears for a number of other fields, maybe we should expand the scope of it

this issue appears for a number of other fields, maybe we should expand the scope of it


Lightning CLI for MOGREPS-G data

As science lead for lightning, I want a CLI that calculates lightning from MOGREPS-G max-in-hour CAPE and precipitation-rate data so that I can implement chains of max-in-hour lightning probability on both the global and UK domains.
Related issues: #1518
Will implement science as described in https://github.com/metoppv/mo-blue-team/issues/81
New CLI to calculate probability of lightning from latitude-dependent thresholding of max-CAPE and max-precipitation rate where mid-latitude values (>50N/S) are 1 mm/h and 350 J/kg, while tropical values (<10N/S) are 4 mm/h and 500 J/kg. Should expect CAPE data to be offset by -PT1H from precip data and output should be for the times bounded by the precip data.
Acceptance criteria:

New plugin to do latitude-dependent thresholding (partially written by Stephen)
New CLI to calculate probability of lightning

The linked PR uses acceptance test data in branch t1550_engl_lightning (which can also be found in /data/users/cfst/improver_tests)


Update start_db_helper.sh

I think there are two issues with this:
A. If you run ./gradlew test, several gradle modules may be tested in parallel, and so there WILL be multiple workers. B. As the comment above states, "We make extra dbs because a gradle worker ID can exceed the max number of workers." In the test I just ran, I got workers 7 and 8
This change is only acceptable if: 1. You run without a gradle daemon, e.g. in a brand new container, in CI, with --no-daemon, or after ./gradlew --stop 2. AND you run tests for a single project, e.g. ./gradlew cloudfoundry-identity-server:test
So this would hinder our ability to run tests locally because of we want to use gradle daemons locally (so, not 1.); and would very likely break CI whenever we merge #3186 because in CI we just run "test" on all projects (not 2) .
I think this will require changes in how the tests run in the first place ; either make projects depend on each other, or changes to how databases are provisioned.
Edit:
It is actually already failing in CI, probably because of A / not 2.
I will think about it over the week-end, but I think the correct move is to have to have three databases:

uaa (which is there by default) for connecting a local UAA
cloudfoundry-identity-server-test for tests
cloudfoundry-identity-server-uaa for tests

@strehle happy to take care of this if you want.

@Kehrlann Thanks for your effort. It was not my intension to do a change here. Did it to see if multiple DBs are really needed


CakePHP 3 Error with Configure and Router

Edit:
I guess this does not work for Cake 3

nope. This plugin is for version 2.


Update image_captions.py

enabled ImageCaptionLoader to accept bytes or filepath as input, if you input bytes the metadata states that bytes were input or if file path it shows the file path, pretty straightforward

Apologies for the slow review! Pr has some merge conflicts, happy to re-review if you'd like to resolve


Generating Pattern Lab For the First Time, Public Folder Not Generating, Errors Recieved

After a fresh install of Pattern Lab, I followed these steps. (http://patternlab.io/docs/first-run.html)
1. Open core/scripts/
2. Double-click generateSite.command

This ends up throwing errors.
"No such file or directory in .../pattern-lab/core/lib/PatternLab/Builder.php on line 1264
Either the public directory for Pattern Lab doesn't exist or the builder is in the wrong location. Please fix."
I also tried php core/builder.php -g with the same result.
I am not able to generate a Public Folder.
Any advice on a fix would be greatly appreciated.

Do I need to move the Builder.php file or is there a work around?

Hey @wcavalari,
I followed your same steps and it successfully generated:

I'm not exactly sure what could be causing the issue. @dmolsen, do you have any ideas?

Thank you for the reply Brad. I ended up downloading Pattern Lab again and replacing the files in my project folder with the new downloaded content.  Everything is running fine now.