refactor(core): use webview's URI schemes for IPC

closes #4875

What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Docs
[ ] New Binding issue #___
[ ] Code style update
[x] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change?

[ ] Yes, and the changes were approved in issue #___
[ ] No

Checklist

[ ] When resolving issues, they are referenced in the PR's title (e.g fix: remove a typo, closes #___, #___)
[ ] A change file is added if any packages will require a version bump due to this PR per the instructions in the readme.
[ ] I have added a convincing reason for adding this feature, if necessary

Other information

A command returning a 150MB file now takes less than 60ms to resolve. Previously: almost 50 seconds.

Needs https://github.com/tauri-apps/wry/pull/970

Also needs #4752 to fix the unit tests.

We'll detect and use the custom protocol IPC on Linux if available when https://github.com/tauri-apps/wry/pull/969 lands. On older webkit2gtk, we'll need to stick with the current approach (JSON :( )

With the latest changes returning a 150MB file takes 2s on linux using the current IPC (the new one based on custom protocols will require a feature flag).

Updates on the 150mb command response benchmark:
macOS: 70-80ms
Linux: 1.3-1.5s (ipc.postMessage), 1.3-1.4s (custom protocol)
Windows: 1.8s
kinda scary how much worse webview2 is... or maybe WKWebView is just too fast?

I wonder if webview2's custom uri scheme (which only works on win10+ :/ ) is more optimized for this :thinking: Not that it would matter for us until we drop support for 7&8 :sweat_smile:
Also, the measurement includes reading the file from disk right? Maybe windows is just really bad at that part too

The file is included in the app with include_bytes!
Android performance is in the 700-800ms range.
iOS 70-80ms.

wry 0.29 is published! You could update the dep to it.

So my question right out of the gate is: Why is this not implemented in wry directly?

So my question right out of the gate is: Why is this not implemented in wry directly?

we actually need both the current IPC (postMessage) and custom protocol IPC.. wry already gives us the tools we need to so need to interfere there. Since wry is low level I don't think we should get this mess over there like handling Linux/Android/webkit2gtk-2.40 stuff.

Having lurked in this thread since the PR was first made I'm quite delighted to see this merged! I have been using the alpha releases for a while now and wonder how I would go about using this new feature together with the new v2 api plugins?
Naively switching over the tauri and tauri-build dependencies to use the dev branch of course creates version conflicts with the fs plugin that I use. From where should I pull in the plugins?

Naively switching over the tauri and tauri-build dependencies to use the dev branch of course creates version conflicts with the fs plugin that I use. From where should I pull in the plugins?

The v2 branch of plugins-workspace repo https://github.com/tauri-apps/plugins-workspace/tree/v2
or from the published crates on crates.io

On MacOS this breaks IPC using Remote Domains. Safari blocks the requests to localhost from other domains.

I want to know how to use this new IPC？i update to v2,but the file transder between js and rust is also slow in Windows OS, Here is my Cargo. toml：
[build-dependencies]
tauri-build = { version = "2.0.0-beta", features = [] }

[dependencies]
tauri = { version = "2.0.0-beta.13", features = ["custom-protocol"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
chrono = "0.4.31"
tokio = { version = "1.20", features = ["macros", "rt-multi-thread"] }
tauri-plugin-dialog = "2.0.0-beta.3"
tauri-plugin-http = "2.0.0-beta.3"
tauri-plugin-fs = "2.0.0-beta.3"

[features]
# This feature is used for production builds or when a dev server is not specified, DO NOT REMOVE!!
custom-protocol = ["tauri/custom-protocol"]

this is my rust code:
#[tauri::command]
async fn append_chunk_to_file(
    window: Window,
    path: String,
    chunk: Vec<u8>,
    end: bool,
) -> Result<(), String> {
    let current_time = Local::now().time();
    println!("enter rust time: {}", current_time);
    println!("start{:?}", Instant::now()); //收到函数时间Instant { t:<PHONE_NUMBER>745s }
    tokio::spawn(async move {
        let mut file = OpenOptions::new()
            .create(true)
            .append(true)
            .open(&path)
            .map_err(|e| e.to_string())
            .unwrap();
        file.write_all(&chunk).map_err(|e| e.to_string()).unwrap();
        if end {
            window.emit("insert", Payload { message: path }).unwrap();
        }
    });
    let instant = Instant::now();
    println!("end{:?}", instant); //结束函数时间Instant { t:<PHONE_NUMBER>845s }
    let current_time = Local::now().time();
    println!("return time: {}", current_time);
    Ok(())
}

i use it in js:
import {mkdir, readFile, writeFile, BaseDirectory} from "@tauri-apps/plugin-fs";
import {convertFileSrc, invoke} from "@tauri-apps/api/core";
const content = await file.arrayBuffer()
let content1 = new Uint8Array(content);
await invoke("append_chunk_to_file", {path: url, chunk: chunk1,end:true})

It took 8 seconds to transfer a 23MB image using the above code(most time take in se and de),but @lucasfernog  say A command returning a 150MB file now takes less than 60ms to resolve. Previously: almost 50 seconds.
Where did I go wrong? Do you have the correct example code?


Running under ipython kernel

I am trying to run ipython in the headless mode with ihaskell.  From what I could figure out from the documentation to do this I need to run:
ipython kernel --IPKernelApp.kernel_class=<class name of IHaskell kernel>
For ipython the kernel is:
'IPython.kernel.zmq.ipkernel.Kernel'
What is the equivalent for IHaskell?

If you have a profile.json with things like port and so on, you can use ihaskell kernel <profile.json>. There's no Python class that corresponds to the IHaskell kernel as far as I know... but there might be a generic Kernel class that's parameterized on the kernel executable.
This is probably a question for the IPython team, actually. @Carreau might be able to answer it, or perhaps just the IPython mailing list would be a better bet. (Sorry!)

What do you mean in "headless mode" ?
ipython kernel <something> is actually used to launch the python kernel, it is not what is used to launch other languages.
nbconvert is capable of executing the notebook in a headless manner, see how this is done here
the km (kernel manager) and kc (kernel Channel manager IIRC) are the things that communicate with teh kernel and that you probably want to poke around to do custom "headless" execution.
Does that make sens ? (you can of course also ask on jupyter or IPython ML to get more people to respond help you)

I am trying to replicate what Greg Sexton has done with this org-mode plugin for ipython (https://github.com/gregsexton/ob-ipython) with ihaskell.  Greg uses
ipython kernel —IPKernelApp.connection_file=<session-name.json>
To start a new kernel and generate a file making it easy to have track multiple kernels inside a single org mode document.  Each code segment is identified with a session parameter and he then uses a python driver file to communicate with the various kernels using the <session-name.json> to uniquely identify them.  While there could be other approaches, like that used by EIN (https://github.com/tkf/emacs-ipython-notebook) what I like about Greg’s approach is that emacs does the process management by using the command above to start the kernels and tracking the various running sessions.
I was hoping to re-use as much as possible of his code since both my python and elisp is rather weak.  However to do that I need be able to replicate what the ipython kernel command is doing.  Using
ihaskell kernel <session-name.json>
works, but it requires an existing session.  Which limits me either using a library of pre-creates session or using the ipython command to start the session, then terminating it and re-using the file.
Using the python method in nbconvert works as well but I think that to use it with multiple session would mean re-implementing the process management in a python driver file which at the moment is beyond my meagre skills.
Not sure if this triggers any other ideas that I could try.  If not could you suggest which jupyter or ipython list I could try?  Just the github issues or is the an active google group or chatroom?
--
Riaan Rottier
On 4 July 2015 at 1:37:28 am, Matthias Bussonnier<EMAIL_ADDRESS>wrote:
What do you mean in "headless mode" ?
ipython kernel  is actually used to launch the python kernel, it is not what is used to launch other languages.
nbconvert is capable of executing the notebook in a headless manner, see how this is done here
the km (kernel manager) and kc (kernel Channel manager IIRC) are the things that communicate with teh kernel and that you probably want to poke around to do custom "headless" execution.
Does that make sens ? (you can of course also ask on jupyter or IPython ML to get more people to respond help you)
—
Reply to this email directly or view it on GitHub.


Provide sample where TransactionScopeAsyncFlowOption set as parameter

Most part of developers write code based on async/await approach.
So they should pass the parameter TransactionScopeAsyncFlowOption.Enabled to constructor of the TransactionScope for correct working of they own apps.
It will be great if you provide in your sample next required options  new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)

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

ID: 1073c238-9389-d826-a696-f1108a4f2ce0
Version Independent ID: cf56babd-def0-d76e-8eee-e33341b6a009
Content: Transactions - EF Core
Content Source: entity-framework/core/saving/transactions.md
Product: entity-framework
Technology: entity-framework-core
GitHub Login: @rowanmiller
Microsoft Alias: avickers

Answer to question from triage: the default is still false on .NET 5.


print rigid prototype from first cad idea

Prototype has been printed, but we are still not sure if three or four arms are necessary due to the flexion of the plastic arms. A more rigid version should be done.

Prototype has been printed, but we are still not sure if three or four arms are necessary due to the flexion of the plastic arms. A more rigid version should be done.

might be laser-cut

might be laser-cut


calculate_qc_metrics error in scanpy 1.4.5 and above

Hi, I was trying to use the most recent version but saw this error in 1.4.5 and above
scanpy==1.4.5 anndata==0.7rc2 umap==0.3.10 numpy==1.17.3 scipy==1.4.1 pandas==0.25.3 scikit-learn==0.22.1 statsmodels==0.11.0rc1 python-igraph==0.7.1

adata = sc.datasets.pbmc3k()
sc.pp.calculate_qc_metrics(adata, inplace=True)

output:
---------------------------------------------------------------------------
TypingError                               Traceback (most recent call last)
<ipython-input-5-0d8cf2779f18> in <module>
      1 adata = sc.datasets.pbmc3k()
----> 2 sc.pp.calculate_qc_metrics(adata, inplace=True)

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py in calculate_qc_metrics(adata, expr_type, var_type, qc_vars, percent_top, layer, use_raw, inplace, parallel)
    281         percent_top=percent_top,
    282         inplace=inplace,
--> 283         X=X,
    284     )
    285     var_metrics = describe_var(

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py in describe_obs(adata, expr_type, var_type, qc_vars, percent_top, layer, use_raw, inplace, X, parallel)
    107     if percent_top:
    108         percent_top = sorted(percent_top)
--> 109         proportions = top_segment_proportions(X, percent_top)
    110         for i, n in enumerate(percent_top):
    111             obs_metrics[f"pct_{expr_type}_in_top_{n}_{var_type}"] = (

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py in top_segment_proportions(mtx, ns)
    364             mtx = csr_matrix(mtx)
    365         return top_segment_proportions_sparse_csr(
--> 366             mtx.data, mtx.indptr, np.array(ns, dtype=np.int)
    367         )
    368     else:

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/dispatcher.py in _compile_for_args(self, *args, **kws)
    399                 e.patch_message(msg)
    400
--> 401             error_rewrite(e, 'typing')
    402         except errors.UnsupportedError as e:
    403             # Something unsupported is present in the user code, add help info

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/dispatcher.py in error_rewrite(e, issue_type)
    342                 raise e
    343             else:
--> 344                 reraise(type(e), e, None)
    345
    346         argtypes = []

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/six.py in reraise(tp, value, tb)
    666             value = tp()
    667         if value.__traceback__ is not tb:
--> 668             raise value.with_traceback(tb)
    669         raise value
    670

TypingError: Failed in nopython mode pipeline (step: nopython mode backend)
Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of Function(<intrinsic wrap_index>) with argument(s) of type(s): (int32, int64)
 * parameterized
In definition 0:
    ValueError: Argument types for wrap_index must match
    raised from /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/array_analysis.py:72
In definition 1:
    ValueError: Argument types for wrap_index must match
    raised from /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/array_analysis.py:72
This error is usually caused by passing an argument of a type that is unsupported by the named function.
[1] During: resolving callee type: Function(<intrinsic wrap_index>)
[2] During: typing of call at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (399)

File "../../../../../packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py", line 399:
def top_segment_proportions_sparse_csr(data, indptr, ns):
    <source elided>
        start, end = indptr[i], indptr[i + 1]
        sums[i] = np.sum(data[start:end])
        ^

[1] During: lowering "id=13[LoopNest(index_variable = parfor_index.271, range = (0, $100.6, 1))]{386: <ir.Block at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (403)>, 388: <ir.Block at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (404)>, 264: <ir.Block at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (401)>, 306: <ir.Block at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (402)>, 118: <ir.Block at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (397)>}Var(parfor_index.271, _qc.py:397)" at /home/gzhang/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py (397)

This is not usually a problem with Numba itself but instead often caused by
the use of unsupported features or an issue in resolving types.

To see Python/NumPy features supported by the latest release of Numba visit:
http://numba.pydata.org/numba-doc/latest/reference/pysupported.html
and
http://numba.pydata.org/numba-doc/latest/reference/numpysupported.html

For more information about typing errors and how to debug them visit:
http://numba.pydata.org/numba-doc/latest/user/troubleshoot.html#my-code-doesn-t-compile

If you think your code should work with Numba, please report the error message
and traceback, along with a minimal reproducer at:
https://github.com/numba/numba/issues/new

numba is 0.47.0 but 0.43.1 gave the same error.
It seems that top_segment_proportions_sparse_csr is new for scanpy 1.4.5
Please help. Thank you very much.

Are you sure about numba 0.43? This very much looks like a bug in numba.

Are you sure about numba 0.43? This very much looks like a bug in numba.

It seems that top_segment_proportions_sparse_csr is new for scanpy 1.4.5

What makes you think that? It’s been there since @ivirshup added calculate_qc_metrics in #316.

Yes. see
print(sc.__version__)

import numba
print(numba.__version__)

1.4.5
0.43.1

---------------------------------------------------------------------------
TypingError                               Traceback (most recent call last)
<ipython-input-4-c3b3d6ea75c2> in <module>
----> 1 sc.pp.calculate_qc_metrics(adata, inplace=True)

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py in calculate_qc_metrics(adata, expr_type, var_type, qc_vars, percent_top, layer, use_raw, inplace, parallel)
    281         percent_top=percent_top,
    282         inplace=inplace,
--> 283         X=X,
    284     )
    285     var_metrics = describe_var(

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py in describe_obs(adata, expr_type, var_type, qc_vars, percent_top, layer, use_raw, inplace, X, parallel)
    107     if percent_top:
    108         percent_top = sorted(percent_top)
--> 109         proportions = top_segment_proportions(X, percent_top)
    110         for i, n in enumerate(percent_top):
    111             obs_metrics[f"pct_{expr_type}_in_top_{n}_{var_type}"] = (

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/scanpy/preprocessing/_qc.py in top_segment_proportions(mtx, ns)
    364             mtx = csr_matrix(mtx)
    365         return top_segment_proportions_sparse_csr(
--> 366             mtx.data, mtx.indptr, np.array(ns, dtype=np.int)
    367         )
    368     else:

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/dispatcher.py in _compile_for_args(self, *args, **kws)
    348                 e.patch_message(msg)
    349
--> 350             error_rewrite(e, 'typing')
    351         except errors.UnsupportedError as e:
    352             # Something unsupported is present in the user code, add help info

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/dispatcher.py in error_rewrite(e, issue_type)
    315                 raise e
    316             else:
--> 317                 reraise(type(e), e, None)
    318
    319         argtypes = []

~/packages/anaconda3/envs/testscanpy145/lib/python3.6/site-packages/numba/six.py in reraise(tp, value, tb)
    656             value = tp()
    657         if value.__traceback__ is not tb:
--> 658             raise value.with_traceback(tb)
    659         raise value
    660

I was also surprised since this should be the first few functions people run.
calculate_qc_metrics was there for a long time. But top_segment_proportions_sparse_csr seems to be new to 1.4.5- I checked the _qc.py in the tar.gz files

It’s right there in 683b965a38e8ac51342f75e182ac4b9882b3ff39, the commit that introduced calculate_qc_metrics:
https://github.com/theislab/scanpy/blob/683b965a38e8ac51342f75e182ac4b9882b3ff39/scanpy/preprocessing/qc.py#L192-L216

Looks like numba/numba#2625 is involved. Why did they close it?

same error in 1.4.4
sc.pp.calculate_qc_metrics(adata, inplace=True, parallel=True)

Maybe because sc.pp.calculate_qc_metrics was running in non parallel by default in 1.4.4 and before. the parallel= option has been removed since 1.4.5 and calculate_qc_metrics is running in parallel by default. That's why the error wasn't reported.
I don't know enough about numba.

Aaah, that makes a lot of sense.
I filed numba/numba#5056 and am working on a workaround.


Merge 6.5 release(7a3764fcb)

What problem does this PR solve?
Issue Number: close #xxx
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.4 out of 16 committers have signed the CLA.:white_check_mark: Leavrth:white_check_mark: HuSharp:white_check_mark: CalvinNeo:white_check_mark: joccau:x: JmPotato:x: xiongjiwei:x: overvenus:x: BusyJay:x: jiayang-zheng:x: sticnarf:x: Connor1996:x: bufferflies:x: MyonKeminta:x: YuJuncen:x: tabokie:x: cfzjywxkYou have signed the CLA already but the status is still pending? Let us recheck it.


Adds details button to order history page.

Adds details button to order history page
Addresses Issue https://github.com/projectjellyfish/api/issues/718.

This doesn't fit with the styling of the rest of the application.

@stackus - i saw this done here on project details.
Can you elaborate more?


IE10 - Colorpicker not closing

The Colorpicker is not closing when clicking outside of the popup or using the "OK" or "Cancel" button.

Having the same issue, it doesn't close the color-picker


Create MultiCamera calibration samples and tutorials

Are there plans for Python-specific multi-camera calibration and stitching samples/tutorials?

Yes, there are plans for multi-camera calibration and stitching implemented in python.
We have this task in our backlog but we haven't decided yet when we will implement it.
I suppose you have seen our C++ implementation https://github.com/zivid/zivid-cpp-samples/tree/master/source/Applications/Advanced/MultiCamera?

Any update on getting a python based tutorial for point cloud stitching? (I have seen the C++ implementation one, but it'll be nice to have a python sample)


Strange issue on pod update

The platform of the target `Pods` (tvOS 9.0) is not compatible with `KSDeferred (0.3.0)`, which does not support `tvos`.

But it seems to be included in the podspec.

Hey @jessejamesrichard, it looks like there hasn't been a new release cut or pushed to trunk since tvOS support was added to the podspec. If @kseebaldt has some time, maybe he could cut a release for you?
In the meantime you should be able to point to the master branch in your Podfile instead of letting CocoaPods select a release:
pod 'KSDeferred', :git => 'https://github.com/kseebaldt/deferred.git'

Thanks very much. Note the same thing on Cedar. Thoughts on the proper git for that since the podfile is the same?

Oh, right. IIRC CocoaPods' tvOS support was still in beta when the last Cedar release occurred so the processed podspec didn't include that platform. The same technique should work there:
pod 'Cedar', :git => 'https://github.com/pivotal/cedar.git'

Gotcha.
Thanks!


Code instead of lyrics

Sometimes When listening to a song the program will display the code instead of the lyrics?
This will be displayed instead:
var CURRENT_USER = null;
var CANONICAL_DOMAIN = "genius.com";
var CANONICAL_DOMAIN_PARTS_LENGTH = 2;
var CURRENT_CHANNEL = "rap";
var CURRENT_TAG = {"tag":{"always_allow_personal_annotation":null,"beefy":true,"created_at":"2013-11-19T16:17:02Z","deleted_at":null,"description":"R&B Genius is a branch of Genius that breaks down the meaning behind rhythm and blues - from a wide range of artists - Marvin Gaye to The Weeknd. \r\n\r\nIf you want to help or have questions, hit up zk123, streetlights, DC26 or ezra. ♫\r\n\r\nFollow R&B Genius on Twitter and like us on Facebook!\r\n","designation":"featured_music","google_analytics_table_id":"ga:91152555","id":352,"image_url":"https://i.embed.ly/1/display?key=fc778e44915911e088ae4040f9f86dcd&url=http%3A%2F%2Fhttp%3A%2F%2Fgenius.com%2Ftags%2Fr-b","implied_channel_id":1,"languages_store":{},"logical_name":null,"music":true,"name":"R&B Genius","slug":"r-b","taggings_count":30693,"twitter_name":null,"updated_at":"2016-11-22T16:01:17Z"}};
var TRACKING_DATA = {"Song ID":2911564,"Title":"Reminder","Primary Artist":"The Weeknd","Primary Artist ID":2358,"Primary Album":"Starboy","Primary Album ID":221906,"Primary Tag":"r-b","Primary Tag ID":352,"Has Relevant Videos?":false,"Most Relevant Video Type":null,"Relevant Video IDs":[],"Music?":true,"Annotatable Type":"Song","Annotatable ID":2911564,"featured_video":false,"cohort_ids":[],"has_verified_callout":false,"has_featured_annotation":true,"created_at":"2016-11-17T23:06:32Z","created_month":"2016-11-01","created_year":2016,"song_tier":"A","Has Recirculated Articles":false};
var VALID_SUBDOMAINS = ["x","news","screen","rap","history","tech","rock","country","r-b","lit","pop","sports","meta","law"];
var EMBEDLY_KEY = "fc778e44915911e088ae4040f9f86dcd";
var MOBILE_DEVICE = false;
var APP_CONFIG = {"env":"production","api_root_url":"/api","facebook_app_id":"265539304824","facebook_opengraph_api_version":"2.5","pusher_app_key":"6d893fcc6a0c695853ac","embedly_key":"fc778e44915911e088ae4040f9f86dcd","app_store_url":"https://itunes.apple.com/us/app/genius-by-rap-genius-search/id709482991?ls=1&mt=8","play_store_url":"https://play.google.com/store/apps/details?id=com.genius.android","soundcloud_client_id":"632c544d1c382f82526f369877aab5c0","annotator_context_length":32,"comment_reasons":[{"_type":"comment_reason","context_url":"http://genius.com/8846441/Genius-how-genius-works/More-on-annotations","display_character":"R","handle":"Restates the line","id":1,"name":"restates-the-line","raw_name":"restates the line","requires_body":false,"slug":"restates_the_line"},{"_type":"comment_reason","context_url":"http://genius.com/8846441/Genius-how-genius-works/More-on-annotations","display_character":"S","handle":"It’s a stretch","id":2,"name":"its-a-stretch","raw_name":"it’s a stretch","requires_body":false,"slug":"its_a_stretch"},{"_type":"comment_reason","context_url":"http://genius.com/8846441/Genius-how-genius-works/More-on-annotations","display_character":"M","handle":"Missing something","id":3,"name":"missing-something","raw_name":"missing something","requires_body":false,"slug":"missing_something"},{"_type":"comment_reason","context_url":"http://genius.com/8846441/Genius-how-genius-works/More-on-annotations","display_character":"…","handle":"Other","id":4,"name":"other","raw_name":"other","requires_body":true,"slug":"other"}],"filepicker_api_key":"Ar03MDs73TQm241ZgLwfjz","filepicker_policy":"eyJleHBpcnkiOiIyMzIyMjM4OTI3IiwiY2FsbCI6WyJwaWNrIiwicGlja0FuZFN0b3JlIiwicmVhZCIsInN0b3JlIiwic3RhdCJdfQ==","filepicker_signature":"d155a1c0e33688b9bf17de68465df1ec0bfd18d7c5e95c944468f1ad5e9fc656","filepicker_s3_image_bucket":"filepicker-images-rapgenius","available_roles":["moderator","mega_boss","in_house_staff","verified_artist","meme_artist","engineer","editor","educator","staff","whitehat","tech_liaison","mediator"],"zeroclipboard_swf_path":"https://assets.genius.com/flash/ZeroClipboard.swf?1479924659","canonical_domain":"genius.com","enable_angular_debug":false,"airbrake_project_id":"7530","airbrake_key":"dcd059598ee876ad6f624f97647f0a8d","airbrake_development_mode":false,"fact_track_launch_article_url":"http://genius.com/a/genius-and-spotify-together","bad_words":["4r5e","5h1t","5hit","a55","anal","anus","ar5e","arrse","arse","ass","ass-fucker","asses","assfucker","assfukka","asshole","assholes","asswhole","a_s_s","b!tch","b00bs","b17ch","b1tch","ballbag","balls","ballsack","bastard","beastial","beastiality","bellend","bestial","bestiality","bi+ch","biatch","bitch","bitcher","bitchers","bitches","bitchin","bitching","bloody","blow job","blowjob","blowjobs","boiolas","bollock","bollok","boner","boob","boobs","booobs","boooobs","booooobs","booooooobs","breasts","buceta","bugger","bum","bunny fucker","butt","butthole","buttmuch","buttplug","c0ck","c0cksucker","carpet muncher","cawk","chink","cipa","cl1t","clit","clitoris","clits","cnut","cock","cock-sucker","cockface","cockhead","cockmunch","cockmuncher","cocks","cocksuck","cocksucked","cocksucker","cocksucking","cocksucks","cocksuka","cocksukka","cok","cokmuncher","coksucka","coon","cox","crap","cum","cummer","cumming","cums","cumshot","cunilingus","cunillingus","cunnilingus","cunt","cuntlick","cuntlicker","cuntlicking","cunts","cyalis","cyberfuc","cyberfuck","cyberfucked","cyberfucker","cyberfuckers","cyberfucking","d1ck","damn","dick","dickhead","dildo","dildos","dink","dinks","dirsa","dlck","dog-fucker","doggin","dogging","donkeyribber","doosh","duche","dyke","ejaculate","ejaculated","ejaculates","ejaculating","ejaculatings","ejaculation","ejakulate","f u c k","f u c k e r","f4nny","fag","fagging","faggitt","faggot","faggs","fagot","fagots","fags","fanny","fannyflaps","fannyfucker","fanyy","fatass","fcuk","fcuker","fcuking","feck","fecker","felching","fellate","fellatio","fingerfuck","fingerfucked","fingerfucker","fingerfuckers","fingerfucking","fingerfucks","fistfuck","fistfucked","fistfucker","fistfuckers","fistfucking","fistfuckings","fistfucks","flange","fook","fooker","fuck","fucka","fucked","fucker","fuckers","fuckhead","fuckheads","fuckin","fucking","fuckings","fuckingshitmotherfucker","fuckme","fucks","fuckwhit","fuckwit","fudge packer","fudgepacker","fuk","fuker","fukker","fukkin","fuks","fukwhit","fukwit","fux","fux0r","f_u_c_k","gangbang","gangbanged","gangbangs","gaylord","gaysex","goatse","god-dam","god-damned","goddamn","goddamned","hardcoresex","hell","heshe","hoar","hoare","hoer","homo","hore","horniest","horny","hotsex","jack-off","jackoff","jap","jerk-off","jism","jiz","jizm","jizz","kawk","knob","knobead","knobed","knobend","knobhead","knobjocky","knobjokey","kock","kondum","kondums","kum","kummer","kumming","kums","kunilingus","l3i+ch","l3itch","labia","lmfao","lust","lusting","m0f0","m0fo","m45terbate","ma5terb8","ma5terbate","masochist","master-bate","masterb8","masterbat*","masterbat3","masterbate","masterbation","masterbations","masturbate","mo-fo","mof0","mofo","mothafuck","mothafucka","mothafuckas","mothafuckaz","mothafucked","mothafucker","mothafuckers","mothafuckin","mothafucking","mothafuckings","mothafucks","mother fucker","motherfuck","motherfucked","motherfucker","motherfuckers","motherfuckin","motherfucking","motherfuckings","motherfuckka","motherfucks","muff","mutha","muthafecker","muthafuckker","muther","mutherfucker","n1gga","n1gger","nazi","nigg3r","nigg4h","nigga","niggah","niggas","niggaz","nigger","niggers","nob","nob jokey","nobhead","nobjocky","nobjokey","numbnuts","nutsack","orgasim","orgasims","orgasm","orgasms","p0rn","pawn","pecker","penis","penisfucker","phonesex","phuck","phuk","phuked","phuking","phukked","phukking","phuks","phuq","pigfucker","pimpis","piss","pissed","pisser","pissers","pisses","pissflaps","pissin","pissing","pissoff","poop","porn","porno","pornography","pornos","prick","pricks","pron","pube","pusse","pussi","pussies","pussy","pussys","rectum","retard","rimjaw","rimming","s hit","s.o.b.","sadist","schlong","screwing","scroat","scrote","scrotum","semen","sex","sh!+","sh!t","sh1t","shag","shagger","shaggin","shagging","shemale","shi+","shit","shitdick","shite","shited","shitey","shitfuck","shitfull","shithead","shiting","shitings","shits","shitted","shitter","shitters","shitting","shittings","shitty","skank","slut","sluts","smegma","smut","snatch","son-of-a-bitch","spac","spunk","s_h_i_t","t1tt1e5","t1tties","teets","teez","testical","testicle","tit","titfuck","tits","titt","tittie5","tittiefucker","titties","tittyfuck","tittywank","titwank","tosser","turd","tw4t","twat","twathead","twatty","twunt","twunter","v14gra","v1gra","vagina","viagra","vulva","w00se","wang","wank","wanker","wanky","whoar","whore","willies","willy","xrated","xxx"],"user_authority_roles":["moderator","editor","mediator"],"user_verification_roles":["community_artist","verified_artist","meme_artist"],"user_vote_types_for_delete":["votes","upvotes","downvotes"],"brightcove_account_id":"4863540648001","mixpanel_delayed_events_timeout":"86400","brightcove_p_relevant_web_player_id":"B18DMWtt","brightcove_hyper_relevant_web_player_id":"SJnP34Jh","brightcove_tag_relevant_web_player_id":"HJwZpTzT","brightcove_modal_web_player_id":"S1LI5bh0","brightcove_amp_p_relevant_web_player_id":"Bkw8GqGkg","brightcove_hot_swap_web_player_id":"SkVaza9A","brightcove_article_web_player_id":"S1ZcmcOC1x"};
var SESSION_CONFIG = {"current_user":null,"chat_enabled":null,"dfp_enabled":true};
var AD_CONFIG = {"dfp":{"desktop_home_leaderboard":{"sizes":[[970,250],[728,90]],"kv":{"is_atf":true}},"mobile_home_adhesion":{"sizes":[[320,50]],"kv":{"is_atf":true}},"desktop_home_medium1":{"sizes":[[300,600]],"kv":{"is_atf":false}},"desktop_song_leaderboard":{"sizes":[[970,250],[728,90]],"kv":{"is_atf":true}},"desktop_article_leaderboard":{"sizes":[[970,250],[728,90]],"kv":{"is_atf":true}},"desktop_song_medium1":{"sizes":[[300,600],[300,250]],"kv":{"is_atf":false}},"desktop_song_inread":{"sizes":[[1,1]],"kv":{"is_atf":false}},"desktop_song_lyrics_footer":{"sizes":[[1,1],[300,250],[300,600]],"kv":{"is_atf":false}},"mobile_song_lyrics_header_adhesion":{"sizes":[[320,50]],"kv":{"is_atf":true}},"mobile_song_medium1":{"sizes":[[300,250]],"kv":{"is_atf":false}},"mobile_song_footer":{"sizes":[[320,50],[300,250]],"kv":{"is_atf":false}},"mobile_song_song_bio":{"sizes":[[320,50],[300,250]],"kv":{"is_atf":false}},"amp_song_medium1":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_medium2":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_medium3":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_sticky":{"size":[320,50],"kv":{"is_atf":false}},"amp_song_medium_footer":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_below_player":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_below_song_bio":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_annotation":{"size":[300,250],"kv":{"is_atf":false}},"amp_song_q_and_a":{"size":[300,250],"kv":{"is_atf":false}},"mobile_article_adhesion":{"sizes":[[320,50]],"kv":{"is_atf":true}},"mobile_article_medium1":{"sizes":[[300,250]],"kv":{"is_atf":false}},"app_song_inread":{"sizes":"MEDIUM_RECTANGLE,BANNER"},"app_song_inread2":{"sizes":"MEDIUM_RECTANGLE,BANNER"},"app_song_inread3":{"sizes":"MEDIUM_RECTANGLE,BANNER"},"desktop_home_skin":{"sizes":[[1,1]],"kv":{"is_atf":true}},"desktop_song_skin":{"sizes":[[1,1]],"kv":{"is_atf":true}},"desktop_song_annotation":{"sizes":[[300,250],[357,95]],"kv":{"is_atf":false}},"mobile_song_annotation":{"sizes":[[300,250]],"kv":{"is_atf":false}},"mobile_song_q_and_a":{"sizes":[[300,250],[320,50]],"kv":{"is_atf":false}},"mobile_song_comments":{"sizes":[[300,250],[320,50]],"kv":{"is_atf":false}},"desktop_song_comments":{"sizes":[[300,250]],"kv":{"is_atf":false}},"web_annotator_annotation":{"sizes":[[300,250]],"kv":{"is_atf":false}}},"dfp_network_id":"342026871","prebid_placements":{"desktop_728x90":[{"bidder":"aol","params":{"placement":"4166613","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9345913"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}],"desktop_300x600":[{"bidder":"aol","params":{"placement":"4166614","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9345919"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}],"desktop_160x600":[{"bidder":"aol","params":{"placement":"4166615","network":"10604.1"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}],"desktop_300x250":[{"bidder":"aol","params":{"placement":"4166616","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9319415"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}],"mobile_300x250":[{"bidder":"aol","params":{"placement":"4166676","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9345910"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}]}}
var TOP_LEVEL_BLOCK_CONTAINERS = ["address","article","aside","blockquote","div","dl","fieldset","footer","form","h1","h2","h3","h4","h5","h6","header","menu","nav","ol","p","pre","section","table","ul"];
var TOP_LEVEL_STANDALONE_BLOCKS = ["img","hr"];
window._taboola = window._taboola || [];
_taboola.push({article:'auto'});
!function (e, f, u, i) {
  if (!document.getElementById(i)){
    e.async = 1;
    e.src = u;
    e.id = i;
    f.parentNode.insertBefore(e, f);
  }
}(document.createElement('script'),
document.getElementsByTagName('script')[0],
'//cdn.taboola.com/libtrc/genius/loader.js',
'tb_loader_script');

var _qevents = _qevents || [];
(function() {
var elem = document.createElement('script');
elem.src = (document.location.protocol == 'https:' ? 'https://secure' : 'http://edge') + '.quantserve.com/quant.js';
elem.async = true;
elem.type = 'text/javascript';
var scpt = document.getElementsByTagName('script')[0];
scpt.parentNode.insertBefore(elem, scpt);
})();
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-10346621-1']);

var VISITOR_LEVEL = 1
var SESSION_LEVEL = 2
var PAGE_LEVEL = 3

var logged_in = !!window.CURRENT_USER
_gaq.push(['_setCustomVar', 1, 'Logged in', String(logged_in), SESSION_LEVEL])
_gaq.push(['_setCustomVar', 2, 'Controller action', 'songs#show', PAGE_LEVEL])

if (window.TRACKING_DATA) {
  if ("Primary Tag" in TRACKING_DATA) {
    _gaq.push(['_setCustomVar', 3, "Primary tag", TRACKING_DATA["Primary Tag"], PAGE_LEVEL])
  }

  if ("Music?" in TRACKING_DATA) {
    _gaq.push(['_setCustomVar', 4, "Music", String(TRACKING_DATA["Music?"]), PAGE_LEVEL])
  }
}

_gaq.push(['_trackPageview']); // this was causing duplicate pageviews (untill i killed jquery-address)

(function() {
  var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

(function(g, e, n, i, u, s) {
  g['GoogleAnalyticsObject'] = 'ga';
  g.ga = g.ga || function() { (g.ga.q = g.ga.q || []).push(arguments) };
  g.ga.l = Date.now();
  u = e.createElement(n);
  s = e.getElementsByTagName(n)[0];
  u.async = true;
  u.src = i;
  s.parentNode.insertBefore(u, s);
})(window, document, 'script', 'https://www.google-analytics.com/analytics.js');

ga('create', "UA-10346621-14", 'auto');
ga('set', 'dimension1', String(logged_in));
ga('set', 'dimension2', "songs#show");
ga('set', 'dimension3', TRACKING_DATA['Primary Tag']);
ga('set', 'dimension4', String(TRACKING_DATA['Music?']));
ga('send', 'pageview');

var
adUnits.push({"code":"div-gpt-ad-7vcsCtibL_GHqGLjnSzckw","sizes":[[300,250]],"bids":[{"bidder":"aol","params":{"placement":"4166616","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9319415"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}]});
adUnits.push({"code":"div-gpt-ad-7vcsCtibL_GHqGLjnSzckw","sizes":[[300,600]],"bids":[{"bidder":"aol","params":{"placement":"4166614","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9345919"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}]});
adUnits.push({"code":"div-gpt-ad-GMxdQJrZsM5nYwlp8sjV7g","sizes":[[300,600]],"bids":[{"bidder":"aol","params":{"placement":"4166614","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9345919"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}]});
adUnits.push({"code":"div-gpt-ad-GMxdQJrZsM5nYwlp8sjV7g","sizes":[[300,250]],"bids":[{"bidder":"aol","params":{"placement":"4166616","network":"10604.1"}},{"bidder":"appnexus","params":{"placementId":"9319415"}},{"bidder":"rubicon","params":{"accountId":"15874","siteId":"107816","zoneId":"513532"}}]});
pbjs.que = pbjs.que || [];

pbjs.que.push(function() {
  pbjs.addAdUnits(adUnits);
  pbjs.requestBids({
    bidsBackHandler: sendAdserverRequest
  });
});

function sendAdserverRequest() {
  if (pbjs.adserverRequestSent) return;
  pbjs.adserverRequestSent = true;

  });
}

setTimeout(function() {
  sendAdserverRequest();
}, PREBID_TIMEOUT);

})(
return {refresh: function() {
});
});
{{:: 'cloud_flare_always_on_short_message' | i18n }}
Check @genius for updates. We'll have things fixed soon.

GENIUS
Rap
Pop
Rock
R&B;
Country
France
Deutschland
Polska
Lit
News
Screen
Sports
    {"@context":"http://schema.org","@type":"MusicRecording","byArtist":{"@context":"http://schema.org","@type":"MusicGroup","name":"The Weeknd","url":"http://genius.com/artists/The-weeknd","description":"Abel Tesfaye, otherwise known as The Weeknd, is an R&B/Hip-Hop singer hailing from Toronto, Canada. He has been referred to as the songbird of his generation and the best musical","image":"https://images.genius.com/84aca3456502b8acc1c7796b7e2e525e.1000x1000x1.jpg"},"image":"https://images.genius.com/761f7ed3fc03b86665c5f52919f6f27b.780x780x1.jpg","inAlbum":[{"@context":"http://schema.org","@type":"MusicAlbum","byArtist":{"@context":"http://schema.org","@type":"MusicGroup","name":"The Weeknd","url":"http://genius.com/artists/The-weeknd","description":"Abel Tesfaye, otherwise known as The Weeknd, is an R&B/Hip-Hop singer hailing from Toronto, Canada. He has been referred to as the songbird of his generation and the best musical","image":"https://images.genius.com/84aca3456502b8acc1c7796b7e2e525e.1000x1000x1.jpg"},"image":"https://images.genius.com/761f7ed3fc03b86665c5f52919f6f27b.780x780x1.jpg","name":"Starboy","url":"http://genius.com/albums/The-weeknd/Starboy","datePublished":"2016-09-21","numTracks":20}],"name":"Reminder","url":"http://genius.com/The-weeknd-reminder-lyrics","isrcCode":"USUG11600998","datePublished":"2016-11-25"}

Reminder
The Weeknd
Produced By
Mano,
      Doc McKinney,

      Sir Dylan,

      Cirkut,

      DaHeala

Album
Starboy
Reminder

I think this is fixed. Correct me if I'm wrong.


Footer work

added footer with links

Not sure why the heroku push is being logged as a commit on the repo.


[Suggestion] Put settings in a popup when the toolbar button is clicked

Rather than launch about:addons, set a popup on the browser action with a settings view.
This will make toggling images faster.

Done


Adding lightning specific attributes to the XML file

We need:

lighting implementation type (this is to get the right docker image)
version/commit hash (lets just stick with versions for now)
lightning node alias (container name?)

All of this is going to go directly into the warnet graphml file:

Add tag to node in graphml that indicates that it's a lightning node
This tag can have attributes that are unique to the lightning node (as we do for bitcoin).

We can add this stuff easily now and have a schema file to cross-check against, so I think we can close this out now.
As we need more ln-node properties we can add to the graph and schema.

Dont close, ill implement it evetually. I think we need this for MIT

oh whoops sorry wrong issue thought this was #227


Add Example Program for Polls

Creating polls is quite not straightforward, an example program would be very useful.

For which sort of use case do you think the example is needed? Do you mean for command for the bot which creates a poll?


Hard to setup

Pls make easier

Then how could I make this easier? Please provide more information.

Closing due to lack of information.


Return nothing when empty

This is just a proposal to replace 'asdf' with nothing, as it might not have any big purpose here (Correct me if I am wrong please).

asdf shouldn't be there.
Thanks for the fix.


Authorizations (still) not working

@jangalinski Re: #118 - I cannot confirm. Authorization are still not working for me. I still have the same behavior as initially described in #118. Tried with and without explicit camunda.bpm.authorization.enabled: true and with the default 7.5.0 webjar that comes with the starter as well as a custom built webjar 7.5.4-ee as described by Bernd Rücker @ https://github.com/camunda/camunda-consulting/tree/master/snippets/camunda-webapp-webjar-ee. No success :-/

Have to verify if this is still a problem, should have been solved by setting the authorization property to true

checked with latest 2.0.0-SNAPSHOT and Authorization enabled set to true. Works on my machine.   Please provide a complete failing example so we can analyse.


edgex-security-proxy-setup service fails to start after Ubuntu reboot

🐞 Bug Report
Affected Services [REQUIRED]

 The issue is located in:
When Ubuntu reboots, the proxy-setup service fails to start. This in turn causes the nginx container to fail to start properly.
Is this a regression?

 Yes, the previous version in which this bug was not present was: ....
Description and Minimal Reproduction [REQUIRED]
git clone git@github.com:edgexfoundry/edgex-compose.git
git checkout tags/v3.1.0 -b release/3.1.0
cd compose-builder && make gen mqtt-broker ds-opcua ds-modbus ds-mqtt app-mqtt app-metric-process arm64
docker compose up -d
# wait service running and check
docker ps

# reboot system
sudo reboot

🔥 Exception or Error

🌍  Your Environment
Deployment Environment:
os：  ubuntu 20.04 TLS
arch:  arm64
docker info:

EdgeX Version [REQUIRED]:
3.1.0
Anything else relevant?

@cherrycl please help add restart: always for both main and napa branches to resolve this issue


Replace overloaded 'service' term with 'project'

Previously we used the word 'service' to describe the combination of
apps and libraries that make up GOV.UK. Unfortunately this is an
overloaded term: Docker Compose also uses the term 'service' to describe
something you can start/run. In this terminology, each GOV.UK service
had many Docker Compose services for each of its stacks. Confusing!
This renames all uses of the term '(GOV.UK) service' with 'project' as
a way to distinguish what we are referring to. I couldn't think of a
better word to describe 'apps + libraries' in a way that makes sense
when 'running' them, 'building' them, 'starting' them, etc.

@benthorner just noticed this has broken some make commands because we refer to images in services directory: https://github.com/alphagov/govuk-docker/blob/master/projects/asset-manager/docker-compose.yml#L6

@kevindew oops! Fix: https://github.com/alphagov/govuk-docker/pull/280


Cant build

Starting this commit 2672f6aafe03808e0567914890f07345dafcd591 I can't build angular2-meteor anymore
>git reset --hard 2672f6aafe03808e0567914890f07345dafcd591
HEAD is now at 2672f6a chore(MeteorApp): introduce MeteorApp class to resolve zones and launch code in the Meteor environment (on server side)
porter@porter.porter:/Users/porter/Work/github/angular2-meteor>gulp build
[22:17:03] Using gulpfile ~/Work/github/angular2-meteor/gulpfile.js
[22:17:03] Starting 'build'...
[22:17:03] Starting 'typings'...
[22:17:03] Finished 'typings' after 152 μs
[22:17:03] Starting 'lint'...
[22:17:05] Finished 'lint' after 1.58 s
[22:17:05] Starting 'tsbuild'...
modules/meteor_app.ts(3,63): error TS2305: Module '"/angular2-meteor/node_modules/angular2/core"' has no exported member 'platform'.
modules/meteor_app.ts(4,26): error TS2307: Cannot find module 'meteor-promise'.
modules/meteor_app.ts(9,30): error TS2305: Module 'Meteor' has no exported member 'EnvironmentVariable'.
modules/meteor_app.ts(9,63): error TS2339: Property 'EnvironmentVariable' does not exist on type 'typeof Meteor'.

[22:17:08] Finished 'tsbuild' after 3.68 s
[22:17:08] Starting 'git-add'...
[22:17:08]
[22:17:08] Finished 'git-add' after 61 ms
[22:17:08] Finished 'build' after 5.33 s

The last three is because of there is no appropriate definitions so far. Otherwise just ignore them.
The first one is no there any more.


Winrm Listener provider idempotency

Leverage windows_http_acl & windows_certificate_binding
Check for outdated resources.
cc: @aboten

+1


EmrEtlRunner: find a better naming strategy for the EMR steps

The current steps are named as so:

Elasticity S3DistCp Step: Raw {raw location} -> Raw Staging S3 (there is one per input bucket)
Elasticity S3DistCp Step: Raw S3 -> Raw HDFS
Elasticity Spark Step: Enrich Raw Events
Elasticity S3DistCp Step: Enriched HDFS -> S3
Elasticity Custom Jar Step: Empty Raw HDFS
Elasticity S3DistCp Step: Enriched HDFS _SUCCESS -> S3
Elasticity S3DistCp Step: Stream Enriched {enriched location} -> Enriched Staging S3
Elasticity S3DistCp Step: : Enriched S3 -> HDFS
Elasticity Spark Step: Shred Enriched Events
Elasticity S3DistCp Step: : Shredded HDFS -> S3
Elasticity S3DistCp Step: Shredded HDFS _SUCCESS -> S3
Elasticity S3DistCp Step: Raw Staging S3 -> Raw Archive S3
Elasticity Custom Jar Step: Load {storage target} Storage Target (there is one per storage target)
Elasticity S3DistCp Step: Enriched S3 -> Enriched Archive S3
Elasticity S3DistCp Step: Enriched S3 -> S3 Enriched Archive
Elasticity S3DistCp Step: Shredded S3 -> Shredded Archive S3
Elasticity S3DistCp Step: Shredded S3 -> S3 Shredded Archive

we need to find a more machine readable referencing the pipeline stage (e.g. staging, enrich, shred, etc).
cc @ihortom

I think "Elasticity" was always most confusing part, which doesn't bear any useful information. Is it possiblt to remove it?

yup


bug: Cannot use texlab

Did you check docs and existing issues?

[X] I have read all the LazyVim docs
[X] I have searched the existing issues of LazyVim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
v0.10.0-dev-679+gb60a2ab4c-Homebrew
Operating system/version
macOS 13.2.1 (22D68)
Describe the bug
When open a tex file, the texlab server quit with warning
Client 1 quit with exit code 101 and signal 0

LspLog:
[START][2023-07-20 19:21:06] LSP logging initiated
[ERROR][2023-07-20 19:21:06] .../vim/lsp/rpc.lua:676	"rpc"	"/Users/hanyu_yan/.local/share/nvim/mason/bin/texlab"	"stderr"	"thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', crates/syntax/src/latex/cst.rs:261:19\nnote: run with `RUST_BACKTRACE=1` environment variable to display a backtrace\n"

Steps To Reproduce

clone the LazyVim starter and install
open a tex file
open mason and install texlab
quit and reopen the tex file

Expected Behavior
Can use texlab properly.
Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  "folke/LazyVim",
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here

Please report this in the texlab repo. works fine for me


Make 400 node limit/kubenet limit more clear

A small edit to make 400 node limit/kubenet limit more clear by adding a note to existing text.

@christianreddington : Thanks for your contribution! The author(s) have been notified to review your proposed change.


793 introduce ensureSchema flag for cassandra span store factory

After addressing the only couple things. please squash and rebase into a single commit. http://rebaseandsqua.sh/
Here's a better commit message I've crafted just for you!
Makes cassandra schema commands optional

Before, using cassandra wasn't possible without escalated privileges.
This was due to implicit use of schema commands. This change moves the
default to assume schema is present. To automatically ensure or install
schema, the user should set the environment variable
`CASSANDRA_ENSURE_SCHEMA` to true.

For users customizing `CassandraSpanStoreFactory` directly, this maps to
the flag `zipkin.store.cassandra.ensureSchema`.

Fixes #793

updated the comment as I noticed the environment variable defaults to true, which was going to be a question!
OK Good job.. very little feedback for you. Thanks!

I'm not sure about suggested commit message: 'To run with less privileges, set the
environment variable CASSANDRA_ENSURE_SCHEMA=true, when you have less privileges you probably don't want to ensure schema and execute script on your DB so CASSANDRA_ENSURE_SCHEMA should be set to false?

@pawelszymczyk typo.. I screwed up that sentence because I wrote it before realizing the env variable was opposite of the twitter flag. Please correct!
PS if curious, default to true is mostly a laptop thing. Ex. our test docker image installs the schema directly.

LGTM will merge on green! Also, this change will go out today, probably in a few hours

Wow great to hear that! :D thanks for quick review :)


Cant set directory

Hey i love your tool but i sadly cant set f1 22 as the game directory
and i dont know how to fix it. Already tried to un- and reinstall it.
Thanks for the help in advance and have a great day.

Can you describe why you can't set it? What's happening?
Also, you can manually set the value if you modify the xml file Ego ERP Archiver.dll.config.

if i go on settings the options show up but i cant press the button "set directory"
and if i press it nothing happens

Hmm, not sure what it could be, but easiest thing to do is edit that xml file and put the directory in yourself manually.
Maybe you can also look at this thread. I wonder if the problem is related somehow.
https://github.com/ptasev/Ego-Engine-Modding/issues/27

Version 9.1 has been released. Can you check if you still have this issue?


Update-DeviceManagement_ManagedDevices_DeviceCategory returns 404

When trying to execute this cmdlet to change the category of a managed device, it fails with a 404:
PS C:\WINDOWS\system32> Update-DeviceManagement_ManagedDevices_DeviceCategory -managedDeviceId a94d2a4d-fa93-441f-b7dd-26686af9712f -displayName "STA"
Update-DeviceManagement_ManagedDevices_DeviceCategory : 404 Not Found
{
"error": {
"code": "UnknownError",
"message": "",
"innerError": {
"request-id": "83bf818e-b2eb-4220-9048-db37e5d06af3",
"date": "2019-11-14T23:34:19"
}
}
}
At line:1 char:1

Update-DeviceManagement_ManagedDevices_DeviceCategory -managedDeviceI ...

  + CategoryInfo          : ConnectionError: (@{Request=; Response=}:PSObject) [Update-DeviceMa..._DeviceCategory],
 HttpRequestException
  + FullyQualifiedErrorId : PowerShellGraphSDK_HttpRequestError,Microsoft.Intune.PowerShellGraphSDK.PowerShellCmdlet
 s.Update_DeviceManagement_ManagedDevices_DeviceCategory

I'm getting a "400 Bad Request" error with the following...
{
"error": {
"code": "No method match route template",
"message": "No OData route exists that match template ~/singleton/navigation/key/navigation with http verb PATCH
for request /DeviceFE/StatelessDeviceFEService/deviceManagement/managedDevices('')/
deviceCategory.",
"innerError": {
"date": "2021-01-13T20:36:30",
"request-id": "",
"client-request-id": ""
}
}
}

I'm getting a "400 Bad Request" error with the following...
{
"error": {
"code": "No method match route template",
"message": "No OData route exists that match template ~/singleton/navigation/key/navigation with http verb PATCH
for request /DeviceFE/StatelessDeviceFEService/deviceManagement/managedDevices('')/
deviceCategory.",
"innerError": {
"date": "2021-01-13T20:36:30",
"request-id": "",
"client-request-id": ""
}
}
}


Huge remaining work in queue when use imu data

Hi, I am working on 2D cartographer pure localization mode with 2 lidars, imu and wheel odometry, The localization works with a 0.025 m resolution map. A huge number of "remaining work in queue" is reported by the pose_graph_2d logger. But when setting the use_imu_data=false, the number of "remaining work in queue" can be contained around zero. I am not sure what I am doing wrong. Any advice? Thank you.
output info
sensor rate:
[INFO] [1720429049.037858296] [cartographer logger]: I0708 16:57:29.000000 104893 collated_trajectory_builder.cc:81] odom rate: 20.00 Hz 5.00e-02 s +/- 8.02e-04 s (pulsed at 100.00% real time)
[INFO] [1720429049.037902965] [cartographer logger]: I0708 16:57:29.000000 104893 collated_trajectory_builder.cc:81] scan rate: 34.05 Hz 2.94e-02 s +/- 6.54e-04 s (pulsed at 100.00% real time)

[INFO] [1720408160.936455319] [cartographer logger]: I0708 11:09:20.000000  2700 collated_trajectory_builder.cc:81] imu rate: 20.04 Hz 4.99e-02 s +/- 1.84e-04 s (pulsed at 99.93% real time)
[INFO] [1720408160.936529662] [cartographer logger]: I0708 11:09:20.000000  2700 collated_trajectory_builder.cc:81] odom rate: 20.01 Hz 5.00e-02 s +/- 4.79e-04 s (pulsed at 100.13% real time)
[INFO] [1720408160.936550716] [cartographer logger]: I0708 11:09:20.000000  2700 collated_trajectory_builder.cc:81] scan rate: 34.06 Hz 2.94e-02 s +/- 7.14e-04 s (pulsed at 100.04% real time)

cartographer output:
[INFO] [1720408381.601759610] [cartographer logger]: I0708 11:13:01.000000  2736 pose_graph_2d.cc:538] Remaining work items in queue: 4719
[INFO] [1720408384.028980917] [cartographer logger]: I0708 11:13:04.000000  2700 motion_filter.cc:42] Motion filter reduced the number of nodes to 0.728302%.
[INFO] [1720408386.063300600] [cartographer logger]: I0708 11:13:06.000000  2700 collated_trajectory_builder.cc:81] imu rate: 20.02 Hz 4.99e-02 s +/- 3.23e-04 s (pulsed at 99.92% real time)
[INFO] [1720408386.063340585] [cartographer logger]: I0708 11:13:06.000000  2700 collated_trajectory_builder.cc:81] odom rate: 19.99 Hz 5.00e-02 s +/- 3.87e-04 s (pulsed at 100.03% real time)
[INFO] [1720408386.063361030] [cartographer logger]: I0708 11:13:06.000000  2700 collated_trajectory_builder.cc:81] scan rate: 34.04 Hz 2.94e-02 s +/- 6.78e-04 s (pulsed at 100.20% real time)
[INFO] [1720408398.718274695] [cartographer logger]: I0708 11:13:18.000000  2700 motion_filter.cc:42] Motion filter reduced the number of nodes to 0.718519%.
[INFO] [1720408399.157242435] [cartographer logger]: I0708 11:13:19.000000  2731 constraint_builder_2d.cc:290] 1 computations resulted in 0 additional constraints.

[INFO] [1720408405.299227648] [cartographer logger]: I0708 11:13:25.000000  2735 constraint_builder_2d.cc:290] 1 computations resulted in 1 additional constraints.
[INFO] [1720408405.299246262] [cartographer logger]: I0708 11:13:25.000000  2735 constraint_builder_2d.cc:292] Score histogram:
Count: 6  Min: 0.459629  Max: 0.516057  Mean: 0.489354
[0.459629, 0.465272)	                 ###	Count: 1 (16.6667%)	Total: 1 (16.6667%)
[0.465272, 0.470915)	                 ###	Count: 1 (16.6667%)	Total: 2 (33.3333%)
[0.470915, 0.476558)	                    	Count: 0 (0%)	Total: 2 (33.3333%)
[0.476558, 0.482200)	                 ###	Count: 1 (16.6667%)	Total: 3 (50%)
[0.482200, 0.487843)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.487843, 0.493486)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.493486, 0.499129)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.499129, 0.504772)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.504772, 0.510414)	             #######	Count: 2 (33.3333%)	Total: 5 (83.3333%)
[0.510414, 0.516057]	                 ###	Count: 1 (16.6667%)	Total: 6 (100%)
[INFO] [1720408405.337255731] [cartographer logger]: I0708 11:13:25.000000  2735 pose_graph_2d.cc:538] Remaining work items in queue: 5464
[INFO] [1720408405.340009849] [cartographer logger]: I0708 11:13:25.000000  2732 constraint_builder_2d.cc:290] 2 computations resulted in 0 additional constraints.
[INFO] [1720408405.340043701] [cartographer logger]: I0708 11:13:25.000000  2732 constraint_builder_2d.cc:292] Score histogram:
Count: 6  Min: 0.459629  Max: 0.516057  Mean: 0.489354
[0.459629, 0.465272)	                 ###	Count: 1 (16.6667%)	Total: 1 (16.6667%)
[0.465272, 0.470915)	                 ###	Count: 1 (16.6667%)	Total: 2 (33.3333%)
[0.470915, 0.476558)	                    	Count: 0 (0%)	Total: 2 (33.3333%)
[0.476558, 0.482200)	                 ###	Count: 1 (16.6667%)	Total: 3 (50%)
[0.482200, 0.487843)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.487843, 0.493486)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.493486, 0.499129)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.499129, 0.504772)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.504772, 0.510414)	             #######	Count: 2 (33.3333%)	Total: 5 (83.3333%)
[0.510414, 0.516057]	                 ###	Count: 1 (16.6667%)	Total: 6 (100%)
[INFO] [1720408405.360257634] [cartographer logger]: I0708 11:13:25.000000  2732 pose_graph_2d.cc:538] Remaining work items in queue: 5363
[INFO] [1720408405.362460679] [cartographer logger]: I0708 11:13:25.000000  2730 constraint_builder_2d.cc:290] 1 computations resulted in 0 additional constraints.
[INFO] [1720408405.362493988] [cartographer logger]: I0708 11:13:25.000000  2730 constraint_builder_2d.cc:292] Score histogram:
Count: 6  Min: 0.459629  Max: 0.516057  Mean: 0.489354
[0.459629, 0.465272)	                 ###	Count: 1 (16.6667%)	Total: 1 (16.6667%)
[0.465272, 0.470915)	                 ###	Count: 1 (16.6667%)	Total: 2 (33.3333%)
[0.470915, 0.476558)	                    	Count: 0 (0%)	Total: 2 (33.3333%)
[0.476558, 0.482200)	                 ###	Count: 1 (16.6667%)	Total: 3 (50%)
[0.482200, 0.487843)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.487843, 0.493486)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.493486, 0.499129)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.499129, 0.504772)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.504772, 0.510414)	             #######	Count: 2 (33.3333%)	Total: 5 (83.3333%)
[0.510414, 0.516057]	                 ###	Count: 1 (16.6667%)	Total: 6 (100%)
[INFO] [1720408405.384545825] [cartographer logger]: I0708 11:13:25.000000  2730 pose_graph_2d.cc:538] Remaining work items in queue: 5260
[INFO] [1720408405.387312717] [cartographer logger]: I0708 11:13:25.000000  2736 constraint_builder_2d.cc:290] 2 computations resulted in 0 additional constraints.
[INFO] [1720408405.387343711] [cartographer logger]: I0708 11:13:25.000000  2736 constraint_builder_2d.cc:292] Score histogram:
Count: 6  Min: 0.459629  Max: 0.516057  Mean: 0.489354
[0.459629, 0.465272)	                 ###	Count: 1 (16.6667%)	Total: 1 (16.6667%)
[0.465272, 0.470915)	                 ###	Count: 1 (16.6667%)	Total: 2 (33.3333%)
[0.470915, 0.476558)	                    	Count: 0 (0%)	Total: 2 (33.3333%)
[0.476558, 0.482200)	                 ###	Count: 1 (16.6667%)	Total: 3 (50%)
[0.482200, 0.487843)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.487843, 0.493486)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.493486, 0.499129)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.499129, 0.504772)	                    	Count: 0 (0%)	Total: 3 (50%)
[0.504772, 0.510414)	             #######	Count: 2 (33.3333%)	Total: 5 (83.3333%)
[0.510414, 0.516057]	                 ###	Count: 1 (16.6667%)	Total: 6 (100%)
[INFO] [1720408405.407074810] [cartographer logger]: I0708 11:13:25.000000  2736 pose_graph_2d.cc:538] Remaining work items in queue: 5122

cartographer localization configure
MAP_BUILDER.use_trajectory_builder_2d = true

TRAJECTORY_BUILDER_2D.submaps.num_range_data = 180
TRAJECTORY_BUILDER_2D.submaps.grid_options_2d.resolution = 0.025
TRAJECTORY_BUILDER_2D.min_range = 0.0
TRAJECTORY_BUILDER_2D.max_range = 13.
TRAJECTORY_BUILDER_2D.missing_data_ray_length = 1.

TRAJECTORY_BUILDER_2D.adaptive_voxel_filter.max_length = 1.
TRAJECTORY_BUILDER_2D.adaptive_voxel_filter.max_range = 30.
TRAJECTORY_BUILDER_2D.adaptive_voxel_filter.min_num_points = 400
TRAJECTORY_BUILDER_2D.voxel_filter_size = 0.025

TRAJECTORY_BUILDER_2D.use_imu_data = false --true

TRAJECTORY_BUILDER_2D.motion_filter.max_time_seconds = 15.
TRAJECTORY_BUILDER_2D.motion_filter.max_distance_meters = 0.3
TRAJECTORY_BUILDER_2D.motion_filter.max_angle_radians = math.rad(15.)

TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching = false

TRAJECTORY_BUILDER.pure_localization_trimmer = {
  max_submaps_to_keep = 3,
}

POSE_GRAPH.optimization_problem.huber_scale = 1e2
POSE_GRAPH.optimize_every_n_nodes = 3
POSE_GRAPH.constraint_builder.max_constraint_distance = 5
POSE_GRAPH.constraint_builder.sampling_ratio = 0.2
POSE_GRAPH.constraint_builder.min_score = 0.55
POSE_GRAPH.constraint_builder.global_localization_min_score = 0.45

POSE_GRAPH.constraint_builder.ceres_scan_matcher.ceres_solver_options.num_threads = 5
POSE_GRAPH.constraint_builder.fast_correlative_scan_matcher.linear_search_window = 5.0
POSE_GRAPH.constraint_builder.fast_correlative_scan_matcher.angular_search_window = math.rad(15.0)
POSE_GRAPH.optimization_problem.ceres_solver_options.num_threads = 7

POSE_GRAPH.global_sampling_ratio = 0.01
POSE_GRAPH.global_constraint_search_after_n_seconds = 15.

Just a heads up, this project really isn't actively maintained. If you want send a PR to address the issue we might be able to merge it.


Introduce and implement container GC policy

LGTM except small nits. You have to rebase for merge

Rebased and fixed the nit. Thanks for the review @dchen1107!

LGTM and will merge on green.

All is green :)


Add toString() to no-op implementations.

The GlobalTracer PR added its delegate tracer to the toString representation which is initially the NoopTracer.
The standard Java toString is the fully qualified classname (i.e. io.opentracing.NoopSpanImpl) followed by its hashcode (which is irrelevant for a singleton).
Therefore I suggest using NoopSpan, NoopSpanBuilder, NoopSpanContext and NoopTracer as their toString() representations.

Looks non-controversial, merging.


Tray icon not visible on Ubuntu Snap application

Environment (please complete the following information):

Lens Version: 4.0.0-rc.2
OS: Ubuntu
Installation method (e.g. snap or AppImage in Linux): Snap

Works with AppImage but not on Snap.

I have similar problem about task bar icon. (snap app)

Nothing we can do here until Electron has fix. I have been trying with different configurations without luck.

Nothing we can do here until Electron has fix. I have been trying with different configurations without luck.


[v2] Add Managed Identity support for Azure Monitor scaler to changelog

Signed-off-by: Tom Kerkhove<EMAIL_ADDRESS>
Relates to #936

This is easier @zroubalik :D


Installation issue

After installing your component from NuGet, I noticed that when I try to add the service, there is no extension method available in the service, and the namespace name cannot be found

Which version of NET and the package you are using? Can you provide the code snippet?
There is an extension method on IServiceCollection that configures the necessary services behind the scene:

using GoogleCaptchaComponent;
using GoogleCaptchaComponent.Configuration;

builder.Services.AddGoogleCaptcha(configuration =>
        {
            configuration.V2SiteKey = v2SiteKey;
            configuration.V3SiteKey = v3SiteKey;
            configuration.DefaultVersion = CaptchaConfiguration.Version.V2;
            configuration.DefaultTheme = CaptchaConfiguration.Theme.Light;
        });

NET 6, after installing your package, I couldn't find the 'googlecaptcha' namespace. I followed your installation steps as instructed

Absolutely, you've made a lot of changes in version 4. Is there a way to migrate to version 4 in .NET 6

okay thanks , Buy you should specify the version you're installing the package for, so that the developer knows that this package is not compatible with .NET 6

Okay, thanks. However, you should specify the package version so that when a developer tries to install the package from NuGet, a message will appear indicating that the package is not compatible with .NET 6, and the package won't be installed

Thanks for your suggestion but Nuget already lists package dependencies


Why is new Layer(path...) used inside Router instead of Layer(path...)

I'm going through the source code and I've noticed the following.
In the router/index.js the layer is created like this:
    var layer = new Layer(path, {
      sensitive: this.caseSensitive,
      strict: false,
      end: false
    }, fn);

While, in router/route the layer is created like this:
      var layer = Layer('/', {}, handle);
Based on the implementation of Layer:
function Layer(path, options, fn) {
  if (!(this instanceof Layer)) {
    return new Layer(path, options, fn);
  }

both calls do the same. Why use different initializations?

Honestly it's to get the code coverage up until Express 5.0 when this is already removed & addressed :)

got it, thanks for quick feedback


Support for WPA2 Enterprise EAP-TTLS

I noticed in the code that currently only WPA/WPA2 Personal support is available.
Having support for WPA2 Enterprise EAP-TTLS would be really useful for certain usecases (read as: support Telenet Wi-Free).
Based on some quick searching through the ESP32 code, this seems to be a supported usecase and not too difficult to add support for.
I might look into adding support myself, if I get my hands on a dongle. If not, this issue can be used by someone else as a starting point to implement it.

I have not identified a clear use case for this, especially now WiF-Free is being shut down. If your digital meter is outside wifi coverage, perhaps you can take a look at my LoRa dongle.


The post and preview boxes do weird things when disabled

They all seem to appear disabled at once with relevant text, possibly depending on which button is pressed?

Fixed in 5051d6664680c409b871fc76d63237065f8628ae.


Run configuration working directory and relative paths

Hi,
as requested here is some further explaining of my comments made in #22
Note I am using Windows 10 and pycharm 2021.1.2 professional.
When I initially created my config file (leaving everything blank as shown below)

it creates a config file with the following content
<component name="ProjectRunConfigurationManager">
    <configuration default="false" name="test_script.ps1" type="PowerShellRunType" factoryName="PowerShell"
                   scriptUrl="$PROJECT_DIR$/test_rel_ps_path/test_script.ps1" workingDirectory="C:\Users\Kristoffer"
                   executablePath="$PROJECT_DIR$/../../../Windows/System32/WindowsPowerShell/v1.0/powershell.exe">
        <envs/>
        <method v="2"/>
    </configuration>
</component>

Which automatically inserts my windows user profile directory, even though default project directory is set to the following

and my test_script.ps1 is just
$a = Get-Location
Write-Output $a

which returns

if I try to set the work dir to its relative parent directory like so

I end up with a dir inside my pycharm installation directory

However, it works as intended whenever I pass an absolute path

If I try to manually define $PROJECT_DIR$:

I end up with the following error

So from what I can tell the leaving the working directory blank returns the user directory and relative paths are relative to a folder inside the pycharm installation folder.
Could it be a bug in pycharm or is there something that can be done in the plugin or is it simply me not understanding how it all connects? :)
Best Regards
Kristoffer

If I try to manually define $PROJECT_DIR$:

I end up with the following error

I am not sure if this is technically a bug or not (the path variable handling in run configurations is kinda wild in the IntelliJ core), but one thing I can tell is that this behavior has been fixed in 2.0.8, by commit 7b50d35302e0601f231a8018b64dee2e8358aca0. And now it works well.
Thank you for very useful feedback; everything else from this issue, I believe, will be addressed by the solution proposed in #22.


Task: Update exception logging and handle proc exceptions

This improves debuggability of the case where commands cannot be run properly.

nice - thanks for adding this
:key: :sparkles:


All commands goes error when running shell files

Everything seems good when I was typing the command in the bash prompt, however thing goes wrong when I execute a shell file.
The file looks like this:
cd ../../..
export GOPATH=pwd
cd -
and the error goes this way
: not found: build.sh:
build.sh: 3: cd: can't cd to ../../..
build.sh: 5: cd: Illegal option -
: not found: build.sh:
even cd command does not work in shell file mode.

@wanglovesyang - Could you please fill out the issue template?  I'm not able to reproduce this.
benhill@BENHILL-DELL:~$ cat foo2.sh
cd ../../..
export GOPATH=pwd
cd -
benhill@BENHILL-DELL:~$ ./foo2.sh
/home/benhill
benhill@BENHILL-DELL:~$


Correct required test parameter

Move the test parameter to the required section in BPOptions
Update the README to make the required nature of this flag obvious

test parameter is not required for Bluepill (the top level runner) but required for bp-cli. So for end user, it is more an optional.

Ah. Thanks, @oliverhu. That's what was causing my confusion. Running the bp-cli target in Xcode.


Update opus to version 1.1.3 and opusfile 0.8

See changelog on http://www.opus-codec.org. Related to #5248.
CC @vnen :)

opusfile 0.8 is not shown on the download page, but it's in the repo too: https://archive.mozilla.org/pub/opus/

I'll try that soon.

Actually I did this myself with 9845bdd and 66dddcf, feel free to double check my changes :)

Completely forgot about this. I had some issues at first then postponed forever...


[DOC] Full-Text / (Simple) Query String should specify the syntax

What do you want to do?

[X ] Request a change to existing documentation
[ ] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

Tell us about your request. Provide a summary of the request and all versions that are affected.
.../query-dsl/full-text/index/#query-string and .../query-dsl/full-text/index/#simple-query-string
do not specify the syntax of the query string. Ideally, we would have a full specification of the query string mini-language, but until we have that, it should summarize it in some way. If I'm not mistaken, this is exactly the syntax supported by the Lucene query parser (https://lucene.apache.org/core/2_9_4/queryparsersyntax.html), but that needs to be checked.
What other resources are available? Provide links to related issues, POCs, steps for testing, etc.

Hey, can I take this on?

Hi @ShatilKhan! We'd love your help on the documentation, but this particular issue is already being addressed as part of the meta issue where we're tracking full-text queries (see https://github.com/opensearch-project/documentation-website/issues/2173#issuecomment-1447424894). We'll comment on here once the PR is up. Also, please feel free to browse other documentation issues and taking on one that you're interested in. We'd appreciate your contribution. Thank you!

Sure thing!


Faster env-map MIS calculation, use FloatType when loading env-maps with RGBELoader

By default, the RGBELoader uses HalfFloatType to load HDRs:
https://github.com/mrdoob/three.js/blob/dc9570226cf8e541cc71dfebf16f19935dabb74d/examples/jsm/loaders/RGBELoader.js#L19
The HDRs from polyhaven (which are used in the examples) have 32-bits per channel. This fixes the issue of losing precision when loading a 32-bit HDR with the RGBELoader by setting its data type to FloatType.
The other fix speeds up the binarySearchFindClosestIndexOf function in EquirectHdrInfoUniform by changing some offsets and using a different way to calculate the mid variable. The most significant optimization (thanks to ChatGPT 😄) is changing
const mid = ~ ~ ( 0.5 * upper + 0.5 * lower );

to
const mid = ( lower + upper ) >> 1;

For comparison, updating EquirectHdrInfoUniform for a 4096x2048 HDR on my CPU took ~900ms using the old method. With the new method it's ~400ms.
Besides that I could also move the calculation of the weights for MIS in EquirectHdrInfoUniform to a worker. For small environment maps (e.g. 1K) it doesn't seem to make sense because without workers I get ~30ms and with workers I get ~120ms. Looks like moving the env map image data as well as the weights arrays between threads is the bottleneck. For higher HDRs it would make sense since calculating the weights on the main thread would freeze the application for hundreds of ms.
Let me know what you'd think of using workers, I'd have a ready implementation.

Great, thank you!


About datasets used in your paper: How to get Layer structure labels of STARmap dataset?

Congratulations for this nice work!
I am very interested in the performace for STARmap datasets and I wonder how do you get the layer structure label of STARmap dataset, because I can't find it in the website you provide.
I'll appreciate it if you can explain this or provide the layer structure label.
Thanks!

Hello, I have similar problem with you, I can't find the 'tissue_positions_list.csv' in tutorial 2, I don't know whether you find it

I find it , in there

Hello, I have similar problem with you, I can't find the 'tissue_positions_list.csv' in tutorial 2, I don't know whether you find it

I find it in there

Hello, I have similar problem with you, I can't find the 'tissue_positions_list.csv' in tutorial 2, I don't know whether you find it

I find it in there

Thank you for your sharing, can you share the website?

Hello, I have similar problem with you, I can't find the 'tissue_positions_list.csv' in tutorial 2, I don't know whether you find it

I find it in there

Thank you for your sharing, can you share the website?

hello, it's dataset in tutorial 2, maybe not useful to you

We add a Tutorial of the ISH-based STARmap dataset (i.e. the Fig. S16 of the STAGATE paper) at https://stagate.readthedocs.io/en/latest/T9_STARmap.html. The layer annotation of the STARmap data are provided by the SpaGCN paper, and you can found it at the adata.obs['labels'] in our tutorial.

We add a Tutorial of the ISH-based STARmap dataset (i.e. the Fig. S16 of the STAGATE paper) at https://stagate.readthedocs.io/en/latest/T9_STARmap.html. The layer annotation of the STARmap data are provided by the SpaGCN paper, and you can found it at the adata.obs['labels'] in our tutorial.

Thank you so much!


use traits for registration tombstone tests

Purpose
The tombstone tests should use traits to get registrations in proper states rather than setting the state manually.
Summary of Changes

create registration in mirage with isWithdrawn trait for withdrawn tombstone test
create registration in mirage with isArchiving  trait for archiving tombstone test

Side Effects
none
Feature Flags
n/a
QA Notes
n/a
Ticket
n/a
Reviewer Checklist

[ ] meets requirements
[ ] easy to understand
[ ] DRY
[ ] testable and includes test(s)
[ ] changes described in CHANGELOG.md

Pull Request Test Coverage Report for Build 2816

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 70.909%

Totals

Change from base Build 2814:
0.0%

Covered Lines:
5798

Relevant Lines:
7370

💛  - Coveralls


Force-process entity submissions held in backlog

Main PR to close https://github.com/getodk/central/issues/682 following PR https://github.com/getodk/central-backend/pull/1171

What has been done to verify that this works as intended?
Why is this the best possible solution? Were any other approaches considered?
How does this change affect users? Describe intentional changes to behavior and behavior that could have accidentally been affected by code changes. In other words, what are the regression risks?
Does this change require updates to the API documentation? If so, please update docs/api.yaml as part of this PR.
Before submitting this PR, please make sure you have:

[ ] run make test and confirmed all checks still pass OR confirm CircleCI build passes
[ ] verified that any code from external sources are properly credited in comments or that everything is internally sourced

Thoughts on force-processing when entities can be soft-deleted:

Don't force-apply things in the backlog that are about soft-deleted entities.
Consider deleting things from the backlog when the entity that they reference are purged. (When entity purging happens)


[role] ensure role definition create & update commands accept multiple permission configurations

This fixes #3250, that users can feed the output from the list command back to the create\update commands.
I also made refactoring to simplify the code difference caused by SDK breaking changes in the new api-version. I thought I could make swagger spec change to have the consistency in the SDK, but looks like it is not possible.

[x] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

[x] I adhere to the Command Guidelines.

@bganapa, can you please review?
Please note, I also added e2e test coverage for stack profile to ensure nothing are broken. Hope it doesn't conflict with the work at your end. Moving forward, please make sure to have e2e test coverages in stack profile PRs

@troydai, feedback addressed.


Website still references IRC/freenode

Describe the bug
Per #430 and https://github.com/Syncplay/syncplay/commit/908c460e98cdad38a5f05a13781174fda87a67d8, references to IRC were removed to IRC/freenode in the app. However, it hasn't been removed from the website.
To Reproduce
Visit:

https://syncplay.pl
https://syncplay.pl/guide/

Expected behavior
Should be removed.

freenode is still mentioned on https://syncplay.pl/about/contact-us/

Cheers, I've removed now updated that page.


Interactive snapshot update not working

I'm using the latest jest and starting it with jest --watch /path/tests/**/*.js, but when I have a test failure due to a failing snapshot, I can't interactively update the snapshots by pressing i as the console says. When I press i nothing happens, but the other keys are working fine.

@rightaway I'm not able to reproduce, can you push a repo that reproduces?
Here's what I see in 22.1.4 with running yarn --watch jest --watch ./**/*.spec.js from this repo

It looks like the behavior I mentioned is for when I change the name of a test case, is it expected?

Ah, so this is what you see? Pressing i from this view does nothing.

Short term we could remove the i option in this case

Yes, that's the same behavior I see. Was thinking there would be an interactive prompt to show the changed names.


dgoss doesn't work on MacOS because of private /tmp

Describe the bug
It seems dgoss doesn't work on MacOS because /tmp is private (I guess). I.e. docker cannot see files created by user.
How To Reproduce
Install current dgoss & goss on MacOS as described in documentation and try dgoss edit alpine sleep 1000 e.g. You may see there is no goss binary copied into container. See Actual Behavior for example.
Expected Behavior
It's expected to have /goss/goss binary in docker container.
➜  dgoss edit alpine sleep 1000
INFO: Starting docker container
INFO: Container ID: f1911630
INFO: Run goss add/autoadd to add resources
/goss # ls -la /goss/
total 8332
drwxrwxrwx    4 root     root           128 Sep 30 11:30 .
drwxr-xr-x    1 root     root          4096 Sep 30 11:30 ..
-rw-r--r--    1 root     root             0 Sep 30 11:30 docker_output.log
-rwxr-xr-x    1 root     root       8524064 Sep 30 11:30 goss

Actual Behavior
➜ dgoss edit alpine sleep 1000
INFO: Starting docker container
INFO: Container ID: 389e40a1
INFO: Run goss add/autoadd to add resources
/goss # ls -la /goss/
total 4
drwxr-xr-x    2 root     root            40 Sep 30 11:27 .
drwxr-xr-x    1 root     root          4096 Sep 30 11:27 ..

Environment:

goss version v0.3.6
MacOS Mojave 10.14.6 (18G6020)

How to fix
I fixed it for myself by applying the following change. Actually I'm just using ~/tmp instead of /tmp. I'm not sure it's good solution for everyone though.. I'd prefer to be able to override it via environment variable.
➜  diff -u dgoss.orig dgoss
--- dgoss.orig	2020-09-30 19:30:28.000000000 +0800
+++ dgoss	2020-09-30 19:30:37.000000000 +0800
@@ -66,7 +66,7 @@
 }

 # Main
-tmp_dir=$(mktemp -d /tmp/tmp.XXXXXXXXXX)
+tmp_dir=$(mktemp -d ~/tmp/tmp.XXXXXXXXXX)
 chmod 777 "$tmp_dir"
 trap 'ret=$?;cleanup;exit $ret' EXIT

This seems like a duplicate of #329.
Also, I wonder if it's related to the following:

https://stackoverflow.com/questions/37673140/docker-volume-located-in-tmp-on-osx-empty
https://stackoverflow.com/questions/55667800/mac-docker-volume-mount-using-osxfs-not-working

I wonder if there's a way for dgoss to detect this.

Ah, you're right! #329 is about the same issue. And from second link it seems the actual reason is not the private /tmp but how docker hyperkit VM is started. Well, that's explains.
You can close this then. #329 is enough and there is cp strategy which should work. Thank you!

Regarding way to detect.. You can try to check the goss presence (or execution result) with mount strategy and if there is no fallback to cp strategy.

I'll keep this ticket open to implement the detection. I think it should error and fail and allow the user to decide to use cp, only because docker_output.log doesn't show up in cp mode, so it's not exactly the same user experience.
Thanks!


Feature Request - Support basic markdown

For example:
Title("`ClassName` is really important") would render a title where `ClassName` is highlighted like ClassName.
Text("\_This\_ is italicized") would render text where _This_ renders like This.
Words("\**What\** even is text") would render words where *What* renders like What.
I use these inline highlights a lot and I immediately was missing them when I tried using DeckUI because my title contained something I wanted to highlight.

DeckUI totally needs to have this 😊 I'll see what we can do!


[5.4] Add the method methodsWithoutModels in AuthorizesRequests Trait.

Hey guys!
In this trait we have the resourceAbilityMap() which allow us to add directly in controller some methods to check in the authorize* methods.
Actually we can't add methods which doesn't need any parameter, because the setting of $modelName is done with a hard coded array.
I added this method to fix that.
Example of use :
protected function resourceAbilityMap()
{
    return [
        'index'      => 'list',
        'datatables' => 'list',
        'show'       => 'view',
        'create'     => 'create',
        'store'      => 'create',
        'edit'       => 'update',
        'update'     => 'update',
        'destroy'    => 'delete',
    ];
}
protected function methodsWithoutModels()
{
    return ['index', 'datatables', 'create', 'store'];
}

What do you think about that ?
Thx.

@mathieutu Could you add some tests for this?

Actually, this is already tested in \Illuminate\Tests\Auth\AuthorizesResourcesTest, because I've just pulled out the array in an other method.
Something I could do is to test that the method exists in the controller :
public function testMethodsExists()
{
    $this->assertTrue(method_exists(new AuthorizesResourcesController(), 'methodsWithoutModels'));
}

but there is no test like that for the resourceAbilityMap() method.
I also eventually might override the methods in the test controller, add a new entry like in the previous example and check if a new middleware is correctly added at the end, but this is just testing how PHP overriding works, as this is already tested for all other standard resource methods.
In fact this is principally about code refactoring here, nothing changed, it's just to allow developers to add easily new methods to their resources (no need to override the autorize* methods)...


chore: somaliland macedonia

Description
The purpose of this ticket it twofold;

Add Somaliland to the list of countries
Trello ticket: https://trello.com/c/VhiQbLN2/1429-add-somaliland-to-list-of-countries

Remove Macedonia from the DB
https://trello.com/c/QkBuutzp/1289-list-management-delete-macedonia

As we're waiting for confirmation on Somaliland, can you please remove those changes from this PR and a separate one can be raised when they're ready to go ahead with it.

Yeah sure, I could just close this PR and when a new ticket is created just create a new PR on a different branch


Collect additional metadata for vulnerabilities from OSV

Description of the PR

This PR introduces a new flag, add-vuln-metadata, that enables the collection of severity information for CVEs directly from the OSV API. When this flag is enabled, the collected severity data is ingested into GUAC as a VulnerabilityMetadata nodes, enriching vulnerability data with additional context on severity levels.
Key Changes:

New Flag: Adds the add-vuln-metadata CLI flag.
Ingestion to GUAC: Captures the retrieved severity data and stores it as a VulnerabilityMetadata node, allowing for improved vulnerability assessment and analysis within GUAC.

This enhancement provides better visibility into CVE severity, enabling users to prioritize vulnerabilities more effectively based on standardized severity metrics.

PR Checklist

[x] All commits have a Developer Certificate of Origin (DCO) -- they are generated using -s flag to git commit.
[x] All new changes are covered by tests
[ ] If GraphQL schema is changed, make generate has been run
[ ] If GraphQL schema is changed, GraphQL client updates/additions have been made
[ ] If OpenAPI spec is changed, make generate has been run
[ ] If ent schema is changed, make generate has been run
[ ] If collectsub protobuf has been changed, make proto has been run
[ ] All CI checks are passing (tests and formatting)
[ ] All dependent PRs have already been merged

Signed-off-by: Lukas Hoehl<EMAIL_ADDRESS>

Thanks @hown3d this is a great addition! Will review this soon!

For now I've only included the severity field from the OSV API.
I see potential in ingesting additional metadata like summary, details and references into GUAC. Those are not part of the vulnerability attestation (yet?) though, so it's not clear how to parse these from the attestation into VulnerabilityMetadata nodes.

For the vulnerability summary, details..etc, our thought process was that information did not need to be stored in the graph. Rather, it can be retrieved client side when needed. The CVE - severity field are needed to make decisions.

Sorry for the delay! I will review this soon!

Overall this is a great PR, very comprehensive! We should just remove it from "on ingestion" otherwise this is good to go! Thank You!

Rechecking the code i don't think it's neccessary to use a flag instead just defaulting to add vulnerability metadata. It introduces so many places to add this flag that it gets quite confusing.
I would argue that it's not a problem to always store the included severity in GUAC.


Redirecting to login

Hi all,
I am trying to start the freescout for the first time and when I type the APP_URL on browser I get too many redirections.

Thanks!

I also tried to expose the port 80 in order to use a valid (letsencrypt) SSL (https://freescout.mydomain.com/login) through an external nginx
(external-nginx:443) --proxy---> (docker-host:80) ----exposed-port---> (freescout-app:80)

The same problem.

 Got the same after deployment docker behind apache reverse proxy.


SAQ hangs if Postgres restarts while SAQ is running

SAQ hangs if Postgres restarts while SAQ is running
Repro steps:

Have SAQ running and waiting for a job
Queue a job
Should process as normal here
Restart database
Queue a job
SAQ won't do anything

Thank you for reporting this bug. I am able to reproduce it.


I Can't Find Countdown/Combo Messages In hx files

What needs to be documented?

How I Do Find Code In source folder

it might be in playstate.hx

found thank you


[1.x] Safely return early if there is nothing to discover()

Otherwise Feature::discover() will throw Symfony\ Component\Finder\Exception\ DirectoryNotFoundException if no class based features have been added yet, or if all features have been removed.
    public function discover($namespace = 'App\\Features', $path = null)
    {

+        if (!$path && !is_dir(base_path('app/Features'))) {
+           return;
+        }

Prevents running into apps with a app/Features/.gitkeep. ( I actually caught myself doing this rather than checking for the directory before running Feature::discover() in a service provider)
Note:
Sometimes you need to run Feature::discover()  not know whether there will be any, especially if more than one developer is working on the app and whatever you are doing depends on a feature being defined (but you may not be the one to define or implement it).

I'm closing this because unfortunately it could break existing applications if they are relying on this to throw.
I recommend try{} catch as a reasonable alternative.


Use PNP.PowerShell to query MS Lists in private Teams channels

Reporting an Issue or Missing Feature
I am experiencing the issue that when using PNP.PowerShell I am unable to read/write against MS Lists (a.k.a Sharepoint lists) store in MS Team sites in private channels
Expected behavior
Be able to use cmdlets like Get-PNPList and Get-PNPListItem to interact with lists
Actual behavior
When retrieving a list from a private channel inside a Teams sharepoint site I receive the following error

I use an Azure AD service principal which is granted (Admin consent) the sites.selected API permission and the FC permission were granted using Graph API call to the MS Teams SPO site AND the (sub)-site for the private channel.
If I query the SPO list directy using Graph API calls I can retrieve the list and the items in the list. With the PNP.PowerShell cmdlets however not. Connecting to the SPO site with Connect-PnPOnline works just fine.
Steps to reproduce behavior
Connect-PnPOnline -Url $SpoSiteUri -ClientID $SpoClientID -CertificateBase64Encoded $base64EncodedCertificate -CertificatePassword $secureString -Tenant "<tenant>.onmicrosoft.com" -ReturnConnection -Verbose
$assignmentsList = Get-PNPList -Identity $polAssignmentListName
When I perform the same steps but use my current credentials this works just fine. With a Service Principal with granted API permissions however not.
What is the version of the Cmdlet module you are running?
1.10.0
Which operating system/environment are you running PnP PowerShell on?

[x] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

Hope there is a simple solution or this gets fixed somehow.

Additional comment : whether I connect to the private channel site or the MS teams site using Connect-PnPOnline, I keep hitting the issue with get-PnPList(item). Also Get-PnPSite fails. It looks like tese cmdlets fail as soon as there is a private channel in the Team.

You need to provide SharePoint resource permissions to your Azure AD app because we are using CSOM under the hood and not Graph endpoints, so SharePoint also has Sites.Selected permission and then it will start working.

Hi @MarcelHeek , any update on this ?? As mentioned here, you need to provide SharePoint permissions to your Azure AD application as we use SharePoint CSOM/REST APIs underneath to do the list operations

@gautamdsheth
Great, that works like a charm. Thanks for pointing me in the right direction.


[FEATURE] Huge file transfer

I'm trying to publish a setup program, an artifact of a devops build pipeline, to Sharepoint Folder.
Now it is a huge binary (almost 1GB) and I get the following message:
The request message is too big. The server does not allow messages larger than 262144000 bytes
Is there any plan to add a variation of Add-PnPFile cmd to allow uploading files bigger then 262144000 bytes ?
(maybe using something like : https://sharepoint.stackexchange.com/questions/161845/using-chunked-upload-startupload-with-sharepoint-rest-api)

Hello, we are already doing chunk upload for files >10 MB.
Can you try to upload a video or similar large file in your local machine instead of devops ?

Closing it due to lack of response.
Please use the latest version of PnP PowerShell and open a new issue if it still happens


Instance groups support

Added instance groups support
Added acceptance tests for instance groups
Adding box maintenance tasks
Acceptance tests now read the box from local storage
Rubocop/tests cleanup
Fixing #115, #105

/CC @erjohnso please, merge

LGTM, thanks @Temikus :+1:


i can't dowload nginx image

Expected behavior
Actual behavior
Information about the Issue
Steps to reproduce the behavior

...
...

No information provided or steps to replicate - Closing


[FLINK-19465][runtime / statebackends] Add CheckpointStorage interface and wire through runtime

What is the purpose of the change
This adds the new CheckpointStorage interface as described in FLIP-142 and wires it through the runtime. Public API changes will be added in a follow-up PR.
Brief changelog
675d93c  Adds the new CheckpointStorage interface, factory, and loader.
6a41e53    Wires the CheckpointStorage object through the StreamGraph, ExecutionGraph, StreamTask, and CheckpointCoordinator
550bb03   Removes the checkpoint-storage related methods from StateBackend and adds CheckpointStorage as an interface to the existing state backend implementations. This commit then makes misc fixes to tests so everything passes.
Verifying this change
UT tests and also existing E2E tests
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

Note to reviewers, I decided not update the javadoc for StateBackend in this PR. I'll update it in the follow up when I add the new StateBackend implementations.

Fixed the missing license, sorry.

@rkhachatryan appreciate the speedy review. I hope I've addressed all your comments. Please take a look and let me know if you have any other concerns.

@rkhachatryan appreciate the speedy review. I hope I've addressed all your comments. Please take a look and let me know if you have any other concerns.

Thanks! Will merge and rebase the follow-up later today.

Thanks! Will merge and rebase the follow-up later today.

Merged in 2426d84268ad330ec661a0ea6bedb2a3a2bd08e6

Merged in 2426d84268ad330ec661a0ea6bedb2a3a2bd08e6

Hoops, I commented before I noticed this PR is closed.
There are a couple of places that "state-backed" should be replaced by "checkpoint storage", but we can fix them in the follow-up PRs I guess.

Hoops, I commented before I noticed this PR is closed.
There are a couple of places that "state-backed" should be replaced by "checkpoint storage", but we can fix them in the follow-up PRs I guess.