Cannot Connect with remote redis server

message: Redis connection lost and commands aborted in uncertain state. They might have been processed.
code: UNCERTAIN_STATE
stack: Error: Redis connection lost and commands aborted in uncertain state. They might have been processed.
    at RedisClient.connection_gone (/home/wulian/cloud/fish/node_modules/redis/index.js:576:17)
    at RedisClient.on_error (/home/wulian/cloud/fish/node_modules/redis/index.js:346:10)
    at Socket.<anonymous> (/home/wulian/cloud/fish/node_modules/redis/index.js:231:14)
    at emitOne (events.js:90:13)
    at Socket.emit (events.js:182:7)
    at emitErrorNT (net.js:1253:8)
    at _combinedTickCallback (node.js:383:13)
    at process._tickCallback (node.js:407:11)
------------------

@willin the error message indicates that your connection dropped after the connection was established and some commands were fired to your server but the server did not yet respond to those requests.
This should not be an error with node_redis but with your server connection or your code.
But as you did not post anything else besides the error I'm not able to help you any further. Please fill out all the requested data as stated in the issue template.

Ping


Support for bearer authentication

Depended on by https://github.com/tobixen/calendar-cli/issues/81

I confirm that Bearer authentication is not supported yet.

I don't know what I was thinking of, this looks like a duplicate of #81 ?  I'll leave both issues open as for now.

Yes - it shouldn't be too difficult, if only having a server to test with.  Well, there is always the Google servers :-)

This won't go into v0.10 I'm afraid.

I don't know what I was thinking of, this looks like a duplicate of #81 ? I'll leave both issues open as for now.

Of course ... https://github.com/tobixen/calendar-cli/issues/81 is sort of the same issue, but in a different project :-)

Is connecting to a Google CalDAV calendar with OAuth2 already possible? If yes, is there documentation / an example of how to do so? I would like to use this lib for Google calendars as well. Thanks for the great work so far 🙏🏻

I just had a quick look into the documentation - we're still lacking documentation on how to connect to Google.  Did anyone successfully connect to their Google calendar?

I just had a quick look into the documentation - we're still lacking documentation on how to connect to Google. Did anyone successfully connect to their Google calendar?

yep, here's an example code that does just that:
#!/usr/bin/env python3
import os

from flask import Flask, jsonify, Response
from google.oauth2.credentials import Credentials
from caldav import DAVClient
from caldav.requests import HTTPBearerAuth

app = Flask(__name__)

# Constants
CREDENTIALS_FILE = 'credentials.json'
TOKEN_FILE = 'token.json'
CALDAV_URL_TEMPLATE = 'https://apidata.googleusercontent.com/caldav/v2/{calendar_id}/user'

# Cache to store calendar summaries and IDs
CALENDAR_CACHE = {}

def get_google_credentials():
    """
    Load or refresh Google OAuth2 credentials.
    """

    if os.path.exists(TOKEN_FILE):
        creds = Credentials.from_authorized_user_file(TOKEN_FILE)
    else:
        from google_auth_oauthlib.flow import InstalledAppFlow
        flow = InstalledAppFlow.from_client_secrets_file(
            CREDENTIALS_FILE, scopes=['https://www.googleapis.com/auth/calendar'])
        creds = flow.run_local_server(port=0)

        # save credentials for future use
        with open(TOKEN_FILE, 'w') as token:
            token.write(creds.to_json())

    return creds

def get_calendar_list():
    """
    Fetch the list of calendars and store them in the cache.
    """

    creds = get_google_credentials()
    from googleapiclient.discovery import build
    service = build('calendar', 'v3', credentials=creds)

    calendars = service.calendarList().list().execute()
    for calendar in calendars.get('items', []):
        CALENDAR_CACHE[calendar['summary']] = calendar['id']

@app.route('/calendars', methods=['GET'])
def list_calendars():
    """
    Endpoint to list all available calendars.
    """
    if not CALENDAR_CACHE:
        get_calendar_list()

    return jsonify({'calendars': list(CALENDAR_CACHE.keys())})

@app.route('/calendar/<calendar_name>.ics', methods=['GET'])
def serve_calendar_ics(calendar_name):
    """
    Endpoint to serve .ics data for a specific calendar.
    """
    if calendar_name not in CALENDAR_CACHE:
        return jsonify({'error': 'Calendar not found'}), 404

    calendar_id = CALENDAR_CACHE[calendar_name]
    creds = get_google_credentials()
    access_token = creds.token

    try:
        calendar_url = CALDAV_URL_TEMPLATE.format(calendar_id=calendar_id)

        # connect to the calendar using CalDAV
        client = DAVClient(
            url=calendar_url,
            auth=HTTPBearerAuth(access_token)
        )
        principal = client.principal()
        calendars = principal.calendars()

        # fetch events from the first calendar (usually the only one)
        calendar = calendars[0]
        ics_data = ''
        for event in calendar.events():
            ics_data += event.data

        # serve the calendar as an ICS file
        return Response(ics_data, mimetype='text/calendar')
    except Exception as ex:
        return jsonify({'error': str(ex)}), 500

# requirements: flask, caldav, google-auth, google-auth-oauthlib, google-api-python-client
if __name__ == '__main__':

    # preload calendar list on server start
    get_calendar_list()
    app.run(host='<IP_ADDRESS>', port=5000)


Add password digest as a configurable property for primary JDBC user store.

Doc [1] states to specify the password hashing algorithm, the primary user store property used is password_hash_method which is incorrect. From the fix for issue [2], a new config has been introduced for this.
[user_store]
type = "database_unique_id"
password_digest="PBKDF2"

Doc [1] should be updated to reflect this change for IS 5.12.0
[1] https://is.docs.wso2.com/en/latest/setup/configuring-a-jdbc-user-store/#properties-used-in-jdbc-user-store-manager
[2] https://github.com/wso2/product-is/issues/12377

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


chore: bdd-spring-1582921566 to 0.0.1

chore: Promote bdd-spring-1582921566 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Fixed #13312 --  Added a way to customize the order_by() of null fields.

https://code.djangoproject.com/ticket/13312

Buildbot, add to whitelist.

I suppose we could make OrderBy.asc()/desc() chainable in another commit by making them return self.

The tests are failing of PostgreSQL. Could you investigate?

Sure. I'm on it

@charettes now asc and desc are chainable with nulls_last as asked.

Should we also add support for NULLS FIRST?

I feel like making nulls a parameter of asc()/desc() would make a better API than chaining by exposing both a nulls_first() and nulls_last() method. e.g.:
Event.objects.order_by(F('start_date').asc(nulls='first')) or
Event.objects.order_by(F('start_date').asc(nulls_first=True))

@charette now comply with the api you suggest.

@jarshwah, @mjtamlyn what you think of the (nulls='first') API? The only thing that bugs me is the usage of a string constant as it not used anywhere else in the ORM. We could also take a tri-valued nulls_first (or nulls_last kwarg) where False maps to NULLS LAST and None does nothing.

Don't like the string argument, sorry, and I feel that a tri-value would constantly require referencing the docs. I'd prefer nulls_first=True or nulls_last=True as an argument to asc/desc. Are there any better options?

Are there any better options?

I can't think of any. Maybe the this should be taken to the developpers mailing list?

I am ok with nulls_first=True syntax but before implementing it I need a green flag of yours so just let me know the endorsed syntax and I'll implement it.

I like the nulls_first=True option best as well. It's not brilliant, but best of a bad bunhc.

@boblefrag let's go with nulls_first=True and nulls_last=True.
You might want to delegate asc()/desc()'s **kwargs to OrderBy.__init__() and raise a ValueError if both nulls_first and  nulls_last are specified.

FWIW nulls_first=True and nulls_last=True seems like a nice solution to me too (that said using a set of allowed strings like nulls='first' isn't exactly unpythonic per se, c.f. str.encode('ascii', errors='replace')).

@charettes nulls_first=True and nulls_last=True. What's next step?

The code is LGTM. Maybe break the nulls_first and nulls_last options assertions in two tests and add an additional test method for the ValueError raised when both options are used together.

@charettes done.

You can reuse the Article objects created in setup instead of creating two new ones per tests by adding an author to one of them. You could also convert the test class to use setupTestData instead of setUp. Please use the title of this PR as commit message.

@charettes is there anything left to be donefor making this PR mergeable ?

Marked the ticket as ready for final review.

Documentation is missing. See our patch review checklist for details. Please uncheck "Needs documentation" on the ticket after updating.

fixed typo and added doc

@timgraham here is the 2 commits. Let me know if it's ok for you.

Updated in https://github.com/django/django/pull/7563.


Tokenization error for SciTail

Describe the bug
I got the following error with tokenize_and_cache.py for SciTail:
SciTailTask
  [train]: /scratch/bowman/IRT_Experiments/jiant-2/experiments/tasks/data/scitail/train.jsonl
  [val]: /scratch/bowman/IRT_Experiments/jiant-2/experiments/tasks/data/scitail/val.jsonl
  [test]: /scratch/bowman/IRT_Experiments/jiant-2/experiments/tasks/data/scitail/test.jsonl
Tokenizing:   0%|                                                                                | 0/23097 [00:00<?, ?it/s]Traceback (most recent call last):
  File "/scratch/cv50/jiant-2/jiant/jiant/proj/main/tokenize_and_cache.py", line 214, in <module>
    main(args=RunConfiguration.run_cli_json_prepend())
  File "/scratch/cv50/jiant-2/jiant/jiant/proj/main/tokenize_and_cache.py", line 168, in main
    args=args,
  File "/scratch/cv50/jiant-2/jiant/jiant/proj/main/tokenize_and_cache.py", line 53, in chunk_and_save
    args=args,
  File "/scratch/cv50/jiant-2/jiant/jiant/proj/main/tokenize_and_cache.py", line 129, in iter_chunk_and_save
    recorder_callback=max_valid_length_recorder,
  File "/scratch/cv50/jiant-2/jiant/jiant/shared/caching.py", line 91, in iter_chunk_and_save
    for datum in data:
  File "/scratch/cv50/jiant-2/jiant/jiant/proj/main/preprocessing.py", line 145, in iter_chunk_convert_examples_to_dataset
    verbose=verbose,
  File "/scratch/cv50/jiant-2/jiant/jiant/proj/main/preprocessing.py", line 216, in iter_chunk_tokenize_and_featurize
    yield example.tokenize(tokenizer).featurize(tokenizer, feat_spec)
  File "/scratch/cv50/jiant-2/jiant/jiant/tasks/lib/scitail.py", line 29, in tokenize
    input_hypothesis=tokenizer.tokenize(self.input_hypothesis),
  File "/scratch/cv50/packages/miniconda3/envs/jiant2/lib/python3.7/site-packages/transformers/tokenization_utils.py", line 364, in tokenize
    tokenized_text = split_on_tokens(no_split_token, text)
  File "/scratch/cv50/packages/miniconda3/envs/jiant2/lib/python3.7/site-packages/transformers/tokenization_utils.py", line 338, in split_on_tokens
    if not text.strip():
AttributeError: 'float' object has no attribute 'strip'

To Reproduce:
python ${JIANT_PATH}/proj/main/tokenize_and_cache.py \
    		--task_config_path ${DATA_DIR}/configs/${TASK_NAME}_config.json \
    		--model_type ${MODEL_NAME} \
    		--model_tokenizer_path ${MODELS_DIR}/${MODEL_NAME}/tokenizer \
    		--phases train,val,test \
    		--max_seq_length 256 \
    		--do_iter \
    		--smart_truncate \
    		--output_dir ${CACHE_DIR}/${MODEL_NAME}/${TASK_NAME}

Tell use which version of jiant you're using: jiant2 commit<PHONE_NUMBER>8dbc0ebe9cf4e538174ba574845f7c
Describe the environment where you're using jiant, e.g, "2 P40 GPUs": 1 P40 GPU
Provide the experiment config artifact (e.g., defaults.conf):

{
  "task": "scitail",
  "paths": {
    "train": "/scratch/bowman/IRT_Experiments/jiant-2/experiments/tasks/data/scitail/train.jsonl",
    "val": "/scratch/bowman/IRT_Experiments/jiant-2/experiments/tasks/data/scitail/val.jsonl",
    "test": "/scratch/bowman/IRT_Experiments/jiant-2/experiments/tasks/data/scitail/test.jsonl"
  },
  "name": "scitail"
}

MODEL_TYPE: roberta-base-100M-1

Closed with https://github.com/nyu-mll/jiant/pull/1123


Add X-Frame-Options header option

From a H1 report, we should really add an option to send the X-Frame-Options header to protect against clickjacking

Agree.
https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet

I think there should be discussion on the default. I think for existing sites it should be off (to prevent breakage) but on new sites it should be enabled by default.

I think login and dashboard pages should send X-Frame-Options header by default, even for existing sites.

I think it should default to on said. It's a security "vulnerability" and so I feel like that trumps backwards compatibility in most cases. If someone wants to turn it off, I think they should be able to do it on a page by page level (maybe via attribute?) or at a global level (via config).
My line of thinking on these things is pretty utilitarian, almost nobody is going to enable these things unless they're hyper aware of a) the vulnerability and b) the ability to prevent it within concrete5.

+1 from me.
Information-technology Promotion Agency, Japan, which control Japan's security measurement required to support Clickjacking.
I was just asked by another client about this as well.
I would really like to support it

Yeah, I think we should do as Takuro suggests – include it by default in
the login controller and in the Dashboard Page Controller.
On Tue, Jul 28, 2015 at 10:45 PM, Katz Ueno<EMAIL_ADDRESS>wrote:

+1 from me.
Information-technology Promotion Agency, Japan, which control Japan's
security measurement required to support Clickjacking.
I was just asked by another client about this as well.
I would really like to support it
—
Reply to this email directly or view it on GitHub
https://github.com/concrete5/concrete5/issues/2399#issuecomment-125849794
.

Can we set http headers via controllers? I think we can do it only via RouteCollback...


Improved front-end logic for comparable and non-comparable accounts

when the returned accounts data is from only one organisation, comparison mode is disabled.
if comparison mode selection was saved and then returned accounts data is from only one organisation, an error message is displayed and the ability to deselect comparison mode is available. Once deselection is made, the comparison mode is disabled.

Please review @cesar-tonnoir :8ball:

:+1:


Put examples in folder by language

Current readme indicates examples should be put in folders by programming language and/or environment.  Do this and ensure that any paths are adjusted appropriately.

In this case we should update the README, because right now the structure is more like a folder, named after the problem and the method that is used to solve and in that folder there are language specific scripts.

Would it easier to organize that per example, rather than per programming language?
For instance, we can open a folder, and then inside we find a set of folders each one is named with a relative programming language. For instance, suppose we have the following example: lstm_electricity_consumption:
Inside it will be as follows:
lstm_electricity_consumption/
|- .
|- ..
|- Jupyter_notebook_code/   <-- code relative to Jupyter notebook
|- C++/    <-- code relative to C++, Makefiles, etc..
|- Go/     <-- similar thing here
|- Python/
|- etc/   <-- other language binding
README.md <-- this will explain what is happening inside this folder.

This will standardize the structure on all sets of examples and will require few modifications since the current state is going in this direction.
In addition, the user is usually will start by looking for a specific example by name rather than a specific programming language.
Let me know what do you think?

Should we keep this one open?  I think it is maybe a nice idea, it just needs someone to take the initiative and do it.  (Given infinite time, I will do it, but the task list won't be clean anytime soon :).)

Yes, Let us keep this open, I will do it one day when I have the time unless someone volunteers to do this.

I will take it up.

The user can create symlinks accordingly, won't it be messy if we do it from our side? The number of examples will keep on increasing and for each example the respective folders and the language bindings will add up.

I like @shrit 's idea better. Let me know if we should go with symlinks or not.
So, we don't have bindings for all languages for a particular example at the moment. I will have to create that as well? It will be good if I take up one like lstm_electricity_consumption and create a sample PR for the same.

This could also be done in the README document. The list of examples could be updated to have links and the language used.

The README for each example, right? Yes, that could be done.

The main README is sufficient, but feel free to do anything else that would make it easier for others to use the examples and find appropriate ones.

Yeah, symlinks might be not a great solution here. If we want to arrange things such that the primary way we intend for users to find examples is by reading the README, then it may be worth putting all the examples under an examples/ subfolder, so that when someone accesses the Github repository they don't have to scroll far to get to the README and the organized list of examples. :+1:

Maybe the top of the README should have the list of examples and the languages they are available in? It need not have the links, but this would save time checking each folder to find if it has examples in the language you want to use.

I am interested to take up this issue. Please assign me...

this is already done, see the repo with the last merged PR, therefore I am closing this issue


Rustfmt emits invalid code if a line is followed by a comment

Consider this very basic Rust program:
fn main() {
    assert!(true); // Doesn't work without comment here.
    {
        println!("Do work in inner scope with guard object");
    }
}

When using rustfmt 0.7.0 with rustc 1.16.0-nightly (1a2ed98d3 2017-01-13) it emits this code:
ian@kartal:(~) → rustfmt test2.rs --write-mode diff
Diff in test2.rs at line 1:
 fn main() {⏎
-    assert!(true); // Doesn't work without comment here.⏎
+    assert!(true) // Doesn't work without comment here.⏎
     {⏎
         println!("Do work in inner scope with guard object");⏎
     }⏎

Notice how it removes a semi colon after the assertion.
When I try to compile the code rustfmt emits I get:
ian@kartal:(~) → rustfmt test2.rs
ian@kartal:(~) → rustc test2.rs
error: expected one of `.`, `;`, `?`, `}`, or an operator, found `{`
 --> test2.rs:3:5
  |
3 |     {
  |     ^

error: aborting due to previous error

If I move the comment to the previous line Rustfmt emits valid code.

This is fixed on master (just tested). It may also be fixed on 0.7.1, worth updating to that to check, though I don't have a version handy to test.

Appears to be fixed in 1.7.1


Question about backward() in CrossScan and CrossMerge

First of all, thank you for your outstanding work. While using VMamba for other downstream tasks, I encountered some issues. If I use the backward methods of CrossScan and CrossMerge in the code （not the CrossScanTriton）, my model fails to converge. However, when I use PyTorch's automatic backward method, the model converges normally. I would like to understand the significance of the backward methods of CrossScan and CrossMerge here. If it's for acceleration purposes, does it mean that if I don't need acceleration, I can use PyTorch's automatic backward method instead of the one used here?

Yes, you can use the automatic backward version, and theoretically they are the same.
CrossScan and CrossMerge implemented with torch.autograd.Function is slightly faster. We tested the speed in vmamba_check.py, and shows:
29.458091735839844 19.472640991210938 17.819852828979492<PHONE_NUMBER>5097656 30.308349609375 20.641536712646484

The result is for the time-consumption of auto backward for scan, manual backward for scan, triton scan; auto backward for merge, manual backward for merge, triton merge. For more see vmamba_check.py.

Thanks for your reply！


Make history accessible

When looking for past awards, i often found more info on old news from publishing articles instead on our own page.
https://awards.dinacon.ch/kontakt/vergangene-awards/
While i can find past winners, the past nominees are no more visible. Also not previous jury members for most years.
Is this intentional or should we improve the documentation / access to the awards history?

For 2017 i found the nominees on Netzmedien:
http://www.netzwoche.ch/news/2017-09-20/nominierten-fuer-die-dinacon-awards-stehen-fest

This makes me think that we need a carefully curated awards database, rather than just a Wordpress website.

Ah, #75 😅


npm is not working

npx create-react-app not workin in Brazil now.

Hi,
closing as unrelated to CRA. Note that you can copy react-scripts folder from another project as a last effort if you are unavailable to reach npm otherwise!


[Bug] "Busy" flags should not show up in the flags popup

Expected Behavior
We should have it filtered out. Could also add a checkbox to enable them
Current Behavior

Describe the Bug
No response
Steps to Reproduce

Flag some projects
Open the flags menu on admin side

What device are you seeing this issue on?
No response
What browser are you seeing this issue on?
No response
Possible Solutions
No response

Fixed by #157


Proper format for method-specific-id of DID Identifier

What is the right UUId we should use for out DID. The current UUID is generated using npm package uuid in the hypersign-ss-sdk. Is this the right way to do that?
This way any insecure DID can also be registered on our network  and that will have security issues. For example any one can create a DID (since its getting created outside the node) like did:hid:<some random text>  and it will get registered on the network.  Our network will accept this did since it might be unique across. But this might have issue. The network does not know if this uuid was generated properly or not. So whats the point of having a network with random data? since the network can not guarantee that its secure.
Some thoughts:

While creating DID, would it be better that the hid-node assigns a new identifier instead of taking identifier from SDK?
If we agrees on point 1, then we have two ways to do that.

We either use some package in Go-lang to generate UUID.
Or, we use wallet address as part of did like this did:hid:<walllet>. I mean we can simply use same package (by comsos) which is used to generated wallet address (I believe that is more audited)

Also do check what and how cheqd guys are doing...

See example of SOL DID

[ ] what is the regex to verify hid wallet address (except the hid)

This PR intends to check for DID ID in did:hs:<multibase-public-key> format

https://hackmd.io/@icZC4epNSnqBbYE0hJYseA/S1eUS2BQw#Creation


Using sidebar with Meteor without context

When using a sidebar with Meteor, the sidebar gets moved outside of the

 if it is not triggered without context.
If we want to use the Blaze events, it needs to be inside the blaze-root div.

Context is designed to support that use case specifically. I'm not sure there can be a second solution. Sidebar and modal both expect to be children of body.

The problem I am facing is:

Use it without context and don't use the Template.myTemplate.events and use jQuery in onRendered
Result: it works, my menu and sidebar keeps their fixed behavior on top of the screen but i get warnings in console as for pusher/pushable classes and lose my .events
Use it with a context.
Result: the top fixed menu is fixed on top until I fire the sidebar toggle. Once the DOM is modified, the sidebar and menu are no longer fixed on top and scroll with content. (maybe this can be fixed with appropriate wrapper attributes)

What if you specify body tag as blaze-root instead of div? You can do that f.e. this way.

I will try that. Thank you
The code i am testing is: http://meteorpad.com/pad/mz5pfx26zfWD5vNGC/Semantic-UI-TEST

I vote to close this as it's easily solvable from Meteor side and doesn't really touch Semantic UI.

Works fine with meteor + react. closing.


do not implicitly discard return value in a do-block

Fixes #4

:+1: thanks!

Published as v3.0.1


Verification in DM: Polish notifications for incoming requests

as per the design.
We went quick in the implementation of #2852 by using nasty UIViewController.

https://github.com/SwiftKickMobile/SwiftMessages could be a good option to use.


corner case behavior when trying to debug javascript

I ran into a corner case behavior when trying to debug the compiled javascript app. It was optimized - which is super hard to debug. So I built the app with --mode=debug. It no longer started up, because the index.html file was not re-written by this transformer.
Note that I am not using the browser packages dart.js file; I use this transformer instead.
Not sure what a fix would be -

interesting... I didn't realize that pub build doesn't just delete the entire build/ dir.
I assume 'built with app' means pub build ?

Yup; using pub build meant I could see the problem in the compiled app (what I was debugging), but had a hard time because of the minification. pub build --mode=debug built the debuggable version of the app but this transformer didn't run on the index.html file; the app didn't start.
I realized I could have worked around it by changing the foo.dart application/dart reference to the compiled ref - foo.dart.js.

I was confused why this didn't work for you in debug mode. Then I saw this: Note that I am not using the browser packages dart.js file; I use this transformer instead.
You can leave the dart.js file in your index.html, because this transformer removes the dart.js reference when you do a production build.

Yeah, I should probably just leave browser in (perhaps move it to a dev dependency).

Yes, leave browser's dart.js in your HTML and this transformer will remove it. Or should. If it doesn't, it's a bug in this transformer.


exporting a class from "use server" results in a compile error.

Exporting a class from a file using the use server directive results in an error, simple reproductive case:
"use server";

export class Example {}

The error:
Error: undefined does not match field "params": [Pattern] of type FunctionExpression
    at addParam (<REDACTED>/node_modules/ast-types/lib/types.js:455:27)
    at <REDACTED>/node_modules/ast-types/lib/types.js:505:25
    at Array.forEach (<anonymous>)
    at builder.from (<REDACTED>/node_modules/ast-types/lib/types.js:503:46)
    at wrapExports (file://<REDACTED>node_modules/@vinxi/plugin-directives/plugins/wrap-exports.js:393:45)
    at Object.transform (file://<REDACTED>/node_modules/@vinxi/plugin-directives/plugins/wrap-exports.js:44:24)
    at TransformContext.transform (file:///<REDACTED>/node_modules/@vinxi/plugin-directives/plugin.js:52:31)
    at Object.transform (file://<REDACTED>/node_modules/vite/dist/node/chunks/dep-cNe07EU9.js:51139:62)
    at async loadAndTransform (file://<REDACTED>/node_modules/vite/dist/node/chunks/dep-cNe07EU9.js:53894:29)
    at async instantiateModule (file://<REDACTED>/node_modules/vite/dist/node/chunks/dep-cNe07EU9.js:54954:10)

This isn't the intended use. "use server" boundary is just for function RPCs you shouldn't be exporting anything else from it.


Crash during load, program unusable (Uncaught exception in ListRefreshThread)

reopening issue because i realized 102464 isn't the author and thus a fix has not been properly released yet

reopening issue because i realized 102464 isn't the author and thus a fix has not been properly released yet

The fix is now merged, it will be included in the next release. If it fixes your issue then you can close this issue now.

This bug-fixed version is compiled by myself: https://mega.nz/file/LaR0xBAT#mPDeEFvjSJ_-0i8xiZd-4bZcsgFdJWi8SQFBT4Jw5NQ
Please try it and let me know if the problem is solved or not.

This bug-fixed version is compiled by myself: https://mega.nz/file/LaR0xBAT#mPDeEFvjSJ_-0i8xiZd-4bZcsgFdJWi8SQFBT4Jw5NQ
Please try it and let me know if the problem is solved or not.

It should be fixed in v5.2

This bug fix has been added in 5.2 release: https://github.com/Klocman/Bulk-Crap-Uninstaller/releases/tag/v5.2
Confirmed it worked for me. Please close this issue if it works for you.

This should be fixed in the release coming out later today, so I'm closing the issue.
@FlavourWiener Looks like your bug report got lost if you sent it because of too aggressive filtering. If your issue persists after updating to the upcoming release, please create a new issue and send the bug report again.


Crash in Quartzcore when adding new layer to UIView

A basic sample app that I am creating builds fine but gives the following error on deploying to local machine.
I am using latest visual studio 2015 community version and win 10 sdk 14393 version and latest WINOBJC release on Feb1st
Console error
Program: ...bug\BoltsAppLinksWinObjcSample\AppX\QuartzCore.dll
File: D:\Build\Agent9_work\5\s\Frameworks\Quart...\CALayer.mm
Line: 640
Expression: 0
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts
(Press Retry to debug the application - JIT must be enabled)BoltsAppLinksWinObjcSample.exe has triggered a breakpoint.
my code in ViewDidLoad() method
CALayer* placeHolder = [[CALayer alloc] nit];
[placeHolder setBounds:[textView bounds]];
[placeHolder setPosition:[textView center]];
[placeHolder setBackgroundColor:[UIColor blueColor].CGColor];
[[textView layer] setMasksToBounds:false];
[[textView layer] insertSublayer:placeHolder above:[textView layer]];
[textView setBackgroundColor:[UIColor clearColor]];

@oliversa-msft
Looks like the cause of the crash is when I try to insert sublayer above view's super layer. It fails on this assert statement in the below defined method in CALayer.mm. This works well in ios without crash.
/**
@Status Interoperable
*/

(void)insertSublayer:(CALayer*)layer above:(CALayer*)aboveLayer {
int curLayerPos = priv->indexOfChild(aboveLayer);
if (curLayerPos == 0x7fffffff) {
assert(0);
}
[self insertSublayer:layer atIndex:curLayerPos + 1];
}


Submariner doesn't work with Calico CNI

Calico CNI supports several networking modes.

First, I checked the IP in IP or VXLAN encapsulation.

After successful submariner installation (disable-nat), I was able to ping from a pod which is colocated with the submariner gateway to pods on another cluster, but was not able to ping services.
Pings from a pod which is not colocated with the GW, achieved neither pods nor services on another cluster.

After that I checked the BGP peering mode.
In this case I was able to ping only from a pod colocated with a GW to pods colocated with another GW on the second cluster.

Looks like Calico puts its rules before submariner's in iptables.
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
cali-POSTROUTING  all  --  anywhere             anywhere             /* cali:O3lYWMrLQYEMJtB5 */
SUBMARINER-POSTROUTING  all  --  anywhere             anywhere
KUBE-POSTROUTING  all  --  anywhere             anywhere             /* kubernetes postrouting rules */
MASQUERADE  all  --  <IP_ADDRESS>/16        anywhere

Possible related to https://github.com/submariner-io/submariner/issues/272

Did you get around this? I am facing the same problem, connecting to services work fine even if the pods are on non-gateway nodes but not pod-pod communication if the destination pod is not in the gateway node.

not yet, meantime we have moved to another CNI, probably will return to Calico later.

Hm, yeah Calico is pretty aggressive in inserting its rules at the top, in order to prevent other applications from bypassing network policy enforcement, which would be bad.
I'm not too familiar with submariner - what do the submariner rules do / look like? We might be able to make changes to make these two play nicer together.

Welcome @caseydavenport! /cc @sridhargaddam @mangelajo

I had problems with disabling calico NAT only for cross cluster communication.

Be able to tell Calico that there is a direct peer on the other cluster, so although traffic is external (and normally NATed) it should bypass some of the Calico rules:

Do not SNAT/DNAT at all -- keep pod (private) IP as source
Allow traffic from other cluster (via tunnel) to be forwarded to internal pods

Route cross-cluster communication through a specific GW node. Currently submariner attempts to intercept this traffic and tunnel to GW, but Calico prevents that

Do custom NAT for cross-cluster

SNAT/DNAT to global IP space if cluster CIDRs overlap
use internal cluster IPs as source IP for pods on host network (so other cluster will see it as cross cluster communication rather than external

Basically, inorder to support Cross-Cluster communication and to preserve the source-ip of the PODs across the clusters, Submariner programs certain iptable rules (PFA the list of rules in the attached file). Submariner requires these rules to be applied prior to the rules programmed by the respective CNI. Also, JFYI the rules programmed by Submariner only affects the inter-cluster traffic and will not affect the local cluster traffic.
So, initially when Submariner is deployed, it installs certain rules ahead of existing rules programmed by CNI.
Sample example:
Chain POSTROUTING (policy ACCEPT 2 packets, 120 bytes)
num   pkts bytes target     prot opt in     out              source  destination
1     8537  576K SUBMARINER-POSTROUTING  all  --  *      * <IP_ADDRESS>/0 <IP_ADDRESS>/0
2    16254 1039K cali-POSTROUTING  all  --  *      *       <IP_ADDRESS>/0 <IP_ADDRESS>/0
3    1685K  110M KUBE-POSTROUTING  all  --  *      *       <IP_ADDRESS>/0 <IP_ADDRESS>/0
However, after a brief amount of time, the SUBMARINER-POSTROUTING rule in POSTROUTING chain ceases to become the first rule in the chain and this affects the Submariner use-cases.
Chain POSTROUTING (policy ACCEPT 2 packets, 120 bytes)
num   pkts bytes target     prot opt in     out              source  destination
1    16254 1039K cali-POSTROUTING  all  --  *      *       <IP_ADDRESS>/0 <IP_ADDRESS>/0
2     8537  576K SUBMARINER-POSTROUTING  all  --  *      * <IP_ADDRESS>/0 <IP_ADDRESS>/0
3    1685K  110M KUBE-POSTROUTING  all  --  *      *       <IP_ADDRESS>/0 <IP_ADDRESS>/0
iptables-save.txt

Hm, yeah Calico is pretty aggressive in inserting its rules at the top, in order to prevent other applications from bypassing network policy enforcement, which would be bad.
I'm not too familiar with submariner - what do the submariner rules do / look like? We might be able to make changes to make these two play nicer together.

Thank you @caseydavenport for looking into it. Please see my comment above. Also, if you are interested in taking a look at the source-code in Submariner, here is the link - https://github.com/submariner-io/submariner/blob/8c1598edfdc82235928d020ff89bd2f65eb4b5ba/pkg/routeagent/controllers/route/iptables.go#L66

-A SUBMARINER-POSTROUTING -s <IP_ADDRESS>/8 -o vx-submariner -j SNAT --to-source <IP_ADDRESS>
-A SUBMARINER-POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j ACCEPT
-A SUBMARINER-POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j ACCEPT
-A SUBMARINER-POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j ACCEPT
-A SUBMARINER-POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j ACCEPT

Right, so in the example file you gave above it looks like these are the rules that submariner programs (more or less, probably varies a bit by cluster).
The first seems to SNAT the cross cluster traffic, like you're describing. This is probably OK - it's only performed on the encapsulated packet, leaving the original pod source IP intact, IIUC?
The other rules afterwards appear to be allowing traffic from other clusters that are destined to local cluster CIDRs - is that right?  What are those rules for?

Sorry, @caseydavenport I missed your comment. PSB
When you deploy a KIND based cluster in Submariner, it deploys three clusters one as an independent broker (i.e., cluster1) and the other two as data clusters (cluster2 and cluster3)
Cluster2 network details:
  Network plugin:  weave-net
  Service CIDRs: [<IP_ADDRESS>/16]
  POD/Cluster CIDRs: [<IP_ADDRESS>/16]

Cluster3 network details:
   Network plugin:  weave-net
   Service CIDRs: [<IP_ADDRESS>/16]
   POD/Cluster CIDRs: [<IP_ADDRESS>/16]

Submariner programs the following rules in the SUBMARINER-POSTROUTING chain of NAT table on Cluster2 nodes.
Chain SUBMARINER-POSTROUTING (1 references)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 SNAT       all  --  *      vx-submariner  <IP_ADDRESS>/8   <IP_ADDRESS>/0     to:<IP_ADDRESS>
2        0     0 ACCEPT     all  --  *      *       <IP_ADDRESS>/16        <IP_ADDRESS>/16
3        0     0 ACCEPT     all  --  *      *       <IP_ADDRESS>/16        <IP_ADDRESS>/16
4        0     0 ACCEPT     all  --  *      *       <IP_ADDRESS>/16        <IP_ADDRESS>/16
<SNIP>

In the above SUBMARINER-POSTROUTING chain, rule number 1 is to support connectivity from Host itself (or a POD that uses HostNetworking=true) to a remoteService in another submariner connected cluster.
For more details, please see this issue - https://github.com/submariner-io/submariner/issues/298
Rule number 2/3/4 are mainly to allow inter-cluster traffic (i.e., POD to POD or POD to remoteService) between the submariner connected clusters.
Submariner preserves the source-ip of the traffic for inter-cluster traffic.
As you can see, the source/destination IPs correspond to POD/Service CIDRs of the connected clusters.
Regarding Network Policies, as you know, not all CNIs support NetworkPolicies. We verified Submariner+K8sNetworkPolicies with weavenet as well as openshift-sdn and it works as expected.
The iptable rules programmed by submariner does not bypass the networkpolicy rules (atleast with weavenet/openshift-sdn).
Let me take an example of Weavenet CNI. In Weave, when we program NetworkPolicies, they are translated to iptable rules in Filter table, forwarding chain (i.e., WEAVE-NPC-INGRESS).
Since the FORWARD chain is hit prior to SUBMARINER-POSTROUTING, NetworkPolicies work as expected.
Does Calico program policy enforcement rules similar to weave or is it totally different?
Iptable rules with weavenet:

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1       36 12631 ACCEPT     all  --  *      vx-submariner  <IP_ADDRESS>/0            <IP_ADDRESS>/0
2      486 87079 WEAVE-NPC-EGRESS  all  --  weave  *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* NOTE: this must go before '-j KUBE-FORWARD' */
3      408  164K WEAVE-NPC  all  --  *      weave   <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* NOTE: this must go before '-j KUBE-FORWARD' */
4       10   600 NFLOG      all  --  *      weave   <IP_ADDRESS>/0            <IP_ADDRESS>/0            state NEW nflog-group 86
<SNIP>

Chain WEAVE-NPC (1 references)
num   pkts bytes target     prot opt in     out     source               destination
1      374  162K ACCEPT     all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            state RELATED,ESTABLISHED
2        0     0 ACCEPT     all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/4
3       13   802 ACCEPT     all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            PHYSDEV match --physdev-out vethwe-bridge --physdev-is-bridged
4       21  1260 WEAVE-NPC-DEFAULT  all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            state NEW
5       17  1020 WEAVE-NPC-INGRESS  all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            state NEW

Chain WEAVE-NPC-INGRESS (1 references)
num   pkts bytes target     prot opt in     out     source               destination
1        3   180 ACCEPT     tcp  --  *      *       <IP_ADDRESS>         <IP_ADDRESS>/0            match-set weave-KN[_+Gl.dlb1q$;v4h!E_Sg)( dst tcp dpt:80 /* cidr: <IP_ADDRESS>/32 -> pods: namespace: default, selector: run=nginx (ingress) */
2        2   120 ACCEPT     tcp  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            match-set weave-jn=@U_tr~?=n2^eQx*wmb{|o2 src match-set weave-KN[_+Gl.dlb1q$;v4h!E_Sg)( dst tcp dpt:80 /* pods: namespace: default, selector: run=netshoot-2-1 -> pods: namespace: default, selector: run=nginx (ingress) */

@sridhargaddam @caseydavenport can you share what it the latest status of this Issue? We just had one more user asking about Calico support on Slack. Thanks!

@caseydavenport, Let me know if you need any additional info regarding Submariner. I'm (along with the Submariner team) are available on #submariner slack channel on Kubernetes. If required, we can also have a Bluejeans session. Thanks.

Really sorry for the long delay on this one guys... too much going on for as long as I can remember :sweat_smile:

Does Calico program policy enforcement rules similar to weave or is it totally different?

No, you're correct here in that Calico does most of its policy enforcement in the FILTER table when running with the iptables dataplane driver. So at that level is fairly similar to how weavenet is programming its policy.
There are three classes of traffic that Calico handles in the cali-POSTROUTING chain.

cali-fip-snat - Calico's "floating IPs" feature - typically will do nothing unless you've explicitly enabled this via an annotation, so not what we're hitting here. Additionally, this is only needed for pods that end up sending traffic to themselves via such a floating IP (described more here).

cali-nat-outgoing - rules which match traffic sourced from pods within the cluster to destinations outside of the cluster and performs NAT. Rules look something like this:
[1:60] -A cali-nat-outgoing -m comment --comment "cali:flqWnvo8yq4ULQLa" -m set --match-set cali40masq-ipam-pools src -m set ! --match-set cali40all-ipam-pools dst -j MASQUERADE

Whether or not this is occurs is configured on Calico's IP pool API via the NAT outgoing configuration option on particular CIDRs. Calico won't perform NAT on traffic destined to CIDRs that it is told about via this IP pool API.

Tunnel specific NAT - Calico will SNAT locally originated packets that are being sent down Calico's own VXLAN / IPIP / Wireguard tunnels to ensure the correct source address is used. More on that in the code comment here.

Given that:

the cali-fip-snat rules (1 above) are not relevant here I think, and probably don't even exist on the cluster.
the cali-nat-outgoing rules (2 above) should only apply to packets from within a Calico IP pool destined to something outside of a Calico IP pool and will masquerade the traffic. This could occur for packets from pods in the local cluster to pods/services in another cluster connected via Submariner, and is probably not desired. You could try creating disabled Calico IP pools which include the CIDRs of the other clusters to see if that mitigates this rule, as a quick fix. Disabling them prevents them from being used for local pods.
the tunnel specific NAT (3 above), which I think is also not relevant here because it should only match traffic from LOCAL addresses that are destined out the Calico tunnel interface(s) - in other words, to a Kubernetes pod.

Does that make sense? Am I missing something? I joined the #submariner channel in Slack so we can continue the conversation there if you'd like!

Really sorry for the long delay on this one guys... too much going on for as long as I can remember

No problem @caseydavenport  and thank you for the detailed info.

Does that make sense? Am I missing something? I joined the #submariner channel in Slack so we can continue the conversation there if you'd like!

Yes, it makes sense and we can give it a try to see if it works.
Let's take a simple example of two clusters with the following configuration.

So, if I understood your suggestion properly, you are suggesting that we can create the following IPPool on WestCluster for allowing connectivity to Services in EastCluster (similarly on the East cluster). Is this correct?
In case something is missing/wrong, please let us know. Thanks.
cat > remoteClusterSubnets.yaml <<EOF
apiVersion: projectcalico.org/v3
kind: IPPool
metadata:
  name: remotesubnets
spec:
  cidr: <IP_ADDRESS>/16
  natOutgoing: false
  disabled: true
EOF

calicoctl create -f remoteClusterSubnets.yaml

@sridhargaddam yes, that IP pool looks right to me! Assuming my understanding of the issue is correct, that should configure Calico to stop performing NAT on traffic destined to pods in the other cluster.

@caseydavenport, as discussed, I configured necessary IPPools with remoteCIDRs in two KIND Calico Clusters joined with Submariner and can see that a Pod in West Cluster is able to talk to Pod/Service in East Cluster :-)
Also, as expected, the IPaddress of the sourcePod is preserved when the traffic reaches the destination Pod.
Thanks a lot, @caseydavenport for all the inputs.
However, when I tried to deploy Submariner Globalnet  (a feature that allows joining clusters with Overlapping CIDRs), with default globalnet-cidr* which is <IP_ADDRESS>/16, I'm not able to create the IPPool with <IP_ADDRESS>/16 CIDR. I'm getting the following error.
"Failed to create 'IPPool' resource: [error with field IPPool.Spec.CIDR = '<IP_ADDRESS>/19' (IPPool CIDR overlaps with IPv4 Link Local range <IP_ADDRESS>/16)]"
This is not a major issue since we can override the --globalnet-cidr (to non-IPv4 LLA) when installing Submariner. But I'm interested to know if there is a way to allow this in Calico. Thanks once again.

Hm, interesting. Calico uses some link-local addresses itself so it prevents them from being allocated as pod IPs.
I'll do some more reading on the Globalnet functionality, but for now selecting a different CIDR seems like a reasonable workaround.

This was tested with v0.6, see https://submariner.io/deployment/calico/


Update dependencies

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (a3682ea) to head (fa8c750).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #225   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           81        81
  Lines         1943      1943
  Branches       181       181
=========================================
  Hits          1943      1943

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Fix multi-collins queries

This is a follow-up to #396 and tries to fix a couple of issues with multi-collins queries.
1. Send CQL query to remote instances (848a11a)
This is what #396 tried to fix but didn't since I actually sent the query in Solr format instead of CQL to the remote instances. To fix this, I've changed the way we handle CQL queries by storing them as a String instead of a SolrExpression, and only parse the query to solr syntax when we're actually planning to execute it. This means that we can pass the raw CQL query string to the remote instances.
2. Fix parsing of remote responses where state is null (04571fd)
Previously, if an asset a remote instance returned didn't have a state, the JSON parser would fail on the null value.
3. Fix filtering of the local instance (9025bcd)
When doing a multi-collins query we try to filter out the local instance (the one we actually send the query to) based on the multicollins.thisInstance config variable. However, we're comparing a String with an Option[String] which fails so we'll actually get the results from the local instance twice, once for the multi-collins query and once for the local.
@tumblr/collins @tbchrist @bobpattersonjr
CC'ing you too @cburroughs, since it would be interesting to hear feedback based on your multi-collins use cases.

:+1:  if this works ,since it is hard to argue with success :-) , even with my comments

LGTM


ECC detection leads to wrong ensemble information window

If ECC is not correctly detected, the ensemble information might be printed twice.
Ensemble:
0x9400 SLO DAB+ R2 W [ SLO R2 W ] ECC: 0xE4, UTC 60 min, INT: 1, alarm announcements: 0
Services (24):
0x9409 Radio 94 [ Radio 94 ] ECC: 0x00, Country: Unknown, PTy: Varied (static), Announcements: No
0x940B Radio Antena [ Antena ] ECC: 0x00, Country: Unknown, PTy: Pop Music (static), Announcements: No
0x9411 Capodistria [ Capodist ] ECC: 0x00, Country: Unknown, PTy: Information (static), Announcements: No
0x9412 Radio Capris [ Capris ] ECC: 0x00, Country: Unknown, PTy: Pop Music (static), Announcements: No
0x9421 Radio Koper [ Koper ] ECC: 0x00, Country: Unknown, PTy: Varied (static), Announcements: No
0x9422 Radio Kranj [ Kranj ] ECC: 0x00, Country: Unknown, PTy: Varied (static), Announcements: No
0x9436 Radio Robin [ Robin ] ECC: 0x00, Country: Unknown, PTy: Other Music (static), Announcements: No
0x9438 Best FM [ Best FM ] ECC: 0x00, Country: Unknown, PTy: Other Music (static), Announcements: No
0x943C Radio Sora [ Sora ] ECC: 0x00, Country: Unknown, PTy: Other Music (static), Announcements: No
0x9444 Radio Triglav [ Triglav ] ECC: 0x00, Country: Unknown, PTy: Other Music (static), Announcements: No
0x945B Radio BOB [ BOB ] ECC: 0x00, Country: Unknown, PTy: Rock Music (static), Announcements: No
0x952E Alpski Val [ Alp Val ] ECC: 0x00, Country: Unknown, PTy: Other Music (static), Announcements: No
0x9409 Radio 94 [ Radio 94 ] ECC: 0xE4, Country: Slovenia, PTy: Varied (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio 94' [ 'Radio 94' ], ASCTy: 0x3F (AAC)
      SubChId: 3, Language: Slovene, StartCU: 132, NumCU: 42, EEP 3-A, Coderate: 1/2, Bitrate: 56kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x940B Radio Antena [ Antena ] ECC: 0xE4, Country: Slovenia, PTy: Pop Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Antena' [ 'Antena' ], ASCTy: 0x3F (AAC)
      SubChId: 10, Language: Slovene, StartCU: 456, NumCU: 42, EEP 3-A, Coderate: 1/2, Bitrate: 56kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9411 Capodistria [ Capodist ] ECC: 0xE4, Country: Slovenia, PTy: Information (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Capodistria' [ 'Capodist' ], ASCTy: 0x3F (AAC)
      SubChId: 2, Language: Slovene, StartCU: 66, NumCU: 66, EEP 3-A, Coderate: 1/2, Bitrate: 88kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9412 Radio Capris [ Capris ] ECC: 0xE4, Country: Slovenia, PTy: Pop Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Capris' [ 'Capris' ], ASCTy: 0x3F (AAC)
      SubChId: 9, Language: Slovene, StartCU: 396, NumCU: 60, EEP 3-A, Coderate: 1/2, Bitrate: 80kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9421 Radio Koper [ Koper ] ECC: 0xE4, Country: Slovenia, PTy: Varied (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Koper' [ 'Koper' ], ASCTy: 0x3F (AAC)
      SubChId: 1, Language: Slovene, StartCU: 0, NumCU: 66, EEP 3-A, Coderate: 1/2, Bitrate: 88kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9422 Radio Kranj [ Kranj ] ECC: 0xE4, Country: Slovenia, PTy: Varied (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Kranj' [ 'Kranj' ], ASCTy: 0x3F (AAC)
      SubChId: 12, Language: Slovene, StartCU: 552, NumCU: 42, EEP 3-A, Coderate: 1/2, Bitrate: 56kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9436 Radio Robin [ Robin ] ECC: 0xE4, Country: Slovenia, PTy: Other Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Robin' [ 'Robin' ], ASCTy: 0x3F (AAC)
      SubChId: 7, Language: Slovene, StartCU: 306, NumCU: 48, EEP 3-A, Coderate: 1/2, Bitrate: 64kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9438 Best FM [ Best FM ] ECC: 0xE4, Country: Slovenia, PTy: Other Music (static), Announcements: Traffic News, Cluster IDs [08]
AudioComponent (primary), SCIdS: 0, Label: 'Best FM' [ 'Best FM' ], ASCTy: 0x3F (AAC)
      SubChId: 8, Language: Slovene, StartCU: 354, NumCU: 42, EEP 3-A, Coderate: 1/2, Bitrate: 56kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x943C Radio Sora [ Sora ] ECC: 0xE4, Country: Slovenia, PTy: Other Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Sora' [ 'Sora' ], ASCTy: 0x3F (AAC)
      SubChId: 4, Language: Slovene, StartCU: 174, NumCU: 42, EEP 3-A, Coderate: 1/2, Bitrate: 56kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x9444 Radio Triglav [ Triglav ] ECC: 0xE4, Country: Slovenia, PTy: Other Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio Triglav' [ 'Triglav' ], ASCTy: 0x3F (AAC)
      SubChId: 6, Language: Slovene, StartCU: 264, NumCU: 42, EEP 3-A, Coderate: 1/2, Bitrate: 56kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x945B Radio BOB [ BOB ] ECC: 0xE4, Country: Slovenia, PTy: Rock Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Radio BOB' [ 'BOB' ], ASCTy: 0x3F (AAC)
      SubChId: 11, Language: Slovene, StartCU: 498, NumCU: 54, EEP 3-A, Coderate: 1/2, Bitrate: 72kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x952E Alpski Val [ Alp Val ] ECC: 0xE4, Country: Slovenia, PTy: Other Music (static), Announcements: No
AudioComponent (primary), SCIdS: 0, Label: 'Alpski Val' [ 'Alp Val' ], ASCTy: 0x3F (AAC)
      SubChId: 5, Language: Slovene, StartCU: 216, NumCU: 48, EEP 3-A, Coderate: 1/2, Bitrate: 64kbps
            UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]

Only workaround is to change the mux and go back, then the window is ok.

Coudl you please share some recording so that I can reproduce the issue. I have never seen this problem before.

I have had it several times and now opened that issue.
I don't expect the recording will help you, as at the time the recording starts, it might be ok again.

So my proposal is the reset the content when opening the ensemble information window.

The only file which might help is the debug raw file.
Let me re-build the application (having this debug option activated) and test again. Hope I can catch such an error...

I will try to simulate this behavior - in general it is quite unexpected - ensemble without ECC is not considered as valid thus the application shall wait with service list retrieval until it gets ensemble UEID that is valid. Maybe there is some timing issue.

timing

Yes, I guess so.

Does it happen only with this ensemble or have you observed it randomly with any?

Good question, but I only have seen it when reception is difficult.

Just to be sure - please confirm that you have:
#define RADIO_CONTROL_TEST_MODE 0

yes, line 55 in radiocontrol.h. I've not changed it.

I have tried to fix it, please check and let me know. I hope I have not created new problem.


Separate lang file per component

Is it possible to have translations separated on component level?

This question is available on Nuxt.js community (#c84)

Hi @tomexx
I like the idea and it might be possible to implement this by using the in-component i18n property.
I should have some time to work on the module in the coming days, hopefully this is something I can give a shot at.


Refine admiral Strategy

We updated, extended, and removed many admiral functions in the last year and we had a lot of discussions on how flexible functions and parameters should be and on the level of nesting.
To reduce the number of updates and discussions the admiral strategy should be refined.
This helps also new contributors and developers of admiral extension packages.
Proposed roadmap:

[x] Collect pain points examples (https://exbpbox.box.com/s/4a8zoc6zufi79n0iayxchfn2dtj6z475)
[x] Discuss pain points identify root causes
[ ] Create a proposal of a refined admiral strategy
[ ] Discuss and agree on refined admiral strategy
[ ] Document the refined admiral strategy

@bundfussr Here goes with trying to summarize my take on the discussions we’ve spoken about and things that could be added to the programming strategy:

Readable code – could add more specifics about why we value transparency and simplicity  and some general guardrails, e.g. we are trying to ensure that when any user or regulator looks into a function code (if they ever deem needed – as our documentation will also be great!) then they are able to make sense of it. So be aware for example that nesting a function within a function within a function etc may reduce readability. Or coding a function with say >10 different arguments may make the function more difficult to understand and use, plus more difficult to test for the developer.
On the other hand we do have computation functions that can be re-used within admiral to save repeating same code across derivation functions, so this is always going to be a balance and there’s not always a clear single way of doing things. Our main ask is to put yourself in the shoes of our user and consider the scope and expectations of admiral shown at https://pharmaverse.github.io/admiral/index.html.
It’s ok to group multiple variables by analysis concept without creating individual wrapper functions for each variable – rationale being we don’t want our reference page and codebase to be flooded with near identical programs that would impact findability. Plus people have the ADaM vignettes and templates anyway to help them identify the functions they need.
Tidyverse/dplyr usage highly recommended over base R for consistency

@bms63 @teckla-gsk @koegerr @thomas-neitmann @kabis-ops @millerg23 - please add.
There was a lot more context and background which I can't cover all of here and don't think should go in the documentation, but some of the factors we have to consider are the industry-wide scale we're going for with admiral, ensuring user support is scaleable by enabling users to have the confidence to solve their own issues, building trust in admiral from both potential new company adopters and regulators perspective, ...and a million more good points that i didn't take notes for!

@rossfarrugia , thanks for the summary.
If we want to mention the term "analysis concept" in our programming strategy, we need to define it. It is not a CDISC term. I think the "analysis concept" from the Roche specs is not useful for our purposes. E.g., there are different analysis concepts for ASTDY and AENDY.
I would avoid mentioning a threshold for the number of arguments because contributors may combine two parameters into one to fulfill the requirement. But this would result in more complex parameters and decrease the usability.
I would like to add the requirement that the purpose of the function, the purpose of each parameter, the permitted values for each parameter, and the output of the function must be clear from the documentation without knowledge of the code. I think this avoids too complex functions and parameters and the black box effect.
Regarding nesting we could add that code should not be nested without reason. Reasons are

avoiding duplication of code,
structuring of code to improve readability and to simplify testing,
modularization of code, i.e., users could use part of the code for their specific derivations.

All makes sense to me. Also to the analysis concept point, maybe adding an example would help best explain here. As soon as Thomas mentioned the "study day" example it's so much clearer. Nobody would ever want to see a unique function for every single possible ---DY variable.

FYI @bundfussr i'm working through a draft of this to share. I see its really important to agree as we start to move on with package extensions and bringing lots of new developers to the table.


"Initializing Gradle" step does not give any feedback

Take a look at #26077, #25808 and especially #15106, all of which are about the "Initializing Gradle" step taking forever, and all of which have been closed with no changes, despite tons of people having (apparently) the same problem.
There seem to be a number of issues - it downloads 400MB of Gradle (wtf), I get this error: java.lang.RuntimeException: Timeout of 120000 reached waiting for exclusive access to file: ~/wrapper/dists/gradle-4.10.2-all/9fahxiiecdb76a5g3aw9oi8rv/gradle-4.10.2-all.zip, and so on.
Clearly this step is not robust enough to have "Initializing Gradle" as the only feedback. It should show more steps - "Downloading Gradle", "Unzipping Gradle", etc.
Btw I am talking about the VSCode extension, and the flutter run command line. I suspect it may output more information in Android Studio.

But it does not (on Android studio). It's a valid concern regarding newcomers.

Hi


As a editor, I want to add new objectives so that I can contribute on OE platform.

Everyone on OE will be able to add objectives on personal and on different levels of hierarchy.
Links

Wireframes link
Lighting demo

The wireframes look out of date with the current OKR form.

If Key Result is going to be a new form, please create one in figma/notion with the form fields.

Key result page on Notion
Key result page on Figma

@MithilPsmartercodes  Multiple Key Results can now be added to an Objective.


[all] remove cadence hint in Aggregation

This simplifies the Aggregation interface by removing the initial cadence hint.
This hint is not necessary since the final cadence can be extracted from the
AggregationInstance which takes the initial range-based cadence into account
as a hint.
This does slightly change the behavior of queries which specifies no resolution in part of their aggregations,
This does slightly change the behaviour of queries like: sum(10m) | average, after this change average will use the resolution derived from the range, rather than the previous aggregation. I believe this behaviour is more expected.

Current coverage is 20.13% (diff: 0.00%)

Merging #69 into master will increase coverage by 0.02%

@@             master        #69   diff @@
==========================================
  Files           591        591
  Lines         15839      15816    -23
  Methods           0          0
  Messages          0          0
  Branches       1655       1656     +1
==========================================
  Hits           3184       3184
+ Misses        12367      12344    -23
  Partials        288        288

Powered by Codecov. Last update ee3f91f...afcf490


[REQUEST]change the kick message from "Nobody was kick" to "Nobody was kickededinged"

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

i already did, its just the repo isnt up-to-date with the scripts the bot is actually running


No SAL?

I've noticed (at least, in part of the code) that there's very little SAL in modern.... what's up with that?
Especially in COM-related code, I never cease to be amazed by how powerful SAL is, and I believe that it's indescribably valuable for any library code!
Side note: Does modern support VS2013? I haven't yet got my hands on 2015, and'd happily add the SAL myself.

The Modern C++ language projection is unlike COM in that there’s no void ** pointers to initialize, no HRESULTs to check, etc. SAL is less useful in this case.
The Modern libraries work with the Visual C++ 2015 compiler as well as the latest version of Clang. Visual C++ 2013 is not supported.

SAL is less useful in this case.

Yes, slightly less useful. However, I can easily find parts of the API/projection - well, I think its part of the API/projection - that could benefit.
StringReference( wchar_t const* const value, unsigned length ) for example, uses the tricky-looking WindowsCreateStringReference function. I don't have the declaration in front of me, but I expect that the first two parameters are well annotated.

Similarly: String(wchar_t const * value, unsigned const length) and everything that accepts a C-style null-terminated string.

Yes some of those functions do provide SAL annotations but wrappers are provided by the base library to shield you from calling them directly. Classes like StringReference are meant for internal use and may eventually be pushed into an “impl” namespace. I agree that there are definitely a handful of places where SAL could help but overall it has little value in this case. My preference is to push more of the “dangerous” APIs into an internal namespace and just provide a “safe” library to the app developer with as few pointers as possible.


params prop is null when opening a modal from another modal

Description
Under certain scenarios, when opening a modal when another modal is already opened, the params prop is unexpectedly null, which can lead to the infamous "cannot read properties of null/undefined" error.
I'm not entirely sure what's the root cause.
It might be related to the params query param in the URL not being synced with the modal that is already opened/closed, so the getData() function in src/URLModal.tsx returns null.
Solution (unknown)
A (partial) workaround could be to change line 129 in src/URLModal.tsx to:
params={getData() || {}}

This would avoid users from having to null-check the params prop, but they would still need to null check every property inside params, which is not ideal.
Steps to reproduce

Clone https://github.com/ivan-herrero/react-url-modal/tree/bug/params-is-null
Install dependencies and run the example app
Click on "Open 1st modal"
Click on "Open 2nd modal"
Click on "Open 1st modal" again
App errors with Uncaught TypeError: Cannot read properties of undefined (reading 'stuff')

Fixed by #30


RCF for Circuit block

The buck stops with whomever knows the next guy can't deal with it. Initially, all interpretation of twirling blocks would be done server side: looking for blocks, constructing template circuits capable of executing the directives, sampling the parameters, passing the templates and parameters down. However, if it were known the next layer down knew how to interpret them (eg real-time twirling), then they would be passed, somehow.

We want to move all transpilation out of the primitives so that it can focus on execution, and so that there is more transparency for users. This is impossible until users own blocks client-side. Since qiskit is our defacto programming paradigm, it seems like that ought to be the place where they are defined. If we wanted to have some of the context stuff reside in qiskit-ibm-runtime or be language agnostic, that would be on the table though. We also expect to have built in transpiler support for layering a circuit into blocks. I hope I'm getting at the question you asked.

I'm having a bit of trouble parsing "In the "power user" case, what guarantees about transpilation are being made by the user? " because the transpiler need not be touched at all in this case, but I'll plow through with an answer anyways.

# POWER USER
from qiskit.blah.blocks.default_contexts import PAULI_TWIRLING

circuit = QuantumCircuit(127)
# the power user knows that block is in the target with support on any subset of qubits and PAULI_TWIRLING
with circuit.block(range(127), context=PAULI_TWIRLING) as layer:
    # the power user knows that cx(23, 27) is in the target
    layer.cx(23, 27)
circuit.measure_all()

sampler.run([circuit])

# CONVENIENCE USER
circuit = QuantumCircuit(2)
circuit.cx(0,1)
circuit.measure_all()

pm = generate_preset_pm(add_twirling_blocks=True, ...)
isa_circuit = pm.run(circuit)

sampler.run([isa_circuit])

Ok thanks Ian, that helps a lot.  I think you answered the questions I was trying to ask, even if my wording wasn't super helpful.
Just to be clear: I'm totally on board with the general principles behind this proposal, I just have a bunch of considerations about exploring the design space, and making sure we're going for the right abstractions/APIs for the right time frames.
One more question, and then some responses:

the way this proposal is written closes the door on the case of overlapping blocks (nested are allowed, but overlapping blocks at the same depth aren't).  Are we comfortable with that? ( Fwiw, I'm 100% comfortable with that, I just want to flag it as a design question.)

Responses:

ok, that's fine by me for now.  I'm particularly concerned with how this will interact with the future question of block re-use, though, and I don't want to introduce large API surface in the short term if there are less invasive alternatives, and the short-term form doesn't satisfy the long term needs.  I'll come back to this later.

That answer's roughly in line with what I was thinking, but let's say: ok, could we make do in the short term just by moving the custom class Block(Instruction) to be something that qiskit-ibm-runtime defines, rather than core Qiskit?  (Like point 1, I'll come back to this later.)

"the transpiler need not be touched at all in this case" is the answer I was looking for here, thanks.  That's the simplest form for us (and hence the script was easy to write).

Sorry, I don't have time to fully flesh out the "I'll come back to this later" bits today, but I'll try and get that done tomorrow.

Fwiw, with the current way control-flow context managers are done in Qiskit, there's no particular need to do layer.cx in the with statement; we'd likely just re-use the same logic for that, which would mean that you'd just use qc.cx, but it would get re-directed to the block builder.

Hi @jakelishman thanks for your detailed comments that are, as always, insightful.
We have no problems with:

[comment 1] we call it Box, not Block
[comment 2] we inherit from ControlFlowOp rather than raw Instruction

We also have no problems taking ownership of twirling stuff inside of qiskit-ibm-runtime as special annotations. It seems conceivable to me that having some kind of UID annotation be a part of qiskit-core might still be on the table. If you recall my 2023 presentation, I framed twirling directives in terms of qasm3 annotated boxes, so this is not inconsistent with what my thoughts have been for a while.
It sounds like we want to reword the entire RFC as the introduction of Box, with a main goal of making sure that it is compatible with using it for twirling infrastructure, and whatever else you have in mind. Any mention of twirling should be clearly labelled as an example usage, and not confused with the promise of the RFC.
I know you were just throwing around examples and not prescriptions ("I want to emphasise that it's a sketch"), so I bring it up only in the context of serialization: I would not want to support something like TwirlingStrategy(model=NoiseModel(...)), I really dislike having noise-like things living inside of circuits. Instead I'd want the ability to label boxes by u/uids and have the noise model attach against those, separately. So having annotations required to, for example, have a json-able format, would not feel limiting to me presently.
Interactions with the transpiler (forgive me, but I never call it a, and especially not "the", compiler to reduce naming confusion between teams) need further thought, and your section about it is a great start.

Thanks for your reply, @ewinston 😄
A few remarks about annotated collection VS boxes:

I don't fully understand why "the requirement of not optimizing across box boundaries seems like it could complicate fair optimizations [for twirling and DD]," and it's unclear how the collection would get around this.
a. At the end of the day, boxes is what we do in the server (we turn the circuit into alternating sequences of one-qubit gate layers and two-qubit gate layers, and then start appending twirling gates and all that). Boxes expose this process, so that it is done transparently and the user can understand (or even define) how the layers are generated before submitting the circuit. In other words, we do not lose anything as compared to existing functionality, but we gain transparency and provide even more functionality than is available today.
b. The box provides a clear interface where whenever we use the transpiler, if the annotation of the box is of a certain type that matches the pass(es), the transpiler is allowed to get inside the box and do all the modifications. It's unclear how a collection would be dealing with transpilation any differently

The annotated collections seem (to me, at least) a more complex and less intuitive option:
a. More complex: Having instructions AND references to instructions means that we constantly need to:
- check if a dag node is or is not part of the collection
- update both of them.
For example, imagine replacing a node in the dag circuit with another node. We need to replace the node, then check if it was an annotated one, and if it was, replace it in the collection. Two sets of operations instead of one (with the box)
b. Less intuitive: As a user, I can see a box just by drawing the circuit, as opposed to having to look at the collection. I also think that it will be easier to document ("this is a box, this is what happens"), as opposed to document what's happening with an annotated collection that lives on top of the circuit and that a user doesn't really interact with

An annotated collection could have an issue with having to check the annotation sets whether it is a member (O(1)) and whether node editing is allowed (O(1)) which box does not seem to have to worry about.
Perhaps I can pose a couple of situations which I'm wondering how the box instruction would handle. Let's say the user defines the following circuit where the box of the second cx gate has been draw to include neighboring single qubit gates which can be folded into the twirls.

After passing through qiskit's transpiler additional single qubits gates, (or even swap gates if the circuit isn't routed) which the user may like to include within the box.

How can circuits which introduce single or two qubit gates after the box is defined be optimized?
The second scenario can be imagined from the above image. Suppose the user has applies DD after defining the box. On qubit q2 above the dd sequence might use the time up until the box boundary whereas in the absence of the box boundary it may have used up to the cx within the box. Is there a way to not effect the behavior of the DD sequence in across the box boundary?

@ewinston
A box is a directive that allows users to say "leave these gates alone." So in your example, where the user is intentionally placing the H gate inside the box, the transpiler is providing the best optimization that it can provide, given the constraint placed by the user. The same applies to DD.
If anything, this was a poor choice on the user's side (they should have left the H gate outside of it to take full advantage of transpilation and noise suppression), but it is their choice. The consequences of this choice are clear and leave no room for interpretation.
I also want to point out that the "basic" workflow (the user utilizes a compiler pass that adds the boxes for them) will not set boxes up like this, it will leave one-qubit gates out (I mean.. It's up to us to write that pass, we'll write the most optimal one). So the circuit that you are considering is coming from the "advanced" workflow, where the user creates the boxes on their own and deliberately makes that choice for H


Update the localized action 'Clone with New Name' to 'Clone' for file shares in non-EUN

Storage Explorer Version: 1.15.0-dev
Build: 20200723.3
Branch: master
Language: All
Platform/OS: Windows 10/ Linux Ubuntu 18.04/ macOS Catalina
Architecture: ia32/x64
Regression From: Not a regression
Steps to reproduce:

Launch Storage Explorer.
Open 'Settings' -> Application (Regional Settings) -> Select '한국어' -> Restart Storage Explorer.
Expand one storage account -> File Shares.
Open one file share -> Check toolbar.
Select one file/folder -> Check its context menu.

Expect Experience:
Show a localized action 'Clone'.

Actual Experience:
Show a localized action 'Clone with New Name'.

More Info:

This issue doesn't reproduce on one file share's context menu.
This issue doesn't reproduce for one blob container.

I'm the loc pm. I'll address this issue. Please to tag me in future loc issues.

Verified this issue on build 20200924.2. Fixed.


feat: add SORT_RO command

Add support for sort read only command, as suggested in discussion https://github.com/go-redis/redis/discussions/2352#discussioncomment-4715670

For the record I've ran make test and found a few tests failing, not sure if it's related to my modifications or something not properly setup:
Summarizing 5 Failures:

[Fail] withConn [It] should replace the connection in the pool when there is no error
/home/ekofman/Workspace/src/github.com/emilienkofman/redis/internal_test.go:324

[Fail] withConn [It] should replace the connection in the pool when there is an error not related to a bad connection
/home/ekofman/Workspace/src/github.com/emilienkofman/redis/internal_test.go:337

[Fail] withConn [It] should remove the connection from the pool when it times out
/home/ekofman/Workspace/src/github.com/emilienkofman/redis/internal_test.go:350

[Fail] Sentinel [It] should facilitate failover
/home/ekofman/Workspace/src/github.com/emilienkofman/redis/sentinel_test.go:95

[Fail] Sentinel [BeforeEach] supports DB selection
/home/ekofman/Workspace/src/github.com/emilienkofman/redis/sentinel_test.go:26

Ran 529 of 533 Specs in 88.188 seconds
FAIL! -- 524 Passed | 5 Failed | 2 Pending | 2 Skipped


Remove the failure in first run : A separate method for creating the golden snapshot

updatesnapshot(bool) parameter is used for this option. But if the code does not find existing golden snapshots it will create one and will returns false.


Adding support for historic emission factors to emission factor endpoints

It would be great to have access to historic emission factors per network region.
Possibly by adding date_min and date_max query parameters to the emission factor endpoints (as is the pattern for other endpoints).

We had to throttle is because as an open API with no auth we were being hit too hard by crawlers and users and didn't have the resources or capacity to handle it. The new V4 API will require API keys and we intend on having users signup - we're still going to be liberal with personal / academic users, but still need to get it behind auth.
If you're not already on the waitlist for v4 let me know and I'll get you onboarded.

Hi @nc9 ,
I am PhD student at Monash Uni. I am doing relevant research on carbon emissions within the NEM. I am also curious whether I can access 5-min resolution emission factor data through the opennem. It would be great if I can also have the opportunity to have a try on the new V4 API. Much appreciated.
Cheers,
Jinhao


checker clears terminal on first load

Describe the bug
When enabling the checker plugin it clears the terminal, hiding the vite serve information.
Reproduction
import { defineConfig } from 'vite';

export default defineConfig({
  plugins: [
    checker({
      typescript: true,
    }),
  ],
});

Expected behavior
Should not clear the terminal
System Info
System:
    OS: macOS 12.7
    CPU: (10) arm64 Apple M1 Pro
    Memory: 4.44 GB / 32.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 20.2.0 - ~/.volta/tools/image/node/20.2.0/bin/node
    Yarn: 1.22.18 - ~/.volta/tools/image/yarn/1.22.18/bin/yarn
    npm: 9.6.6 - ~/.volta/tools/image/node/20.2.0/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 118.0.5993.117
    Edge: 118.0.2088.76
    Safari: 17.0
  npmPackages:
    vite-plugin-checker: ^0.6.2 => 0.6.2

Additional context
No response
Validations

[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.

You can add clearScreen: false, to your Vite config. This should probably be in the docs...

@cuberoot I still want vite to clear the screen, I just want to avoid this plugin from doing it a second time and moving the ts/eslint info out of the terminal.


Contribution to [HACKTOBERFEST 2024] - Git Quiz #56235

Checklist:

[ ] I have read and followed the contribution guidelines.
[ ] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

can you please please remove the spam tag as this was my first time hacktoberfest contribution

you opened 2 more PRs after the first one was closed, showing you do not pay any attention to feedback received. You need to show changed behaviour.

Actually it was done in the same period and i thought there was issue from my side this is why i am facing this now. i would be grateful if you help me on this for the last time.
Apologize

two PR, #56375 and #56379 opened 15 hours ago, then #56402 opened 1 hour ago. That is not the same period, you had 2 PRs closed because you were not following the rules, then you opened a 3rd one 14 hours later also not following the rules. You have showed you do not receive feedback

I feel quite embarrassed about my actions, but your guidance has helped me understand what I did wrong. Thank you for your support, and I apologize for any trouble I may have caused. I promise to learn from this and ensure it doesn’t happen again.
And i would be grateful if you could help me for the last time.
Thanks

you should join our Discord server and ask for help in the #contributors channel, continuing to post here will not bring to desired results


ARange with specified negative step returns different results compared to NumPy

Hi,
xt::arange seems to differ from NumPy's arange in several cases:
When we specify start = 6, stop = 5 and step = -1, xTensor returns [6, 5, 4], while Numpy:
numpy.arange(6, 5, -1)
array([6])

Same applies when the gap between start and stop becomes bigger. If we specify start = 8, stop = 5, step = -1, xTensor returns [8, 7, 6, 5, 4], while NumPy returns:
numpy.arange(8, 5, -1)
array([8, 7, 6])

When we specify start as smaller than stop (5 and 6) with negative step, xTensor returns [5] while NumPy:
numpy.arange(5, 6, -1)
array([], dtype=int32)

When we specify start and stop as same number, 6, xTensor returns: [6, 5] while NumPy:
numpy.arange(6, 6, -1)
array([], dtype=int32)

Thanks.

thanks, this is definitely a bug!


clientv3: only update initReq.rev == 0 with watch revision

Always updating the initReq.rev on watch create will resume from the wrong
revision if initReq is ever nonzero.

@heyitsanthony How did you find this bug? from a test failure?

@xiang90 from investigating #7709, but likely an unrelated issue.

The fix looks good to me.

This pr fixes my issue as well.
My issue:

send create req on initReq{key:foo, rev:2} and recv create resp back.
update initReq.rev to resp.Header.Revision let's say it is 100.
conn disconnect.
watchGrpcStream resends initReq{key:foo, rev:100}.
wch hangs because watch on rev 100 instead of rev 2.

It would be nice to have a simple test case that cover the above situation.
I can write one in a different pr when this gets merged.

@fanminshi the current test essentially already does that, all that would have to change is:
if _, err := cli.Put(context.TODO(), "a", "4"); err != nil {

instead having:
if _, err := cli.Put(context.TODO(), "b", "4"); err != nil {

Testing based on a hang won't fail fast-- it'll have to wait for the timeout to catch the failure, instead of failing as soon as it retrieving a bad value. I don't understand how a second test would catch any new failure modes since if there's a timeout for some other reason, it'll still fail. Seems redundant.

@heyitsanthony understood!

@heyitsanthony LGTM. Thanks!

lgtm, thanks!


implement type=datetime

eg: <input type=datetime />

Could this issue be reopened? As of now webshim still does not support the datetime input and it looks like datetime-local will be deprecated:
https://twitter.com/html5/status/433038890937901056
Side question: can the current datetime-local input be (ab)used to get UTC dates, especially when clocking "Now" in the picker?


Don't include javadocs in updateClassifiers

A proposal from Contributors Summit on October 8th in Krakow. Proposed by @pavelfatin and @olafurpg?
For jump to definition feature IDEs need sources, but they don't need javadocs.

transitiveClassifiers :== Seq(SourceClassifier, DocClassifier),

Turns out that sbt-bloop already updates transitiveClassifiers to only download sources (skip javadoc) so this has not been an issue in Metals. I think it would still make sense to change the default to skip Javadoc since I'm not aware of any tool that uses the javadocs. Either way, feel free to close this issue.

Closing this for now.


Interface hasn't been unified between HTTP and graphsync

The final Syncer interface is defined, but the interface for creating a Sync vs Syncer, and then getting a Syncer from the Sync object has diverged a lot  between the two paths.
It should be as easy as having the needed host or http client available, and getting the right syncer based on the type of addr-info passed in.

I think this is closer now, but not sure if sufficient to close this:
https://github.com/filecoin-project/go-legs/blob/main/subscriber.go#L676
https://github.com/filecoin-project/go-legs/blob/main/subscriber.go#L693


[WIP] pulumi aws infra

Code for deploying WhisperLive to AWS ECS defined in Pulumi. There's a lot here that I imagine would be specific to somebody's particular needs, so it's likely that this would be best thought of as a reference to be adapted rather than any sort of canonical out-of-the-box way to deploy the service.

Thanks, testing this out tomorrow.

Updated to clean up a little, added a README.md with instructions.


get an IP address from a given response

Is there a way to get the IP address from a response?
It is an available callback found here I was wondering if maybe that could be implemented as it is needed to authenticate responses for my project.

I actually ended up finding a way, so here is my next step i guess, which is figuring out how to contribute to the gem in a proper professional way. I will reserve that for a later date by adding the meta class which contains things like IP, various location attributes, device type and useragent info.
sorry for the useless posts

Hi @ZainW, fell free to just paste your code here if you don't want to loose time doing a pull request, so someone else may do it :)

Sure thing,
If you would like to get some of the meta information for any given response, grab a response then run response.meta to get a hash of the data, if you want specific data with a return, pass the appropriate symbol eg response.meta[:ip] to get the IP address of the user. I also used this to get location data without having to take a user input and trusting that is where they are from.

Ok great, so the data is already fetched and accessible. Is there anything to add to the gem then?


Feature/investment archive

Created a common archive entity form component based on updated designs that move the archive function into the body of the details page for investment project.
Migrated the company and contact screens to use the same component
Moved the archive component js into application bundle.
Not that the component does not handle being passed in a value as the current flow does not support this.  The next phase of this would be to add this feature in and migrate company pages to a shared controller and follow the investment pattern, which would make it easier to work with this component.
Archive investment project

Archive company

Archive contact

@feedmypixel I was thinking after this card maybe I'd go back and talk to @teneightfive about changing the multiple choice card to see if it makes sense to allow it to show an 'other' option, but then the issue is the field names


Moved all S2C/C2S packets

Fixes #622 . As Runemoro said, packets are not exclusive to either client or server side, so it makes no sense to let them in client or server packages. According to the thumbs up, many people seem to agree on it.
Additionally, some packets were renamed:

EntityPotionEffectS2CPacket -> EntityStatusEffectS2CPacket, as it's the name used everywhere else for now. After this PR, #915 can be closed, as the other issues described there are already fixed
RemoveEntityEffectS2CPacket -> RemoveEntityStatusEffectS2CPacket, to match the above
GuiActionConfirmC2SPacket -> ConfirmGuiActionC2SPacket, to match the S2C one

Just need a final round of reviews. Ready to merge imo after that.


Python-Miio update attempt on every server reboot at shutdown and start

There seems to be an update twice at every reboot (on shutdown and start) for python-miio .
After running the command manually I concluded it's already the version it's trying to upgrade to but each time the command is run it takes over 1 minute before I get the error stating it's already the latest version !
This results in what is aproximately 3 minutes of extra time for restarting HA !
Here is the command that is run on every reboot ( both on shutdown and start) :
/usr/local/bin/python3 -m pip install python-miio==0.4.7 --no-cache-dir --upgrade --constraint /usr/src/homeassistant/homeassistant/package_constraints.txt --find-links https://wheels.home-assistant.io/alpine-3.10/armv7/ --prefer-binary
Hassio Version 102.1
No custom packages related to xiaomi miio in any way
According to coders of Miio integration this is probably a hassio bug !

Commented on original issue home-assistant/home-assistant#29210.
This is not the correct place for this problem. Let's continue the discussion on the original issue.


Changes for v0.2.0

Highlights:

Cleaned up code for unused stuff and created some helper functions to reduce redundant code
Removed make sync, make rebase
Renamed make docs to make template
Heavily simplified make validate and removed a ton of files that were overly complex due to new requirements. See below for more details
Modified scripts and templates to document the new features
Updated versioning for semver compliance for Helm 3.5.2
Added a package-ci script that can be used to validate that charts-build-script changes don't break basic functionality
Minor bugfixes

Related Issue: https://github.com/rancher/rancher/issues/32199

I think the staging/prod branches look good, thanks for doing this.
I do see another small problem, fleet has 5000 as patch version: https://github.com/aiyengar2/charts/tree/bump_staging_v0_2_0/assets/fleet

I do see another small problem, fleet has 5000 as patch version:

That's expected right? 5 is the patch and 000 is the packageVersion. Discussing this in https://github.com/rancher/charts-build-scripts/pull/38#discussion_r628659994.


How to reproduce your results.

I use the same run command like yours, but I get worse results on dev dataset.
eval_f = 0.89656204
eval_precision = 0.90508
eval_recall = 0.88843685
global_step = 653
loss = 17.190592

I use "BERT-Base, Multilingual Cased: 104 languages, 12-layer, 768-hidden, 12-heads, 110M parameters" as checkpoint, which is public by google at November 23rd, 2018.

When I use "BERT-Base, Cased: 12-layer, 768-hidden, 12-heads , 110M parameters" as checkpoint, F1 reach 0.93 too.


Area control problems

Link to PDF file (or attach file here):
Configuration:

Web browser and its version:  explorer 10 / crome 52.0.2743.116 m (64-bit)
Operating system and its version:
PDF.js version:
PDFJS.version = '1.3.91';
PDFJS.build = 'd1e83b5';
Is an extension: .pdf file

Steps to reproduce the problem:

I want to see the form of the horizontal.
I want to divide the region. 2 page by page.

What is the expected behavior? (add screenshot)
left, right button slide

What went wrong? (add screenshot)

Not the desired area.
How do I adjust the default settings of zoom?
pdf.js or viewer.js or viewer.css.
I do not know what to work on any part of yourself ...
This is desperately needed help and advice.
Thank you in advance.

There is https://github.com/mozilla/pdf.js/blob/master/web/pdf_viewer.js#L471 for setting the zoom factor. Other than that, two-page views are hard because of varying page sizes. Since no demo is provided, we cannot do more here. Closing as answered.


⚠ DDoS-Relay AU-syd1-02 has degraded performance

In 21cc579, DDoS-Relay AU-syd1-02 (http://<IP_ADDRESS>:42069/;csv) experienced degraded performance:

HTTP code: 200
Response time: 275 ms

Resolved: DDoS-Relay AU-syd1-02 performance has improved in 12202bd after 13 minutes.


Ensure ds.invoke_startup() runs on startup

This is needed by plugins that use the startup() plugin hook.

It crashed:
[ERROR] AttributeError: 'Datasette' object has no attribute '_hashed_url_databases'Traceback (most recent call last):  File "/var/task/vc__handler__python.py", line 293, in vc_handler    response = asgi_cycle(__vc_module.app, body)  File "/var/task/vc__handler__python.py", line 204, in __call__    loop.run_until_complete(asgi_task)  File "/var/lang/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete    return future.result()  File "/var/task/datasette_hashed_urls/__init__.py", line 38, in hashed_urls    if db_name in datasette._hashed_url_databases:
Presumably because datasette-publish-vercel doesn't arrange for the startup() hooks to be called!

https://github.com/simonw/datasette-publish-vercel/blob/b07f62d034e7cc62ba56309712ddb5c4349a38d7/datasette_publish_vercel/__init__.py#L39-L47
Originally posted by @simonw in https://github.com/simonw/datasette-hashed-urls/issues/2#issuecomment-1068541831

I tested this here and it works now:

https://github.com/simonw/datasette-hashed-urls/issues/4#issuecomment-1068548127


[Help Wanted] Document how team admins can see their teams' statistics

This is following a conversation with Dennis regarding this feature request: https://mattermost.uservoice.com/forums/306457-general/suggestions/17208602-allow-team-admins-to-see-statistics-for-their-team
Today, this use case can be achieved via new admin roles and mmctl in the scenarios where ALL Team admins were allowed to see ALL team stats (E20 only). An iteration would be needed on New Admin Roles to add more granularity for team admins to only see their own team's statistics.
Below is a description from Dennis on how this can be achieved today:
The system admin would have to designate one of the new roles for team admins (likely the read-only admin). Then via mmctl remove everything but the reporting section. Then assign that role manually to team admins.

It's a work around, but it could hit a good number of use-cases for now.

two important notes:

- it would not be linked to the team admin role, so each time a team admin is demoted/promoted system admin would need to also remove the read-only admin role as a separate step
- they would have access to system level stats (not just their team)

@cwarnermm might be a good early documentation ticket for you to take on? Helps you get more familiar with a few areas of the product including mmctl, permissions system and admin roles.

First iteration documentation updated via: https://github.com/mattermost/docs/pull/4247