Support overwriting the default template loader via a handle hook

Ref #2762
Here's a brief video explaining why I can't accomplish the same thing without this change. (Apologies for the dog snoring in the background! 🐶 💤 )
Basically, our app is multi-tenant and we allow our customers to provide their own skins for different sections. But most importantly: the skin content is not within our control. All customers run on the same cluster of servers, and at runtime we inspect the hostname/url and look up the appropriate skin to wrap around the app.
As discussed in #2762, I tried to make this work with {@html before}<slot />{@html after} in a layout, and that works as long as the skin doesn't have ANY tags wrapping the app content (must be a direct descendant of ). Since I'm splitting the skin content on a token, any wrapping tags become unclosed, and then {@html ...} goes haywire.
This change allows me to overwrite the default template({ head, body}) method called during SSR by specifying a custom per-request template method in a handle() hook:
// src/hooks.js
import loadSkin from '...';
export async function handle({ request, resolve }) {
	const skinHTML = await loadSkin(request.host, request.path);
	request.locals.template = ({ head, body }) => {
		return skinHTML
			.replace('', `${head}</head>`)
			.replace('{{app}}', `<div id="svelte">${body}</div>`);
	};

	return resolve(request);
}

Before submitting the PR, please make sure you do the following

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

I'm not sure how I could write a test for this functionality, but if someone wants to offer some advice, I can give it a try.
Tests

[ ] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

I also am not able to get the tests to pass locally; both before and after my change they fail at the same spot:

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

Not being part of the core team, I can't approve PRs. But I can give you some feedback. I suspect that request.locals is not going to be the right place to put this, as Svelte-Kit tried very hard not to touch the locals object or require any particular properties to be in it. Otherwise this feature will interfere with someone's code at some point, where they want to set a template property in their request.locals for some reason of their own, and suddenly Svelte-Kit has reserved a property name in the object that is supposed to be 100% for user data.
Now, using something other than request.locals will mean that you'll have to change the data type of the request in some way, or perhaps add an optional second parameter to the resolve function passed to handle (where that second parameter would be your ({head, body}) => "template" function). So obviously it's tempting to use request.locals. But I'm pretty sure the core team won't approve a PR that makes Svelte-Kit rely on request.locals having any specific structure.

Appreciate the feedback @rmunn. I'm happy to make whatever the necessary changes are, once I'm given some ("blessed") direction.

Not being part of the core team, I can't approve PRs. But I can give you some feedback

@rmunn thanks so much for all your contributions! We'd love to keep you involved. Are you on Discord by chance? I sent you an email, but just wanted to mention it here as well to make sure I had the right address :smile:

This is a fun problem to solve. I'm wondering if you could do this sort of thing...

<!DOCTYPE html>

    <meta charset="utf-8" />
    <link rel="icon" href="/favicon.png" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />

    %svelte.head%

+

%svelte.body%

+

...and then, in src/hooks.js...
export function handle({ request, resolve }) {
  const response = await resolve(request);

  if (response.headers['content-type'] === 'text/html') {
    const skin = await loadSkin(request.host, request.path);
    const [before, after] = skin.split('{{app}}');
    response.body = response.body
      .replace('', before)
      .replace('', after || '');
  }

  return response;
}

...and have users provide a skin that only includes  rather than  content?
(One minor detail that shouldn't affect anything, but is worth mentioning just in case — I'd like to remove the id="svelte" stuff in the near future: https://github.com/sveltejs/kit/issues/2221)
@rmunn is right that request.locals is a non-starter, unfortunately — we'd basically need to change the resolve API to allow additional arguments — which is why I'm wondering if this solution would get you where you need to go.

@Rich-Harris excellent thinking! And that may not even require any SK mods. I'll give it a go and get back to you. (I was looking forward to having been a contributor tho! 😞  Guess I'll have to find something else I can help out with...)
Congrats on the new job, by the by.

As expected, that worked fantastically. I guess I have to withdraw this PR, then.

I'll go ahead and close this then since it sounds like you're no longer pursuing it

Hey team !
Sorry, I don't want to reopen this, but how far is difficult to have a dynamic template ? for exemple if you have one template for main app : app.html and an other for newsletter for exemple newsletter.html with tags %svelte.head% and %svelte.body% inside.
Is it very difficult for load the one we want depending URL.pathname ?
(Sorry for my English btw)

@7antra I documented the exact steps I ended up taking, which sounds like it can do what you want: https://adamtuttle.codes/blog/2021/sveltekit-customizing-app-html-at-runtime/


Improve support for A64FX in fsspmdm.

Currently we lack SVE routines for asparse_reg.  However, the micro_kernel_config still sets things up assuming that we do.  This attempts to work around these issues.  Further, we also attempt to increase the dense block size under NEON which results in better performance (#537 ).

Issue should now be resolved.  I also have access to A64FX hardware.

I now have access to an A64FX machine.  The issue has been debugged and the code is working.  Performance is not great, but it is better than what the NEON kernels do.  I have some ideas around how to improve performance on architectures with high latencies and tiny OOE windows.

The instruction encoding should now be in a better place.

Going through the code again, I note that I load B using LIBXSMM_AARCH64_INSTR_SVE_LDR_Z_I_OFF rather than LIBXSMM_AARCH64_INSTR_SVE_LD1[WD]_I_OFF.  Is there a reason to prefer the latter form?

#552 goes much further than this PR, including this functionality and much more, although #552 is blocked on the constant data work.

Do you then want me to merge this PR or should we just close and wait for #552 to go through? I'm fine either way.

I think we’re okay to close this PR and focus on #552.  The biggest issue there will be appeasing the static analysers and reviewing some of the new instruction generation routines.
Regards, Freddie.

On 16 Nov 2021, at 09:58, Alexander Heinecke @.***> wrote:

Do you then want me to merge this PR or should we just close and wait for #552 to go through? I'm fine either way.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.


Path's points could be accessible

this issue belongs to: dart:ui
I'm trying to make a drawing app, so I'd need to do the following:
calculate center of mass of a Path
transform it, possibly by a Matrix4, but it's transform method only accepts Float64list
calculate containment by another path
serialize
etc

All of these require me to have access to the paths' points, which the dart:ui API doesn't provide, so at best I can just make my own Path class and derive the necessary dart:ui Paths when needed for drawing them with a CustomPainter of the flutter framework. I find it very cumbersome, and couldn't find a reason why this class doesn't conform to flutter better either.
Please let me know if you could do something for solving this issue, or if there is good reason for having it this way.

ok I guess I should just use computeMetrics for retrieval of a path's data, and it's like so because of this class being a core feature of dart that needs to be fast.


Website documentation for controllers

Description
We need to improve documentation for the controllers by documenting the following on the website:

installation procedure
the APIs for the custom resources
common usage scenarios
authentication
localization and configuration

We may chose to wait until the WASM issue lands first.

I've started adding generators for APIs to the ocm-controller.

Hi @phoban01,
We need to change this to 1.23 here: https://github.com/open-component-model/ocm-controller/blob/main/hack/api-docs/config.json#L22
otherwise Kubernetes meta/v1.ObjectMeta eg here https://github.com/open-component-model/ocm-controller/blob/main/docs/api/v1alpha1/ocm.md gives a 404

thanks @shivenduverma-sap for spotting this. Can you please submit a PR with the fix?

Hi @phoban01
Could you cross check with open-component-model/ocm-controller#235, please


Get bandwidth for band scale

I might be missing something, but it seems that there's no simple way to get the bandwidth used by a band scale. I'm trying to align additional elements to the center of each band, and currently it involves more math than when a band scale is used in D3.
It could be added as a field within here:

Yes, we should expose the bandwidth and step. 👍

My concern is we'll be exposing them, but they won't be considered as inputs to a new scale, so then someone who tries to build a scale from this description might wonder why it "doesn't work" when they change the values.
Would it be a good idea to show this in some way? By exposing them as info_bandwidth or info_step?
Note that apply() and invert() are already "informative" and not "inputs", so maybe I'm just too cautious.

I think it’s okay to expose them event though they are only informational.

Where can I find some documentation about the API?
I was looking at this dual-axis bar-line example, and theres a function being used as item in the marks array property, like this:
Plot.plot({
  marks: [
    Plot.barY(data, { x: "year", y: "sales", fill: "#ccc" }),

    (_, { x }, __, dimensions) =>
      Plot.plot({
        // some stuff
      })
  ],

  // some stuff
})

The example mentions

The first experiment uses the internal API and uses the x scale and the dimensions intended for normal marks

Is the internal API documented? if it isn't, what are the files you'd point me to so I can learn more about how to use it?

The marks receive the following arguments to their render function, which is called once for each facet:
index, scales, channels, dimensions, context
for example: https://github.com/observablehq/plot/blob/main/src/marks/area.js#L46

index is an array of indices (into the channels) that we want to render
scales is an object with keys corresponding to the scales names (x, etc) and values corresponding to the scaling functions
channels contains the scaled and transformed values for each channel
dimensions give the width, height etc, of the facet
context indicates the document context to use if we want to create a document fragment (a svg:g node, for instance)

This is not documented because we might still want to change it before version 1.0.

Awesome, thanks for the info! :)


IHttpResponseCompletionFeature.CompleteAsync() should take a cancellation token

CompleteAsync is subject to backpressure, but does not currently take a cancellation token so you can't abort without calling HttpContext.Abort().

Is this fairly straightforward? At a minimum we could take a token and just do nothing with it (to avoid a future API break)

Right, it's easy to add the token now and we can work out where to honor it as we go.

Though adding a token later would likely be non-breaking since we'd do it via an overload.

@JamesNK @JunTaoLuo FYI

Closing this as wont-fix per @davidfowl


Add support for cross compilation from x86

We have totally dockerized our rootfs build for our NVIDIA Orins.  For example, instead of using the stock sample rootfs we are building our rootfs from source in Docker and installing nvidia-jetpack such that when we build our firmware, all dependencies are already installed.
It seems like an oversight that building this on x86 is not supported.  It seems like it'd be possible to do with QEMU and an environment variable specifying what the target is (orin, tx2, etc...)
Any plans to support this in the future?

We have totally dockerized our rootfs build for our NVIDIA Orins. For example, instead of using the stock sample rootfs we are building our rootfs from source in Docker and installing nvidia-jetpack such that when we build our firmware, all dependanices are already installed.
It seems like an oversight that building this on x86 is not supported. It seems like it'd be possible to do with QEMU and an environment variable specifying what the target is (orin, tx2, etc...)
Any plans to support this in the future?

Do you talking about cross compilation?

A number of the ML packages actually use CUDA during the build/install process so it needs GPU enabled (and typically of the same SM...that being from the same generation of Jetson), and also there are tests between every build stage to ensure their GPU acceleration is functioning correctly.  And my understanding with cross-complication is that it often requires project-specific support, and we build a large number of libraries many of which have quirks/patches in their install or web of dependencies.  Also heard that QEMU arm64 emulation is slow to the point that AGX Orin is several times faster than a 64-core Threadripper.
All that aside though, if you have a specific application in mind you can just install the wheels this repo builds in your 'deployment container', or take our dockerfile recipes and condense them down.  Totally agree this repo can use more features on the deployment side, but am most occupied by enabling the latest releases.  In fact if you just ran this in QEMU, disabled the tests and the L4T checks, it may just install the wheels from our pip server and be quick. Would also like to support x86 for the actual containers themselves, its just a bandwidth issue like above.


Flame Graph Report: Add better color coding to unmapped code blocks

Currently using Orange color to anything that isn't mapped by a lookup CSV file
Suggestion: come up with a few colors in addition to Orange and randomly assign them to the frameworks that are not mapped, keeping track in the context of the currently rendered flame graph

Fixed by e6f79c497f8f3eb6290a91859821ddb9dd8fcffc


codec(ticdc): optimize canal-json encoder by reduce allocate small objects

What problem does this PR solve?

Issue Number: close #7354
What is changed and how it works?
do not generate intermediate products to avoid allocating a huge number of small objects, to reduce overhead on GC.

On the master branch, 23 ~ 25k; On the PR branch, 26 ~ 28K, throughput increased around 10 ~ 15%
Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
`None`.

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

Codecov Report

Merging #7339 (8e656f0) into master (11dbe58) will decrease coverage by 0.0252%.
The diff coverage is 50.7352%.

Additional details and impacted files

Flag
Coverage Δ

cdc
67.5914% <50.0000%> (-0.1700%)
:arrow_down:

dm
52.0033% <53.1914%> (+0.0598%)
:arrow_up:

engine
60.9234% <ø> (+0.0373%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #7339        +/-   ##
================================================
- Coverage   59.8873%   59.8621%   -0.0253%
================================================
  Files           799        800         +1
  Lines         91637      91831       +194
================================================
+ Hits          54879      54972        +93
- Misses        31982      32086       +104
+ Partials       4776       4773         -3

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

/merge

/run-integration-test

/run-verify-ci


Relative path of assets in bower_compontents packages

Hello!
For example, in project we have an fotorama or semantic ui. CSS files of this packages have some rules:
fotorama.css
<EMAIL_ADDRESS>semantic.css
@font-face {   src: url("themes/default/assets/fonts/icons.eot"); }
I want to get at output of gulp:
fotorama.css
<EMAIL_ADDRESS>semantic.css
@font-face {   src: url("/static/src/fonts/icons.eot"); }
Of course, we can use gulp-replace for creating some rules of replacement, but it is headache and bad decision - what if i have an dozens of CSS-dependencies in bower_components? I must write hundreds of rules?

@artinnok gulp-replace does support regex.
With regex, you can write a pattern to match url( and url(" and add your relative path. So you don't need to specify each one.
https://regex101.com/r/sC3hI5/1

Support questions should be directed to StackOverflow.


Add support for control, inverse on Operation

Description
This PR contains two commits:

Fixing setControls on CompoundOperations. This change pushes down controls to the inner operations (and recursively does so if those are also CompoundOperations).

OPENQASM 3.0

gate example q1 q2 {
  x q1;
  x q2;
}

qubit[3] q;
ctrl @ example q[0] q[1] q[2];

Is replaced by
OPENQASM 3.0

qubit[3] q;
ctrl @ q[0] q[1];
ctrl @ q[0] q[2];

Adding an inverse method on Operation. This is motivated to implement OpenQASMs inv modifier.
See https://openqasm.com/language/gates.html#inverse-modifier for a description.

Checklist:

[x] The pull request only contains commits that are related to it.
[x] I have added appropriate tests and documentation.
[x] I have made sure that all CI jobs on GitHub pass.
[x] The pull request introduces no new warnings and follows the project's style guidelines.

This factors out the functionality previously implemented in #309 to the Operation class.

Please let me know if I should move the inverse method to a separate PR! :)

Please let me know if I should move the inverse method to a separate PR! :)

Hey 👋🏻
Yeah. That would be great. In the end, they are separate features. Don't forget to update the PR descriptions and titles in that case.

Thank you for taking the time for the reviews!


pac mac app error

electron-packager . --asar --overwrite --platform=darwin --arch=x64 --prune=true --out

path.js:7
    throw new TypeError('Path must be a string. Received ' + inspect(path));
    ^

TypeError: Path must be a string. Received true
    at assertPath (path.js:7:11)
    at Object.join (path.js:1211:7)
    at Object.generateFinalPath (/Users/willin/.nvm/versions/node/v6.2.0/lib/node_modules/.electron-packager_npminstall/electron-packager/7.
0.2/electron-packager/common.js:70:15)
    at checkOverwrite (/Users/willin/.nvm/versions/node/v6.2.0/lib/node_modules/.electron-packager_npminstall/electron-packager/7.0.2/electr
on-packager/index.js:146:34)

    at /Users/willin/.nvm/versions/node/v6.2.0/lib/node_modules/.electron-packager_npminstall/electron-packager/7.0.2/electron-packager/inde
x.js:165:32
    at /Users/willin/.nvm/versions/node/v6.2.0/lib/node_modules/.electron-packager_npminstall/electron-packager/7.0.2/electron-packager/inde
x.js:84:9
    at next (/Users/willin/.nvm/versions/node/v6.2.0/lib/node_modules/.electron-packager_npminstall/rimraf/2.5.2/rimraf/rimraf.js:74:7)
    at FSReqWra%

Which version of electron-packager are you using?

"electron-packager": "^7.0.2",

What CLI arguments are you passing? Alternatively, if you are using the API, what parameters are
you passing to the packager() function?

electron-packager . --asar --overwrite --platform=darwin --arch=x64 --prune=true --out=out --osx-sign.identity='Developer ID Application: GitHub' --ignore=node_modules

What version of Electron are you building with?

"electron-prebuilt": "^1.2.0",

What is the host platform are you running electron-packager on?

v6.2.0
osx 10.11.5

What target platform(s)/architecture(s) are you building for?

osx x64

nice job

a new one
electron-packager . --asar  --overwrite --platform=win32 --arch=ia32 --prune=true --out=
out --version-string.CompanyName='GitHub, Inc.'  --ignore=node_modules
Packaging app for platform win32 ia32 using electron v1.2.0
spawn wine ENOENT

@willin for your first problem, you specified the --out parameter without the path that you want your application bundles to be created in.
For your second problem, please see https://github.com/electron-userland/electron-packager#building-windows-apps-from-non-windows-platforms

@malept I think that @willin used the following for packaging:
electron-packager . --asar --overwrite --platform=darwin --arch=x64 --prune=true --out=out --osx-sign.identity='Developer ID Application: GitHub' --ignore=node_modules

So out is specified to out. But yea I agree; there should be some extra considerations in #386.

@sethlu I think he just used --out which made opts.out evaluate to true, which explains the error:

TypeError: Path must be a string. Received true

@malept That makes sense as well. However, the restriction to --out now only accepting strings should be quite handy.


hey, im getting some exceptions

C:\Users\USER\Desktop\pluralsight_scraper-master\pluralsight_scraper-master>pyth
on pluralsight.py
Traceback (most recent call last):
File "C:\Python37-32\lib\site-packages\selenium\webdriver\common\service.py",
line 74, in start
stdout=self.log_file, stderr=self.log_file)
File "C:\Python37-32\lib\subprocess.py", line 769, in init
restore_signals, start_new_session)
File "C:\Python37-32\lib\subprocess.py", line 1172, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "pluralsight.py", line 14, in
course.launchBrowser()
File "C:\Users\USER\Desktop\pluralsight_scraper-master\pluralsight_scraper-mas
ter\scraper.py", line 44, in launchBrowser
self.browser = webdriver.Chrome(chrome_driver)
File "C:\Python37-32\lib\site-packages\selenium\webdriver\chrome\webdriver.py"
, line 62, in init
self.service.start()
File "C:\Python37-32\lib\site-packages\selenium\webdriver\common\service.py",
line 81, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'chromedriver.exe' execu
table needs to be in PATH. Please see https://sites.google.com/a/chromium.org/ch
romedriver/home
C:\Users\USER\Desktop\pluralsight_scraper-master\pluralsight_scraper-master>

This issue to the missing chrome Driver. Download it and add it to you Environment Path.


Dm2 tutorial new fmt

Proposed changes:

tutorial starter project uses new flow fmt. Also no slot mappings in domain bc not needed anymore.

Status (please check what you already did):

[ ] added some tests for the functionality
[ ] updated the documentation
[ ] updated the changelog (please check changelog for instructions)
[ ] reformat files using black (please check Readme for instructions)

closing as pulled the commits into https://github.com/RasaHQ/rasa/pull/12860


Added a WASM demo.

Currently a draft because:

~it only works on Chrome~
it has poor performance on M1 caused by a bug in browsers

it has poor performance on M1 caused by a bug in browsers

It looks like this was fixed in Chrome 112, can you try it?

@yisibl, it's fixed on Chrome 112+ and Firefox 114+. I updated the issue. There's still an issue on Safari though.

The issue on Safari seems to be caused by a discrepancy in the wasm128 SIMD implementation. The "visualize partial updates" button also seems to be broken.

Hi @dragostis, can you add an example of rendering a static SVG in Wasm?


nbdev_preview does not say which notebook failed

I just launched nbdev_preview and it fails with an import error, but doesn't tell which notebook it is from:
This is all I got from nbdev_preview:
…/nbplanetary ❯ nbdev_preview
Preparing to preview
Traceback (most recent call last):
  File "/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 3398, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-1-04f883e015f1>", line 9, in <cell line: 9>
ImportError: cannot import name 'test_fail' from 'fastcore.utils' (/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/fastcore/utils.py)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/ayek72/mambaforge/envs/py310/bin/nbdev_filter", line 8, in <module>
    sys.exit(nbdev_filter())
  File "/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/fastcore/script.py", line 116, in _f
    return tfunc(**merge(args, args_from_prog(func, xtra)))
  File "/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/nbdev/cli.py", line 127, in nbdev_filter
    with redirect_stdout(dn): filt.nb_proc(nb).process()
  File "/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/nbdev/process.py", line 130, in process
    for cell in self.nb.cells: self._process_cell(cell)
  File "/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/nbdev/process.py", line 111, in _process_cell
    cell = opt_set(cell, proc(cell))
  File "/home/ayek72/mambaforge/envs/py310/lib/python3.10/site-packages/nbdev/processors.py", line 298, in __call__
    if self.k.exc: raise Exception(f'Error: cell {cell.idx_}:\n{cell.source}') from self.k.exc[1]
Exception: Error: cell 5:
import zipfile
from datetime import timedelta
from io import BytesIO
from pathlib import Path

import requests
from astropy.time import Time
from dask.distributed import Client
from fastcore.utils import store_attr, test_fail
from tqdm.auto import tqdm
from yarl import URL

import pandas as pd
from planetarypy.config import config
from planetarypy.utils import nasa_time_to_iso, url_retrieve

Now, question is of course, if that is within the purview of nbdev_preview, as nbdev_test will of course show the failing notebook?
Version: 2.1.3

:+1:  it will be nice to have this information.

This is indeed the function of nbdev_test  -> that will show  you which notebook fails.  You should use that for testing

Hello @hamelsmu nbdev_test will execute all cells of all notebooks, here we only ask for name of notebook than makes nbdev_preview to fail.
In one of my project, I have 50 notebooks. Some of them requires special context (secret data and/or special librairies) to be run so nbdev_test will always failed. But I still want documentation for them.
I was able to fix all nbdev_preview errors by searching for strings... Having the name will have saved my time.

Ok, we will think about a way to handle this.  Thank you


Update state.narrows on topic/stream edits

(new description written 2021-07 by @gnprice)
When a message gets edited, we reflect the edit in state.messages, but not in other data structures that know about the message. In particular state.unread (that's #4840), and state.narrows.
This means that if a message has its topic and/or stream change, then if you've already seen that message in a message list (so that we have an entry in state.narrows for that narrow), it will still be in the old narrow if you go and look there.
Conversely, if you've already looked at the new narrow where it should appear, so that we've fetched from that narrow covering the point where the message would appear, I believe this means the message won't show up there. (But if you first visit the narrow only after the edit happened, then it will, because we fetch the relevant messages from the server.)
A particularly salient way for this to show up is if you're looking at a topic narrow, and edit a message's topic yourself. You're looking right at it in that narrow, and it won't disappear. (This was reported as #4830.)
The way we'll fix this is to add a case for EVENT_UPDATE_MESSAGE in narrowsReducer.js. It should be sure to

handle stream edits as well as topic edits (see also #3957);
handle whole-stream narrows as well as topic narrows;
add to the new narrows, if applicable, as well as remove from the old.

For the nuances of "applicable", see jsdoc on NarrowsState and CaughtUpState, and the existing logic that narrowsReducer.js has for the EVENT_NEW_MESSAGE case.

I just merged @roberthoenig 's #2842 , which, by normalizing the "narrows" state as distinct from "messages", makes this code a lot more straightforward! I think this issue is now ripe to work on.

Reported again today, by @jyn514 in chat. I've bumped this to P1, as it's pretty conspicuously broken when it happens.


refactor(settings): make the function to deserialize hashsets more generic

Type of Change

[ ] Bugfix
[ ] New feature
[ ] Enhancement
[x] Refactoring
[ ] Dependency updates
[ ] Documentation
[ ] CI/CD

Description

This PR updates the application configuration deserialization logic to use a common generic function to deserialize HashSet<T> instead of specific ones. In addition, this PR updates the function to be more lenient in that it allows spaces around the commas for better readability.
Motivation and Context

Reducing duplicated code.
How did you test it?

Unit tests:
cargo test --package router --lib --all-features -- configs::settings::hashset_deserialization_test

Checklist

[x] I formatted the code cargo +nightly fmt --all
[x] I addressed lints thrown by cargo clippy
[x] I reviewed the submitted code
[ ] I added unit tests for my changes where possible
[ ] I added a CHANGELOG entry if applicable

@SanchithHegde Deployment readiness failing, is that specific to this PR only or all the PRs in general?

@Narayanbhat166 This PR is still WIP, there are a few errors thrown by the application when it runs, I'll fix them taking help from the connector team.


Generate .reg file

In order to run the game, people still need a .reg file from a windows vm. Dungeon Downloader should be able to generate this file automatically, which can then be imported by the user. With this feature we'd remove the need for any windows install.
What needs to be done?

[ ] Figure out all the keys the launcher sets
[ ] Create/find a function that can convert some regular python object (probably a dict) into a .reg file and back again
[ ] Create a function for calculating all required keys upon an update or full download
[ ] Add a CLI subcommand for this, perhaps something like dungeondownloader registry -o "output.reg"

Alternatively, every time there's an update the script could automatically create the new file and output to current working folder
There should also be an alert given to the user when they need to update their registry and instructions on how to import .reg files in wine

A feature that can be added later would be to automatically set the registry values when running in windows/wine through winreg.

Same reason as #4


PYCO-16: Add Wheel Generation

Changes

Update CI to build wheels for supported platforms
Utilize Py_LIMITED_API
Add scripts to support CI

Closing PR.  Will push another in the near future.


ORDER BY does not seem to work with aggregation

Using latest partiql-cli I have the following result from the REPL:
PartiQL> \table select foo, count(1) as n from
 <<
 { 'foo': 'foo' },
 { 'foo': 'bar' },
 { 'foo': 'qux' },
 { 'foo': 'bar' },
 { 'foo': 'baz' },
 { 'foo': 'bar' },
 { 'foo': 'baz' }
 >> group by foo order by n asc;
  Query finished in 0 seconds
==='

+-----+---+
| foo | n |
+=========+
| bar | 3 |
|-----+---|
| qux | 1 |
|-----+---|
| foo | 1 |
|-----+---|
| baz | 2 |
+-----+---+

---
OK!

PartiQL> \table select foo, count(1) as n from
 <<
 { 'foo': 'foo' },
 { 'foo': 'bar' },
 { 'foo': 'qux' },
 { 'foo': 'bar' },
 { 'foo': 'baz' },
 { 'foo': 'bar' },
 { 'foo': 'baz' }
 >> group by foo order by n desc;
  Query finished in 0 seconds
==='

+-----+---+
| foo | n |
+=========+
| bar | 3 |
|-----+---|
| qux | 1 |
|-----+---|
| foo | 1 |
|-----+---|
| baz | 2 |
+-----+---+

---
OK!

In the first case I would expect to see n orderings of 1, 1, 2, 3 and in the second 3, 2, 1, 1.

Without aggregation ORDER BY seems to work:
PartiQL> \table select foo from
 <<
 { 'foo': 'foo' },
 { 'foo': 'bar' },
 { 'foo': 'qux' },
 { 'foo': 'bar' },
 { 'foo': 'baz' },
 { 'foo': 'bar' },
 { 'foo': 'baz' }
 >> order by foo desc;
  Query finished in 0 seconds
==='

+-----+
| foo |
+=====+
| qux |
|-----|
| foo |
|-----|
| baz |
|-----|
| baz |
|-----|
| bar |
|-----|
| bar |
|-----|
| bar |
+-----+

---
OK!

Thanks!


<EMAIL_ADDRESS>Fix shim/shortcut

This PR fixes broken a shim/shortcut caused by a change in the extracted folder structure since version 20.1.
Previously, the program executables resided in \\bin, but now they are in \\FreeCAD-portable\bin. I don't know if this change was intentional by the developers but until/unless they change it back, this fix is required for the scoop manifest...

/verify


[SPARK-24014][PySpark] Add onStreamingStarted method to StreamingListener

What changes were proposed in this pull request?
The StreamingListener in PySpark side seems to be lack of onStreamingStarted method. This patch adds it and a test for it.
This patch also includes a trivial doc improvement for createDirectStream.
Original PR is #21057.
How was this patch tested?
Added test.

Test build #89509 has started for PR 21098 at commit 68adfc6.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution/2435/
Test PASSed.

cc @HyukjinKwon

Test build #89509 has finished for PR 21098 at commit 68adfc6.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/89509/
Test PASSed.

Merging to master and branch 2.3.


Create extras submenu

Contains
Implements #3468
Screens:

engine:menu#start-record
engine:menu#start-replay
engine:menu#credits
engine:menu#telemetry-button
engine:menu#crash-reporter
moved to new menu item engine:ExtrasMenuScreen

How to test
Changes visible on main menu screen on game launch
Outstanding before merging

[ ] Will need translation work for engine:menu#extras-title

First pull request, so please let me know what should be changed 😄 I added the extras title to be consistent with the settings screen; not sure if that's necessary.

Can one of the admins please verify this patch?

Hey @andrasveto thanks for the quick response to a new item. Welcome! :-)
Your PR looks pretty good. A few comments:

Can you think of a reason to have two translation entries instead of one that's just used both for the button and the title? I'd probably just include a single "extras-label" then use it in both places
You should add the translation key(s) to menu.lang as well. It is essentially the blueprint with then the en file naturally holding the values for English
So long as both those files are modified you're good for translation on this PR 👍 The other languages where the key is missing will get flagged in our translation site next time it is updated
It helps if you confirm if you've tested the actual functionality of the moved buttons, just in case they might have been hooked up to something in their existing position :-)

Going to trigger our bot for automated testing. Just a few tweaks and this should be merge-ready!
@GooeyHub: ok to test

Hooray Jenkins reported success with all tests good!

Thanks for the review, @Cervator! I've consolidated translation entries and added the key to menu.lang.

Hooray Jenkins reported success with all tests good!

Appreciate the tweaks! Tested this out and merged :-)
I had two more trivial review comments but forgot to post them before merging. Fixed during merge with commit https://github.com/MovingBlocks/Terasology/commit/72d19c9e0c2c6d73781ebe41c3c4ca27d0c481bf if you'd like to see what. Also added you to the game credits there!
Original comments that go with those changes (and one tiny line break for a long line):

We multiline just about everything for consistency, so this would be on the full three natural lines. Another thing I'll just tweak real quick while merging :-)

Minor detail here: in this file the value needs to be the same as the key to indicate the default setup. Really, you'd think we could just go without this file, and maybe if we tidy up the system we can. For now I'll just change it to "extras-label" during a merge :-)


Fix the Hub Disconnected Homepage 404 on the Illustration

Feature
Exploring the Hub UI as a disconnected user
Expected outcome
The Hub illustration shows to the right of the Hub hero section.
Actual outcome
The Hub illustration results in a 404 when loading.
Browser
Brave, Chrome
Screenshots and context

Details

The illustration loads properly when working locally, so the issue has to do with production deployments. As outlined by the issue that @earth2travis linked (and I also checked other Vite apps I've deployed) and it looks like we want to have this in the /public assets folder instead of where we have it in src

This is a starting point but this may be tricky to test since it'll require a deployment to fully check the fix

@jonathanprozzi this issue card has not been filled out yet

https://github.com/vitejs/vite/issues/3980

PR: https://github.com/HausDAO/daohaus-monorepo/pull/711


openwsman: 2.6.0 -> 2.6.5

Motivation for this change
We haven't started using this yet, but I decided to clean it up in advance.
Cc: @deepfire
Things done

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

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build sblim-sfcc openwsman wsmancli


Add Update,Delete And Aggregate Queries 🔢

IN This PR I present the Update, Delete And Aggregate Queries:👨💻:
Below are some of my implementations as well as going over the project requirements 🤝 .
Requirements

use GitFlow 🌊.
Add to the schema.SQL file with the required content. ⛱

Add to the data.SQL file with the required content. 🛰

Add to the query.SQL file with the required content. 🧭

Transaction that updates the animals table by setting the species column to unspecified Then roll back the change.

Transaction that
‣ Update the animals table by setting the species column to digimon for all animals that have a name ending in mon.
‣ Update the animals table by setting the species column to pokemon for all animals that don't have species already set.

Transaction to delete all records in the animals table, then roll back the transaction.

Transaction to:
‣ Delete all animals born after Jan 1st, 2022.
‣ Create a savepoint for the transaction.
‣ Update all animals' weight to be their weight multiplied by -1.
‣ Rollback to the savepoint
‣ Update all animals' weights that are negative to be their weight multiplied by -1.
‣ Commit transaction

Query to answer How many animals are there.

Query to answer How many animals have never tried to escape

Query to answer What is the average weight of animals

Query to answer Who escapes the most, neutered or not neutered animals

Query to answer What is the minimum and maximum weight of each type of animal

Query to answer What is the average number of escape attempts per animal type of those born between 1990 and 2000

Achievements

use GitFlow 🌊 .✅
Add to the schema.SQL file with the required content. ⛱✅
Add to the data.SQL file with the required content. 🛰✅
Add to the query.SQL file with the required content. 🧭✅

Conclusion
We are looking forward to hearing 👂  from you Our CR in terms of what can be better implemented 👨💻  for the project thankyou!. And we look forward to hearing from you soon.  🙇

Thank you very much @NahnahAJ 🙏  for the great review ⭐.


This schema is missing the actions element.

toasts can take an actions element with action element children, this is missing from the schema documentation.

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

ID: 5fff893d-cf72-dbef-92c1-9ea3bc37d8f4
Version Independent ID: f5676d7c-7ca0-d9f9-89ba-1339e82db0cd
Content: Toast schema - Windows UWP applications
Content Source: winrt-related-src/schemas/tiles/toastschema/schema-root.md
Product: uwp
Technology: winrt-reference
GitHub Login: @GrantMeStrength
Microsoft Alias: jken

Thanks for the feedback. The toast schema docs have been updated to add several missing elements and undergo a tech review to make sure it is current.


[Compute] az vmss create: Add support of configure the rolling mode upgrade policy during VMSS creation

Related command

az vmss create/update
Description

Set upgrade policy to Rolling and configure the rolling upgrade policy during VMSS creation,
After creation, there are other commands that can set the upgrade policy to rolling, and @mimckitt also agrees that it is unnecessary to nest other commands together
https://github.com/Azure/azure-cli/blob/0b94accd014acff4393830e355a1e587334636cf/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py#L5482-L5511
close https://github.com/Azure/azure-cli/issues/28439
close https://github.com/Azure/azure-cli/issues/28440
Testing Guide

History Notes

[Compute] az vmss create: Add support of configure the rolling mode upgrade policy during VMSS creation
[Compute] az vmss update: Add new parameter --max-surge to support updating rolling upgrade policy max surge

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

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

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Compute


remove skip_cleanup parameter

This should allow travis to clean up all the leftover build artifacts,
giving us enough space to publish the json.

Sorry about the delay! :O

Hmmm, build time went to like 26 minutes :(

Oof, it's expected that the build time (on master only) would jump up significantly, but the build should still pass! I'm surprised that the cleanup didn't remove the directory entirely. Maybe adding a cargo clean --all?


Update Get-SPServerScaleOutDatabaseLogEntry.md

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint/Get-SPServerScaleOutDatabaseLogEntry.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


StyleCop applies rules if they are not present in custom ruleset file

I have the following ruleset file for testing purposes:
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="prbans ruleset" Description="prbans ruleset for testing" ToolsVersion="15.0">
</RuleSet>

When I build, I notice the following errors (and more) in my codebase:

I'd expect to see no warnings because there are no rules defined in my file to test against.
Couple of questions:

Is my assumption regarding no warnings expected as no rules defined correct?
If not, is there any documentation about default applied rulesets if no custom behavior is defined?

I'm using StyleCop v1.1.1-rc.114

You're assumption is incorrect. AFAIK when a ruleset does not contain a rule, the default behaviour for that rule will be active. For StyleCop.Analyzers that means producing a warning.
Unfortunately, I can't find any documentation that describes this behavior.

The behavior described by @vweijsters is correct. There is no way for us to change the behavior without breaking all existing users, so we are forced to close this as won't fix.


feature(map settings): hide map toolbar

Adding option for hide toolbar when marker is clicked. Solves issue https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1295 for plugin v 1.4.0.
Plugin v2 already supports this, but unfortunately without support of crosswalk...

Thank you for sending a pull request.
But as we already announced v1.x has been stopped.
Please make a pull request that support crosswork with the plugin v2.

This is already implemented as the mapToolbar property.
You can specify the Map.getMap() and map.getOptions().
    map.setOptions({
      'mapType': plugin.google.maps.MapTypeId.HYBRID,
      'controls': {
        'compass': true,
        'myLocationButton': true,
        'indoorPicker': true,
        'zoom': true,
        'mapToolbar': true   // <---    currently Android only
      },
     ...
  });

And also the v2 works with cross work.
https://github.com/mapsplugin/cordova-plugin-googlemaps-doc/blob/master/v2.0.0/Installation/crosswalk/README.md


fix: update Simplified Chinese and Traditional Chinese translation

Thank you.

You're welcome, I just did what I could.
By the way, group.leafy is me😄
and uBlacklist for Safari has been updated to 4.10.0

@HoneyLuka

By the way, group.leafy is me😄

Oh really? I appreciate your porting this extension to Safari. I look forward to you making it open-source :)


How to improve speed for GOPT

Hello everyone,
I am working on a project where I need to use GOPT to evaluate a voice record in real-time. I am using Yuan Gong tutorial to process each speak sentence but it is quite slow. I guess it is slow due to the overhead of loading the kadi model to extract the Gop feats. Any solution to this? I can only think of using PyKaldi to cache the model in the memory. Thanks

Hey,
Are you able to achieve this? I'm also working on a similar project to evaluate voice recordings in real-time. Could you tell me how you achieved this? I've encountered some errors, like "utt2spk" and "spk2utt" not matching. If you're willing, we can collaborate and develop a robust system where people can assist each other in recording their voices in real-time and evaluating them.
If anyone is interested in joining this effort, we can work together and accomplish it as soon as possible. I don't need any credits since I'm pursuing this for study purposes and out of passion. Anyone can take credit if desired.
Let me know if you're interested in collaborating!


Bump Django to 3.0.4 due to SNYK report

Thanks for submitting an issue! Below are a few things you can do to help us more quickly address the issue.
Checklist
I have…

[x] described in detail below both the behavior I expected and the behavior I observed.
[x] thoroughly outlined below the steps to reproduce this issue, including relevant technical details (e.g. device, operating system, browser, browser version).
attached screenshots illustrating relevant behavior

Expected Behavior
NA
Observed Behavior
Django released security fix in version 3.0.4. Update dependencies to use latest version over 3.0.2..
Steps to Reproduce
NA
Screenshots
NA

PR merged into master. Closing issue.


Updating projects.

Updating projects: documentation, make sure best practices are used and use of Dockerfile.templates

Should we update the resin site screenshots as well?

LGTM


refactor: split click UI from business logic for data cmds

splits click UI entry points from business logic and places them in a new instructlab/cli package
for data commands generate and list
Resolves #2402
Checklist:

[x] Commit Message Formatting: Commit titles and messages follow guidelines in the
conventional commits.
[ ] Changelog updated with breaking and/or notable changes for the next minor release.
[ ] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Functional tests have been added, if necessary.
[ ] E2E Workflow tests have been added, if necessary.

One question: are you planning to cover testing in this PR?

Good question
I think we may want to handle all the tests together - I think we will need to figure out how we want to structure the testing package, and where the tests themselves should live, where the common functions should be imported from etc

@Mergifyio refresh

@jaideepr97 please rebase this PR on top of main so we can run the large E2E job against it, thanks!

@mergifyio rebase


review feedback and bug fixes

Current dependencies on/for this PR:

main

PR #262

PR #263

PR #264

PR #274
PR #266

PR #272
PR #268

PR #269

PR #270

PR #273


Implement Drop for WindowEventHook

Developers may forget to call .unhook(). Implementing Drop on WindowEventHook can avoid this common pitfall.

Its not really required to call .unhook() as the hook will be cleared if the abort_tx is signaled, which happens when calling .unhook(), or if it is dropped, which happens when WinEventHook is dropped even without a custom Drop implementation.

The reason .unhook() exists is just to make errors from the hook background thread visible.


Correct minikube incantation for image-service-endpoint

The existing example fails to run for me.

boop

boop

/assign @steveperry-53

/approve

/approve
/lgtm
(thank you @r2d4 )


A "hello world" using aperture-java-core 2.30.0 is not working as expected

Hi,
I am trying to do a "Hello world" with Aperture for a simple Java app. At first I tried to run controller and agent locally and it wouldn't work,so I gave up and signed up for the SaaS trial. I provide my endpoint and key to the ApertureSDK.builder() as it can be found in many examples (although older examples use setAgentAddress()):
apertureSDK = ApertureSDK.builder()
    .setAddress("agents.us-central1.gcp.app.fluxninja.com:443")
    .setAPIKey("ababababababababbababa")
    .useInsecureGrpc(false)
    .build();

The call is successful. Next I create feature flow parameters:
Map<String,String> labels = new HashMap<>();
labels.put("a", "xyz");
FeatureFlowParameters params =
        FeatureFlowParameters.newBuilder("awesome-feature")
                .setExplicitLabels(labels)
                .setRampMode(false)
                .setFlowTimeout(Duration.ofMillis(1000))
                .build();

I then start a flow (I just put this into a loop with a delay between each try).
Flow flow = apertureSDK.startFlow(params);
if (flow.shouldRun()) {
    log.info("Flow accepted: "+flow.getDecision());
} else {
    log.info("Flow rejected: "+flow.getRejectionHttpStatusCode() );
}

flow.shouldRun() is always true, but the flow.getDecision()[.toString()] always yields "Unreachable", same result as I had when I ran against my local agent+controller.
When I try to end the flow
EndResponse end = flow.end();
if (end.getError()!= null) {
    log.error("Error ending flow: " + end.getError());
}

end.getError() is always not null and end.getError() reads "java.lang.IllegalStateException: Flow without check response"
I then tried
CheckResponse checkResponse = flow.checkResponse();

before the call to flow.end(), but checkResponse is null.
I guess I am missing something very basic here, any hints appreciated.

I debggued into this a bit, noticed that the timeout was maybe a bit short, so I increased it (tried up to 30sec). Alas, it always times out inside startFlow where a StatusRuntimeException is thrown:
io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: deadline exceeded after 2.999659300s. [closed=[], open=[[remote_addr=agents.us-central1.gcp.app.fluxninja.com/<IP_ADDRESS>:443]]]


Update dcl/schemas

Current dependencies in decentraland/gatsby

Version needed in Places: "@dcl/schemas": "^6.11.0"

wrong project


Casting arrays created with an int4 dtype produces incorrect results

Description
Creating an array with an int4 type and then casting it to int8 produces an array where the negative values are converted into the positive values that would have caused an overflow:
import jax.numpy as jnp

x = jnp.array([-8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7], dtype=jnp.int4)
print(x)
# [-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7]
print(x.astype(jnp.int8))
# [ 8  9 10 11 12 13 14 15  0  1  2  3  4  5  6  7]

The same is not true of arrays which were created with an int8 type and then double-casted:
import jax.numpy as jnp

x = jnp.array([-8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7], dtype=jnp.int8)
print(x.astype(jnp.int4))
# [-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7]
print(x.astype(jnp.int4).astype(jnp.int8))
# [-8 -7 -6 -5 -4 -3 -2 -1  0  1  2  3  4  5  6  7]

What jax/jaxlib version are you using?
0.4.14
Which accelerator(s) are you using?
CPU
Additional system info
Linux (Colab)
NVIDIA GPU info
No response

This is also problematic:
import jax.numpy as jnp
import numpy as np

x = jnp.array(np.arange(-8, 8), jnp.int4).astype(jnp.int8)
y = jnp.array(np.arange(-8, 8), jnp.int4).astype(jnp.int8)
print(x)
# [ 72 -23 -70 -37 -68  93  14  15   0   1   2   3   4   5   6   7]
print(y)
# [-8 -7 -6 -5 -4 -3 -2 -1  0  1  2  3  4  5  6  7]

Restarting the runtime also yielded different results:
import jax.numpy as jnp
import numpy as np

x = jnp.array(np.arange(-8, 8), jnp.int4).astype(jnp.int8)
y = jnp.array(np.arange(-8, 8), jnp.int4).astype(jnp.int8)
print(x)
# [  8   9  10  11  12  13  14 -49 -16 113 -78 -13  36 117   6   7]
print(y)
# [  -8   -7   74   75   44  -67  -50 -113 -112   49    2  -13   36  117    6    7]

Hmm, yeah int4 is buggy on anything that isn't a TPU right now. We should put up some "under construction" signs around it.

https://github.com/openxla/xla/pull/5759 should fix this.

This is fixed!


[1.12] Crash on Gameload

Issue description:
Minecraft doesn't load at all and crashes during the loadingscreen
Steps to reproduce:

install Forge, mekanism and mekanism generators
start the pack
crash

Version (make sure you are on the latest version before reporting):
Forge: <IP_ADDRESS>23
Mekanism: <IP_ADDRESS>0
Mekanism Generators: <IP_ADDRESS>0
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
https://pastebin.com/ViVM2KQY

Seems to me that a mod you use has outdated api i have tried forge <IP_ADDRESS>23 and only Mekanism and no crashing on load and
net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from Mekanism (mekanism)
Caused by: java.lang.NoClassDefFoundError: mekanism/api/MekanismAPI$BoxBlacklistEvent
in your pastebin tells me that is the issue possibly but not 100% certain but if you remove mods 1 By 1 and see if it crashes and when it stops crashing you have found that which mod is makin mekanism crash with its outdated api

You seem to have a mod that's bundling our API (a no-no to begin with), but it's bundling the 1.7 version.
So yeah, you'll need to remove mods til it stops, or add them until it does, as your reproduction steps do not match your log.


Fixed errors endpoints

This PR contains:

Added task for travis to update goreport in branch master
Added tests
Pending to merge PR #17

Coverage increased (+3.6%) to 76.263% when pulling 4bc6216905551463b5bfc7e6af467e723e54ad8a on mresti:fixed_errors_endpoints into 8a9419e861ea02a452fa4744b46d700370f50a47 on ManageIQ-Exchange:master.


fix: Incorrect zoom on Android < 11

What
This PR fixes incorrect zoom on Android < 11 and clamps zoom as out-of-bounds values can cause crashes (zoom={0.5} on Galaxy S8+). Additionally, iOS also clamps zoom so this makes it consistent.

Changes

Zoom cropping of camera preview and takePhoto() (Android < 11).
Clamp zoom of camera preview and takePhoto() to camera device's min and max zoom (Android).

Tested on
Samsung Galaxy S8+, Android 9

Related issues

Fixes #1865

Hey, thanks for your PR!

Thanks man, released in 3.2.0!

Thanks!
Just downloaded it and a duplicate FrameProcessorsUnavailableError sneaked into CameraError.kt. After removing it, the build goes through :)

Wait what? Is there a bug on main?
If yes, can you submit a PR to fix that?
Thanks!


javaexec leaks classloaders

I suspect that javaexec is leaking classloaders since 3.2-rc-1. I'm using javaexec to trigger other Gradle builds:
javaexec {
     classpath 'wrapper/gradle-wrapper.jar'
     main = 'org.gradle.wrapper.GradleWrapperMain'
     args ['-b', 'externalBuildFile.gradle', 'externalTask']
}

This externalBuildFile.gradle imports an Ant taskdef that where the impl loads native libraries. Now, when I execute this block twice, with 3.2-rc-1 I get an error the second time:

java.lang.UnsatisfiedLinkError: Native Library /full/path/to/my.so already loaded in other classloader

It works fine when running the same with Gradle 3.1.
Expected Behavior
Classloaders that are instantiated for javaexec should be closed once done.
Your Environment
Linux Mint 18

Thanks for reporting. Could you provide us with more information on what the externalTask is doing e.g. what Ant task are you using/what native library are you loading? A reproducible example would be very useful for analyzing the root cause of your issue. Do you think you could put together a minimalistic sample project?

Hi Benjamin, I might have jumped the gun here. It turns out that the same issue occurs in 3.1 when running the entire build twice with the same daemon. Are you still interested?
The library is proprietary, so I'd need to spend quite an effort to create a minimalistic repro.

Thanks, that's good to know. I'd say let's investigate this more if it's really bothersome to you. Your call. Is this also happening for your build with 2.x plus the daemon enabled?

JavaExec spawns another process, so I don't see how it would leak classloaders. @astellingwerf is this still happening for you with recent Gradle versions?

I'm going to close this issue, as there is not enough information to reproduce. Please don't hesistate to follow up with more information if this is still an issue.


Simple example of csv to Mysql

I can see that there are operators for S3 but I am looking for an example where I have to pull a CSV file from a remote location after sftp to that remote server and then unzip that sftped csv.zip file and then load that file on Mysql and on success send an Email.
Nothing to do with S3 or Hive , I just need a very basic example with above setup. Any pointers?

You can write a python function that does all of this using hooks and then use PythonOperator to run it.

If you can encapsulate your logic in Python, you can simply use a PythonOperator. No need to master the array of different custom operators. Personally, I pretty much only use BashOperator and PythonOperator for everything. I leverage boto when I need to do anything AWS related.
For your case above, you can

Use a BashOperator to execute the FTP
Use a BashOperator to unzip the downloaded file
Load the file into your MySQL library using the PythonOperator using your connector of choice
Send an email using the EmailOperator


Typing is significantly slowed down with specific words, such as configuration presented in the text editor

workflow is another keyword that slows down the editor.

Fixed with fc22c636


Wrong (http) scheme detected when used in kubernetes environment

With the following setup we are getting a wrong scheme.
Our C# WebApi with swagger API documantation is running in a pod behind a NGINX ingress controller. Nginx is doing the https handling using LetsEncrypt and passes the API calls to the WebApi. We also using kubernetes namespaces for the different environments like staging or prod.
What we observe is that the generated swagger doc shows the server base url as http (also every rest function call using "try". But the UI is correwectly shown as https. But Nginx forwardes the rest call to the WebApi using htpp.
The funny thing is the same setup in staging environment is working correctly. The docker image for the WebApi is the same in staging and prod, Nginx is the same for all environments, the used inresses are differ only in namespace and names.
Any idea what can cause this issue? How is Nginx passing the http/https scheme info to the API in case Nginx is using http to communicate with the WebApi?
Hope you can help as we kinda stuck for now :-(
Best regards

This sounds like you're missing the call to UseForwardedHeaders in your Startup file. Your nginx ingress is forwarding information about the original requests using the X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Proto header, but you need to tell .NET to trust those.
Note that the KnownNetworks and KnownProxies are supposed to contain trusted sources. If you add untrusted sources to these list, then those untrusted sources can send any X-Forwarded-* headers and .NET will trust those.
My example below is for .NET Core 3.1.
var forwardedHeadersOptions = new ForwardedHeadersOptions {
    ForwardedHeaders = ForwardedHeaders.All,
};
forwardedHeadersOptions.KnownNetworks.Clear(); // Add your trusted networks here.
forwardedHeadersOptions.KnownProxies.Clear(); // Add your trusted proxies here.
app.UseForwardedHeaders(forwardedHeadersOptions);

Are you still experiencing this issue? As noted above, this sounds like an ASP.NET Core issue with configuring forwarded headers and trusted networks/IPs.


Model.create() with Array argument bug

Model.create([oneObject]) (array argument) is running beforeSave/beforeValidation twice
First time record.isNewRecord equals true. Second one record.isNewRecord equals false

Thanks, I'll check that. Should call beforeSave hook only once.

Postgres only:
beforeSave was called once for the initial create (Multi insert) and a second time for an additional save. In order to mix new records with existing records, the second save call was added to make sure that everything got stored.
I've added additional code to ignore the second save for already inserted records.
Thanks

Please check v.2.8.3


Placeholder not working as expected

Hi, I was playing with your OnboardingWithPlaceholderActivity and I found the layer-list drawable that you use for the placeholder doesn't render as what is shown in your post. The whole screen is blue instead of having the height you specify.
After some experiments, I was able to fix the problem by swapping the order of the items in the layer-list  drawable (grey color on top of blue color) and set a top offset for grey which equals to the height of the toolbar. I don't know why setting a height for item in layer-list doesn't work for me.

Here's a gif for the bug I see: http://g.recordit.co/d4SYFvzlTU.gif

Unfortunately, this workaround introduces overdraw as the blue color is filling up the whole screen below the grey color...

It's seems only work on Android version above Marshmallow.
Just preview ll_toolbar_placeholder.xml Android Studio will render the result.


Upgrade typescript and cut some weight from the packed extension

Describe here what is this PR about and what we are achieving merging this.

Upgrade typescript and cut some weight from the packed extension

Like I mentioned before, there is code in the extension no longer being executed. Before releasing 0.25, I believe we should remove it.

Thank you for your contribution!
Before submitting this PR, please make sure:

[ ] Your code builds clean without any errors or warnings
[ ] You have made the needed changes to the docs
[ ] You have written a description of what is the purpose of this pull request above

@mtxr I've pushed a few changes I needed to make so that the pack:all script would run on my Windows dev workstation. But I'm finding that the driver VSIXes are broken. For example if I install the 0.25.0 VSIX of the main extension and only the 0.4.0 VSIX of the SQLite driver (leaving the other bundled ones at the latest Marketplace versions, 0.3.0) then the 0.3.0 drivers register OK but the 0.4.0 one fails, Messages in the log:
[1663178193535] INFO  (ls): REQUEST RECEIVED => ls/RegisterPlugin
[1663178193535] INFO  (ls): request to register plugin: "c:\Users\JohnM\.vscode\extensions\mtxr.sqltools-driver-sqlite-0.4.0\out\ls\plugin.js"
[1663178193680] ERROR (ls): Error registering plugin: {}
    error: {}
[1663178193680] ERROR (ext): ERROR: Error loading plugin SQLite Plugin Request ls/RegisterPlugin failed with message: ls is not defined, {"code":-32603}
    ns: "error-handler"
[1663178194540] INFO  (ext): EXECUTING COMMAND => sqltools.refreshTree
[1663178194540] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"
[1663178204609] INFO  (ext): EXECUTING COMMAND => sqltools.showOutputChannel

The output from my yarn run start has this warning that looks significant:
ext:
  1 asset
  364 modules
  ext (webpack 5.74.0) compiled successfully in 11388 ms

ls:
  1 asset
  172 modules

  WARNING in ../packages/language-server/src/server.ts 64:53-60
  Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

  ls (webpack 5.74.0) compiled with 1 warning in 11763 ms

ui:
...

Are you able to run the VSIXes you build?

I know how to fix it. Let me take care


[GOBBLIN-1658]

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[X] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1658

Description

[X] Here are some details about my PR, including screenshots (if applicable):
Remove extra parameter from user side differentiating snapshot and partitioned copy. User shouldn't have to provide this flag. We can generalize the default values of partition format, column, and conflict policy without knowing this.

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:
I updated the unit test for HiveDatasetDescriptor and am testing both snapshot and partition hive copies with local deployment of GaaS to see if the default values set work. [Will update here with details]

Commits

[X] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #3518 (0a2b501) into master (e814aaf) will decrease coverage by 3.22%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3518      +/-   ##
============================================
- Coverage     46.72%   43.49%   -3.23%
+ Complexity    10426     2043    -8383
============================================
  Files          2080      405    -1675
  Lines         81318    17476   -63842
  Branches       9075     2135    -6940
============================================
- Hits          37994     7602   -30392
+ Misses        39829     9027   -30802
+ Partials       3495      847    -2648

Impacted Files
Coverage Δ

...service/modules/dataset/HiveDatasetDescriptor.java

...rg/apache/gobblin/converter/IdentityConverter.java

...te_catalog/ObservingFSFlowEdgeTemplateCatalog.java

.../java/org/apache/gobblin/metrics/Measurements.java

...va/org/apache/gobblin/source/workunit/Extract.java

...gobblin/compaction/CompactorCreationException.java

...che/gobblin/runtime/api/GobblinInstanceDriver.java

...ment/conversion/hive/validation/ValidationJob.java

...apache/gobblin/writer/GobblinOrcWriterBuilder.java

...a/management/copy/hive/HiveLocationDescriptor.java

... and 1667 more

Continue to review full report at Codecov.

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


set a crash limit for automatic crash reports into services

Describe the solution you'd like
Allow to define when a new crash group should be reported to a connected service (jira, github etc.)
Describe alternatives you've considered
turning reportin off, currently I am flooded with hundreds of minor reports from old app versions.
Additional context
this was possible in hockeyapp, please fix and make it possible again.

Hi @iAgentur thanks for the feature request! This is on our radar and we have plans to improve our bug tracker experience and make it more customizable. Due to other priorities at this time, I don't have an ETA for you but we will keep this thread open to track interest and post updates if we have any.

This seems to be a related to #901

wondering if there's any update on this ! this seems to be a missing feature on the current AppCenter still !


source_id registration of NUIST-ESM-v3

Label = NESM v3
label_extended = NUIST ESM v3 (This entry is free text for users to contribute verbose information)
source_id = NESM3 (an alternative could be "ACCESS1-0")
institution_id = NUIST
release_year = 2016
activity_participation = [CMIP]
aerosol:
description = none
nominal_resolution = none
atmos:
description = ECHAM v6.3 (T63; 192 x 96 longitude/latitude; 47 levels; top level 1 Pa)
nominal_resolution = 200 km
atmosChem:
description = none
nominal_resolution = none
land:
description = JSBACH v3.1
nominal_resolution = 2 km
landIce:
description = none
nominal_resolution = none
ocean:
description = NEMO v3.4 (NEMO v3.4, tripolar primarily 1deg; 384 x 362 longitude/latitude; 46 levels; top grid cell 0-6 m)
nominal_resolution = 100 km
ocnBgchem:
description = none
nominal_resolution = none
seaIce:
description = CICE4.1
nominal_resolution = 100 km

Hi, the information fo NUIST-ESM-v3 has not been shown on https://rawgit.com/WCRP-CMIP/CMIP6_CVs/master/src/CMIP6_source_id.html, although I have registered for it by generating the above issues. Is there any problem or anything else I need to do?  Thanks.

@durack1, Thanks! We have checked the information of our mode NESM3 listed on  CMIP6_source_id.html. No problem is found. Thanks a lot!


Updated 'time' field for Shatter & Explosive Rebar from 6 to 12

Fixes https://github.com/factoriolab/factoriolab/issues/878

I'll merge this, but this will only fix the issue on the main branch, not on the next branch. I can fix it there myself later, likely Monday, or you're welcome to submit the same type of PR to the next branch yourself.


[Notifier] Enable auto-configuration for the GoIP bridge  in notifier.yaml

Q
A

License
MIT

Doc issue/PR

This has been forgotten to be set/enabled when the recipe was introduced for the first time.

😆😆


Duplicated timeseries in CollectorRegistry

Hi,
First, thanks for the great tool. This has been so useful for making our cost data more visible.
I am getting a regular panic every other time the costs are queried from AWS.

  |   | 2024-11-21 02:12:25.547 | ValueError: Duplicated timeseries in CollectorRegistry: {'aws_daily_cost_by_service_by_account'} |
  |   | 2024-11-21 02:12:25.547 | raise ValueError( |
  |   | 2024-11-21 02:12:25.547 | File "/usr/local/lib/python3.10/site-packages/prometheus_client/registry.py", line 43, in register |
  |   | 2024-11-21 02:12:25.547 | registry.register(self) |
  |   | 2024-11-21 02:12:25.547 | File "/usr/local/lib/python3.10/site-packages/prometheus_client/metrics.py", line 143, in __init__ |
  |   | 2024-11-21 02:12:25.547 | super().__init__( |
  |   | 2024-11-21 02:12:25.546 | File "/usr/local/lib/python3.10/site-packages/prometheus_client/metrics.py", line 365, in __init__ |
  |   | 2024-11-21 02:12:25.546 | self.aws_daily_cost_usd = Gauge(self.metric_name, "Daily cost of an AWS account in USD", self.labels) |
  |   | 2024-11-21 02:12:25.546 | File "/app/exporter.py", line 40, in __init__ |
  |   | 2024-11-21 02:12:25.546 | app_metrics = MetricExporter( |
  |   | 2024-11-21 02:12:25.546 | File "//main.py", line 118, in main |
  |   | 2024-11-21 02:12:25.546 | main(config) |
  |   | 2024-11-21 02:12:25.546 | File "//main.py", line 138, in <module> |
  |   | 2024-11-21 02:12:25.546 | Traceback (most recent call last):

I am using the default polling_interval_seconds: 28800 setting. Do I need to tweak that setting?

Hi @adampointer, the issue has been fixed by PR #23. I will wait a bit to release a new version because another open PR is almost done. Let's see if that one can be closed by today or tomorrow. I won't let you wait for too long :)

Hi again, to not block you, I have released the fix in https://github.com/electrolux-oss/aws-cost-exporter/releases/tag/v1.0.7 Feel free to try it out and get back to me if there are other issues. I am going to close this one :)


[WIP] Bugfix/Re-evaluate split error

Checklist

[x] I tested the changes and all related features on the test server https://artemistest.ase.in.tum.de.
[x] I documented my source code using the JavaDoc / JSDoc style.
[x] I added integration test cases for the server (Spring) related to the features
[x] I added integration test cases for the client (Jest) related to the features
[x] I added screenshots/screencast of my UI changes
[x] I translated all the newly inserted strings

Description
When re-evaluating quiz questions the method parseTextHintExplanation throws an TypeError: Cannot read property 'trim' of undefined

This is caused by a wrong RegEx for splitting up the markdown text.
Steps for Testing

Log in to ArTEMiS
Navigate to Course Administration
Go to a MC quiz that offers the re-evaluate button and click on it
Change option contents and save changes
Check whether the changes have been applied correctly and the browser console doesn't show the error message

Screenshots
There are no UI changes

Have you checked that the parsing still works in all other cases, e.g. while creating a quiz?

@krusche Yes, parsing in general works for quiz exercises and this parsing method parseTextHintExplanation is only used when editing short answer questions or re-evaluating multiple-choice questions, which is fixed with this PR.

@thilo-behnke thank you for your review and remarks! I changed the code based on your suggestion and also added some tests. Can you have a look at it?


Upgrade to latest pretty-error

Thanks for building this! Yarn/NPM throws warnings about some renamed modules. Would be great to have this caught up to the pretty-error module (et al).
Thanks!

PRs welcome :)


Integration tests could be flakey if they depend on LLM output

I ran bash scripts/test.sh at d908d1d and got failure:
$ bash scripts/test.sh
+ pytest tests
================================================================================================================================= test session starts =================================================================================================================================
platform linux -- Python 3.11.5, pytest-7.4.2, pluggy-1.3.0
rootdir: /home/jeanluc/Code/shell_gpt
plugins: asyncio-0.21.1, anyio-3.7.1
asyncio: mode=Mode.STRICT
collected 25 items

tests/test_integration.py ..............F.........                                                                                [ 96%]
tests/test_unit.py .                                                                                [100%]

====================================================================================================================================== FAILURES =======================================================================================================================================
____________________________________________________________________________________________________________________________ TestShellGpt.test_repl_shell _____________________________________________________________________________________________________________________________

self = <tests.test_integration.TestShellGpt testMethod=test_repl_shell>

    def test_repl_shell(self):
        # Temp chat session from previous test should be overwritten.
        dict_arguments = {
            "prompt": "",
            "--repl": "temp",
            "--shell": True,
        }
        inputs = ["What is in current folder?", "Simple sort by name", "exit()"]
        result = runner.invoke(
            app, self.get_arguments(**dict_arguments), input="\n".join(inputs)
        )
        assert result.exit_code == 0
        assert "type [e] to execute commands" in result.stdout
        assert ">>> What is in current folder?" in result.stdout
        assert ">>> Simple sort by name" in result.stdout
>       assert "ls -la" in result.stdout
E       AssertionError: assert 'ls -la' in 'Entering shell REPL mode, type [e] to execute commands or [d] to describe the commands, press Ctrl+C to exit.\n>>> What is in current folder?\nls\n>>> Simple sort by name\nls | sort\n>>> exit()\n'
E        +  where 'Entering shell REPL mode, type [e] to execute commands or [d] to describe the commands, press Ctrl+C to exit.\n>>> What is in current folder?\nls\n>>> Simple sort by name\nls | sort\n>>> exit()\n' = <Result okay>.stdout

tests/test_integration.py:287: AssertionError
=============================================================================================================================== short test summary info ===============================================================================================================================
FAILED tests/test_integration.py::TestShellGpt::test_repl_shell - AssertionError: assert 'ls -la' in 'Entering shell REPL mode, type [e] to execute commands or [d] to describe the commands, press Ctrl+C to exit.\n>>> What is in current folder?\nls\n>>> Simple sort by name\nls | sort\n>>> exit()\n'
======================================================================================================================= 1 failed, 24 passed in 97.68s (0:01:37) =======================================================================================================================

This is because my sgpt returned ls instead of ls -a.
Since LLM output is non-deterministic, is it a good idea to have integration tests that depend on it?

I agree, this is not the best solution to test sgpt. Integration tests will be replaced by "mocked" tests in https://github.com/TheR1D/shell_gpt/pull/442


Strange CLI behavior: CLI does not seem to write to either stdout (FD 1) or stderr (FD 2), making output impossible to redirect.

VSCode Version: Code - Insiders 1.3.0-insider (a21c12346f388e51858c930875ca30968604c116, 2016-06-30T05:07:11.570Z)
OS Version: Windows_NT ia32 10.0.14372

Strange CLI behavior: the VS Code CLI does not seem to write to either stdout (FD 1) or stderr (FD 2), making output impossible to pipe to e.g. grep to search for a particular flag, and making it impossible to hide output in scripting (not that I can think of a good reason you would want to script the code CLI).
Steps to Reproduce:

Run code-insiders -h > NUL from cmd
Observe that output is still printed
Run code-insiders -h 1> NUL from cmd
Observe that output is still printed
Run code-insiders -h 2> NUL from cmd
Observe that output is still printed

I have the completely same issue.
I'm creating a script to backup/restore extensions using --list-extensions but I cannot redirect the output from --list-extensions...

Seems fine on Linux, are these commands supposed to work on windows?
~/dev/Microsoft/vscode @master
❯ code-insiders -h
Visual Studio Code v1.4.0-insider

Usage: code [arguments] [paths...]

Options:
  -d, --diff                  Open a diff editor. Requires to pass two file paths as arguments.
  --disable-extensions        Disable all installed extensions.
  -g, --goto                  Open the file at path at the line and column (add :line[:column] to path).
  --locale <locale>           The locale to use (e.g. en-US or zh-TW).
  -n, --new-window            Force a new instance of Code.
  -r, --reuse-window          Force opening a file or folder in the last active window.
  --user-data-dir <dir>       Specifies the directory that user data is kept in, useful when running as root.
  --verbose                   Print verbose output (implies --wait).
  -w, --wait                  Wait for the window to be closed before returning.
  --list-extensions           List the installed extensions.
  --install-extension <ext>   Installs an extension.
  --uninstall-extension <ext> Uninstalls an extension.
  -v, --version               Print version.
  -h, --help                  Print usage.

~/dev/Microsoft/vscode @master
❯ code-insiders -h 1> output

~/dev/Microsoft/vscode @master ?
❯ cat output
Visual Studio Code v1.4.0-insider

Usage: code [arguments] [paths...]

Options:
  -d, --diff                  Open a diff editor. Requires to pass two file
                              paths as arguments.
  --disable-extensions        Disable all installed extensions.
  -g, --goto                  Open the file at path at the line and column (add
                              :line[:column] to path).
  --locale <locale>           The locale to use (e.g. en-US or zh-TW).
  -n, --new-window            Force a new instance of Code.
  -r, --reuse-window          Force opening a file or folder in the last active
                              window.
  --user-data-dir <dir>       Specifies the directory that user data is kept
                              in, useful when running as root.
  --verbose                   Print verbose output (implies --wait).
  -w, --wait                  Wait for the window to be closed before
                              returning.
  --list-extensions           List the installed extensions.
  --install-extension <ext>   Installs an extension.
  --uninstall-extension <ext> Uninstalls an extension.
  -v, --version               Print version.
  -h, --help                  Print usage.

Perhaps this is related to code.sh or code.cmd here? PRs welcome if that is the case.

This seems to be a problem with electron rather than VSCode specifically. See e.g. electron/electron#683 and electron/electron#4552
The workaround I'm using is to set the ELECTRON_NO_ATTACH_CONSOLE environment variable inside of the node process before spawning any instances of code:
process.env.ELECTRON_NO_ATTACH_CONSOLE = true;

const { execSync } = require('child_process');

const installedExtensions = execSync('code --list-extensions')
  .toString()
  .split('\n')
  .filter(Boolean);

// outputs an array
console.log(installedExtensions);

It seems that the current stable version, 1.7.2 works correctly. I think we can close the issue now.
Version 1.7.2
Commit 7ba55c5860b152d999dda59393ca3ebeb1b5c85f
Date 2016-11-21T22:06:37.428Z
Shell 1.3.8
Renderer 52.0.2743.82
Node 6.5.0

I guess it was fixed upstream at some point then, thanks for letting me know @espresso3389.

Verified on Windows 10.


Fix wrong value in layer selector

SDK-369

Coverage decreased (-0.08%) to 70.586% when pulling a752411e166c7169cba6d2d833e44c6e056cc886 on layer-selector-fix into b567b6decc7ad4b73c0a399daaefc9b12d454f81 on master.


fix: Modal onClose behaviour

Github seems to have made some changes, I don't get an edit filed any more when merge the PR and it picks the latest commit message instead of the title, therefore, https://github.com/carforyou/carforyou-components-pkg/pull/216 was not released 😕

My bad somehow message up the squash merge


#602 RqForm.java:290-294: Fake ctor.

#602 RqForm.java:290-294: Fake ctor. I moved constructor parameter validation to method validate. I moved building of request body to construct method.

@xupyprmv Thanks, let me find someone who can review this pull request

@hdouss review this one, please

@xupyprmv Please see 3 comments above.

@HDouss Thanks for CR. I modified code according to your CR. Please continue.

@xupyprmv Thanks.

@rultor merge.

@rultor merge.

@hdouss Thanks for your request. @yegor256 Please confirm this.

@rultor merge

@rultor merge

@yegor256 OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@xupyprmv @yegor256 Oops, I failed. You can see the full log here (spent 2hr)
 * [new branch]      #544       -> fork/#544
 * [new branch]      #558       -> fork/#558
 * [new branch]      #602       -> fork/#602
 * [new branch]      #604       -> fork/#604
 * [new branch]      602        -> fork/602
 * [new branch]      gh-pages   -> fork/gh-pages
 * [new branch]      master     -> fork/master
+ args=
+ '[' default == default ']'
+ args=' --ff'
+ '[' default == no ']'
+ '[' default == only ']'
+ export BRANCH=__rultor
+ BRANCH=__rultor
++ wc -l
++ git show-branch __rultor
+ '[' 0 -gt 0 ']'
+ git checkout fork/#602
Note: checking out 'fork/#602'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b new_branch_name

HEAD is now at c597729... update according to CR
+ git checkout -b __rultor
Switched to a new branch '__rultor'
+ git checkout master
Switched to branch 'master'
+ '[' false == true ']'
+ '[' false == true ']'
+ git merge --ff __rultor
Merge made by the 'recursive' strategy.
 src/main/java/org/takes/rq/RqForm.java | 58 +++++++++++++++++++---------------
 1 file changed, 32 insertions(+), 26 deletions(-)
+ docker_when_possible
+ true
++ uptime
++ sed 's/ /\n/g'
++ tail -n 1
+ load=6.04
++ bc
++ echo 6.04 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 6.04, low enough to run a new Docker container'
load average is 6.04, low enough to run a new Docker container
+ break
+ cd ..
+ '[' -n '' ']'
+ use_image=yegor256/rultor
+ docker pull yegor256/rultor
Using default tag: latest
Trying to pull repository docker.io/yegor256/rultor ... Repository docker.io/yegor256/rultor already being pulled by another client. Waiting.
'pid' file is absent, something was broken

Trying to pull repository docker.io/yegor256/rultor ... Repository docker.io/yegor256/rultor already being pulled by another client. Waiting.
'pid' file is absent, something was broken

@yegor256 please run merge again.

@yegor256 please continue with merge

@yegor256 initiate merge again, please

@rultor merge

@rultor merge

@yegor256 OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@yegor256 Done! FYI, the full log is here (took me 14min)

@elenavolokhova please, let us know what do you think about this ticket, according to our QA rules

@rultor deploy

@HDouss

There were two empty lines before. One empty line now. Github not shows last empty line when you view the file (you can check other files, to prove it). But if you view it on your local file system - file is OK: one empty line at the end of file.

According to our quality rules:

Messages in a ticket always start with a name of a user they are addressed to.

As far as you are the performer of this ticket you are responsible for its quality. Please make sure that everyone follows this rule in your tickets in the future. Ask them to fix issues before closing the ticket.
Please confirm that everything is clear and you have no questions regarding this approach.

@rultor deploy

@davvd OK, I'll try to deploy now. You can check the progress here

@rultor deploy

@davvd Done! FYI, the full log is here (took me 20min)

@davvd Quality is acceptable here.

@elenavolokhova It's clear now. Thanks.

@davvd Quality is acceptable here.

@elenavolokhova thanks for the review, we'll try better next time

@hdouss just added 10 mins to @elenavolokhova (for QA), payment ID is 79202407; Much obliged! I have added 15 mins to your account in payment "79202429", 336 hours and 14 mins spent; +15 added to your rating, at the moment it is: +3321


sendMessage not actually sending any messages

General Troubleshooting

[x] I have checked for similar issues.
[x] I have updated to the latest JDA version
[x] I have checked the wiki and especially the FAQ section for similar questions.

Question
When i use the sendMessage method, it sends no message, whether it be text or if its an embed, it just does nothing. The bot has all the other info i gave it, like it having a custom "playing game" message and it says its online, it just doesn't send a message.

Example Code
Main.java
package com.GLE.Bot;
import net.dv8tion.jda.api.OnlineStatus;
import net.dv8tion.jda.api.entities.Activity;
import net.dv8tion.jda.api.JDA;
import net.dv8tion.jda.api.JDABuilder;

import javax.security.auth.login.LoginException;

public class Main {

    public static JDA jda;
    public static String prefix = "$";

    public static void main(String[] args) throws LoginException {
        JDA jda = JDABuilder.createDefault("My Bot Token").build();
        jda.getPresence().setStatus(OnlineStatus.ONLINE);
        jda.getPresence().setActivity(Activity.playing("Yeetus Deletus"));
       jda.getPresence().setActivity(Activity.listening("commands"));
       jda.addEventListener(new Commands());
    }
}

Commands.java
package com.GLE.Bot;
import net.dv8tion.jda.api.EmbedBuilder;
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;

public class Commands extends ListenerAdapter {
    public void onGuildMessageReceived(GuildMessageReceivedEvent event) {
        String[] args = event.getMessage().getContentRaw().split(" ");

        if (args[0].equalsIgnoreCase(Main.prefix + "info")) {
            EmbedBuilder info = new EmbedBuilder();
            info.setTitle("It worked.... not");
            info.setDescription("oh no");
            info.addField("Creator", "Mistake #1", false);
            info.setColor(0xf26500);

            event.getChannel().sendTyping().complete();
            event.getChannel().sendMessage(info.build()).queue();
            info.clear();
        }
    }
}

Why are you using Info#Clear()? Try to remove that line.

And you should use JDA#addEventListeners() not JDA#addEventListener()

@RedstonecraftHD JDA#addEventListeners doesn't exist. And you should use JDABuilder#addEventListener to make sure events are fired from the start.
@EvanGrimes There could actually be multiple reasons, read the info section from the Troubleshooting wiki entry and check for every item.

I copied your code and it works just fine:

This seems to be an issue in your setup. JDA is working as expected, I suggest you start using a debugger and make sure your bot has access and permissions to respond. For further questions you can join our discord server


Make _site directory a variable

Good for testing and examples

And switch over to temp dirs while you're there. Build the site once to a tmp dir. Run loads of checks on the output. Burn it.


Replica placement improvements

This PR attempts to make better choices around replica selection when workers aren't spread across multiple zones. The algorithm always tries to pick the replica that is RF # lexicographically greater than the primary (so the first replica is 1 worker over, the. 2nd is 2 workers over, etc).  I could make it use the same logic though. All of my current tests have just hit the optimal placement logic. Actually I need to look into when the best effort logic kicks in...

BTW, sorry for the delay on this. We've had some other issues pop up that have been taking my time. I should be able to get back to fixing this next week.

no worries! you have been super helpful 👍
Please let me know if there's any way I could contribute to this PR if you don't have the cycles.

I could make it use the same logic though.

I don't know if that would work. I don't see k8s nodes being checked in the old logic as well.

it should at least try to place replicas on different k8s nodes from primaries

@cin I tried adding on to your PR to add this functionality. Here is the code. I tested it and it seems to be working fine for me.

it should at least try to place replicas on different k8s nodes from primaries

@cin I tried adding on to your PR to add this functionality. Here is the code. I tested it and it seems to be working fine for me.

@4n4nd Have you seen the BestEffort scheduling kick in? I've only seen the optimal route hit in my testing.
I think I've gotten the replica removal logic to follow the same pattern as the placement. If you get some time, maybe give it a whirl and see if it works for your use case.

@4n4nd Have you seen the BestEffort scheduling kick in? I've only seen the optimal route hit in my testing.

yeah actually. I have a small 4 nodes cluster. I divide the nodes into 2 zones and increase the number of replicas to 3 or more so the operator runs out of new zones and goes into BestEffort mode.

I think I've gotten the replica removal logic to follow the same pattern as the placement. If you get some time, maybe give it a whirl and see if it works for your use case.

Will give it a go. Thanks!

@cin I tried it out and the scheduling seems to be working fine as long as it is using the optimal placement strategy. But during best effort placement, it doesn't really change much.
The following if statement just skips optimal placement of replicas and goes straight to best effort placement if replication factor is greater than the number of zones.
if int(replicationFactor) < len(zones) {
  // skip this zone if it is the same as the primary zone or if this primary already has replicas in this zone
  if primary.Zone == zone || SameZone(zone, primaryToReplicas[primary.ID]) {
	continue
  }
}

And best effort placement just picks the first available pod. I think this can be improved by adding a simple loop that checks if any replicas or primaries for a shard are present in the same node (A zone can have multiple k8s nodes).

@cin I was thinking instead of the operator managing the pods individually, maybe it would make more sense to use Deployments or Statefulsets. That way we could let the k8s scheduler worry about the pod spread and replica placement. Wdyt?

@4n4nd Our team talked about doing this a while back, but it will be a lot of work. There are also many unknowns, so trying to estimate the scope of the work would be difficult (we didn't start this project and there are many areas of the code I have not even looked at). So we went with a lighter touch and tried to work with what we have. Statefulsets would probably be a good approach to deal with this but there are still scheduling issues that would be encountered (especially when the number of pods % nodes is not zero and/or nodes are shared). There are also quite a few different ways to use statefulsets here. Either way though, I think we'd still have to deal with picking the right replicas for primaries. I wish you could just set primary-0's replicas to replica1-1, replica2-2, etc but there's no guarantee about where these pods will be scheduled relative to one another. And of course shared nodes throws that off even more.
Another approach would be to holistically consider the cluster when pairing primaries and replicas. The logic right now looks at a primary pod and tries to figure out which set of unassigned replica pods are the best fit for it. Obviously any decisions we make about pairing primaries to replicas early in the cycle impacts which replicas are available later in the cycle. This would also require a fairly large re-write, hence the solution above. This is just trying to deterministically place replicas for primaries. However this breaks down on repeated scaling operations -- as does the current logic to be fair.
We typically don't have to worry about this as we don't share nodes. We just right-size the nodes for how much memory we plan to use (taking into account other system and prometheus pods on the node and at least a 30% overhead depending on the use case). This eliminates nearly all scheduling issues and should allow more efficient redis operations as it's not sharing resources with other redis pods. It's also be more resilient to node failures. This is not the most cost effective solution for non-prod environments but was easiest to implement given the time constraints we were under.
Along these lines, I would also like to schedule all the pods at once (instead of one by one). It would speed up the deployment of a new cluster substantially. If we moved to statefulsets this would actually be easy. I haven't looked into how it could be done in the existing code. It's just been one of those things that's annoyed me.
TLDR: I'm open to moving to statefulsets. It's just the effort required that is problematic. That and you still have to deal with scheduling issues. The 2nd approach mentioned would be easier to implement but would still require touching a lot of logic (and probably updating tests). Either way, I think the logic for picking replicas for primaries needs to change. I don't think the solution in this PR works very well in its current form. There are a few things I can do to make it better, but they're all just work arounds that I think won't work in a deterministic fashion when scaling. I'm open to ideas and suggestions though. :)


Graph of checks over time shown in README

I'd like to communicate the growth of the fontbakery project, graphing the number of checks over time, the number of checks with test coverage, etc.
I'd love for these graphs to be "live" PNGs on the project README.md like the current badges; my guess is that this is now possible with Github Actions.

yes, I think we can do that.

There's some old code for doing part of this task at https://github.com/googlefonts/fontbakery/commit/33fbe0e1f4b7dc1f68a8bc5177ec13f43a1b3c87


support deep property paths for onlyIfAttribute, whereAttribute

overload method for string paths instead of keyof T only

:tada: This issue has been resolved in version 4.1.0-beta.30 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 5.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 5.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket: