Upgrading from 1.13 to 1.14 leaves finalizers on Triggers

Describe the bug
When upgrading EKB from 1.13 to 1.14 there's the finalizer kafka.triggers.eventing.knative.dev left on Trigger resources. As a result the Trigger can't be deleted as well as the namespace.
The following error is thrown by KafkaController:
{"level":"error","ts":"2024-08-06T15:39:39.103Z","logger":"kafka-broker-controller","caller":"trigger/reconciler.go:303","msg":"Returned an error","commit":"3831bf8-dirty","knative.dev/pod":"kafka-controller-c5bf6b474-n4vwb","knative.dev/controller":"knative.dev.eventing-kafka-broker.control-plane.pkg.reconciler.trigger.NamespacedReconciler","knative.dev/kind":"eventing.knative.dev.Trigger",
"knative.dev/traceid":"970567db-31f7-4785-b06e-bec2cb888112",
"knative.dev/key":"test-atemuwtj/kbbksvc-0-ksvc","targetMethod":"FinalizeKind",
"error":"failed to get data plane config map knative-eventing/kafka-broker-brokers-triggers: configmaps \"kafka-broker-brokers-triggers\" is forbidden: unable to create new content in namespace test-atemuwtj because it is being terminated","stacktrace":"knative.dev/eventing/pkg/client/injection/reconciler/eventing/v1/trigger.(*reconcilerImpl).Reconcile\n\t/go/src/github.com/openshift/origin/vendor/knative.dev/eventing/pkg/client/injection/reconciler/eventing/v1/trigger/reconciler.go:303\nknative.dev/pkg/controller.(*Impl).processNextWorkItem\n\t/go/src/github.com/openshift/origin/vendor/knative.dev/pkg/controller/controller.go:542\nknative.dev/pkg/controller.(*Impl).RunContext.func3\n\t/go/src/github.com/openshift/origin/vendor/knative.dev/pkg/controller/controller.go:491"}

The code is trying to get the ConfigMap kafka-broker-brokers-triggers but the ConfigMap doesn't exist. It doesn't find the ConfigMap and tries to create it.
The finalizer looks like this:
apiVersion: v1
items:
- apiVersion: eventing.knative.dev/v1
  kind: Trigger
  metadata:
    annotations:
      eventing.knative.dev/creator: system:admin
      eventing.knative.dev/lastModifier: system:admin
    creationTimestamp: "2024-08-06T15:34:04Z"
    deletionGracePeriodSeconds: 0
    deletionTimestamp: "2024-08-06T15:39:37Z"
    finalizers:
    - kafka.triggers.eventing.knative.dev
    generation: 2
    labels:
      eventing.knative.dev/broker: kbbksvc-0
    name: kbbksvc-0-ksvc
    namespace: test-atemuwtj
    resourceVersion: "87952"
    uid: 4c6987ae-fdc3-4980-97a2-519fd3be8601
  spec:
    broker: kbbksvc-0
    filter: {}
    subscriber:
      ref:
        apiVersion: serving.knative.dev/v1
        kind: Service
        name: kbbksvc-0-ksvc
        namespace: test-atemuwtj
  status:
    annotations:
      group.id: knative-trigger-test-atemuwtj-kbbksvc-0-ksvc
    conditions:
    - lastTransitionTime: "2024-08-06T15:34:04Z"
      status: "True"
      type: BrokerReady
    - lastTransitionTime: "2024-08-06T15:34:04Z"
      status: "True"
      type: DeadLetterSinkResolved
    - lastTransitionTime: "2024-08-06T15:38:27Z"
      status: "True"
      type: DependencyReady
    - lastTransitionTime: "2024-08-06T15:34:04Z"
      reason: authentication-oidc feature disabled
      status: "True"
      type: OIDCIdentityCreated
    - lastTransitionTime: "2024-08-06T15:38:27Z"
      status: "True"
      type: Ready
    - lastTransitionTime: "2024-08-06T15:38:04Z"
      status: "True"
      type: SubscriberResolved
    - lastTransitionTime: "2024-08-06T15:34:04Z"
      status: "True"
      type: SubscriptionReady
    deadLetterSinkUri: http://kbbksvc-0-bdls.test-atemuwtj.svc.cluster.local
    observedGeneration: 1
    subscriberUri: http://kbbksvc-0-ksvc.test-atemuwtj.svc.cluster.local
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

This happens for any Broker type that has triggers: Kafka, the multi-tenant channel-based broker backed by KafkaChannel, and also for multi-tenant channel-based broker backed by InMemoryChannel. The trigger.NamespacedReconciler is involved there and the kafka.triggers.eventing.knative.dev finalizer is kept on the resource in all cases.
Expected behavior
The trigger does not have the finalizer and can be actually deleted.
To Reproduce
I have reproduced it by running an upgrade test from 1.13 to 1.14 and trying to delete the test namespace.
Knative release version
1.14
Additional context
The Triggers that are installed with clean/fresh 1.14 version do NOT have the finalizer at all and can be deleted. This problem only occurs when upgrading from the previous version.

/assign


Proposal: KVM/Qemu driver

The title says it all. A driver for KVM/Qemu could be quite useful since it is so easy to set up a host for it and using SSH to auth.

+1

+1

+1

+1

+2

Sven, I worked on your initial KVM/Qemu driver and I finished a few parts that were missing.
The code is here: https://github.com/fventuri/machine/tree/504-kvm-qemu-driver
This version should be able to create/start/stop/remove a docker machine locally with the KVM/Qemu driver.
It still needs some cleaning and can definitely be improved, but it at least somewhat functional.
Please give it a try and let me know what you think and if you had any problems with it.
Franco

@fventuri Do you have a PR for this that I should be commenting on? I tried it out and it worked pretty great, except that I'm getting a connection refused error when connecting during a docker-machine ls.

+1

@clnperez - I see @SvenDowideit has already a pull request (https://github.com/docker/machine/pull/650) that he is working on for the same thing.
Not sure if I should create another one, or what is the best way to work on this driver, since I am new here.

What is the current status of KVM/Qemu driver for Docker Machine? Are there any more or less finished and working implementation? Is is going to be included in Machine any time soon?
Maybe it's to much questions but I'm interested in such driver, I've seen a lot of other drivers come recently to Machine but not this one.

Having such driver will enable running ARM based docker images on x86 host system, e.g. developing for raspberry pi using your macbook laptop. Unfortunately, it's not possible right now since virtualbox does not support hardware emulation.

+1

+1

We are introducing a driver plugin model with 0.5.0 and any user who wants to build and distribute such a driver is free to rock and roll!

@fventuri 2 years later, so I'm guessing you're not interested in this anymore, but I'm using your work in https://github.com/jigtools/docker-machine-driver-qemu

@SvenDowideit Wow! Time flies! I hadn't realized that I wrote that stuff two years ago already.
Anyway, I moved on to other projects, so feel free to use all that code and documentation for your projects.
Good luck,
Franco


Minor issue fixes

Couple random things:
-Updated/standardized optional dependency handling (Resolves #118) by requiring an attempt_to_import call at the top and a @requires_optional_dependency(library_name) decorator around the __init__ or _transform.
-Added option to silently skip stims (Resolves #135) by adding a validation argument to the .transform method that accepts values strict (will raise TypeError on incorrect validation) warn (will just log a warning for incorrect validation) and loose (will silently skip and return None)
-Other minor refactoring and clean up

@tyarkoni Updated to the pattern you suggested. We talked about making the optional dependency management into a separate package, but I'll get into that later/let's just merge this now. Also had to  fix something (b56287c) that required somewhat of a rewrite of EnvironmentKeyMixin.


RSDK-3923 Add workflow to publish off-cycle releases

Allows off-cycle version to be published to the next distribution tag

LGTM - I feel like a workflow that users can run to bump the version (to publish to npm) would also be useful, though then you'd have to make sure people aren't running it over and over

Might add that in the future - for now I just want to bring back something similar to old workflow since it worked well for us.


LightGBM example fails

/kind bug
What steps did you take and what happened:
When I followed https://kserve.github.io/website/0.8/modelserving/v1beta1/lightgbm/ the request fails with {"error": "Input data must be 2 dimensional and non empty."}. I think I narrowed it down to lightgbm.Dataset failing to autodetect the feature names, the model appears to just have generic "Column_0", "Column_1", etc feature names.
I got the example to work by changing this part:
iris = load_iris()
y = iris['target']
X = iris['data']
dtrain = lgb.Dataset(X, label=y)

...to this:
iris = load_iris()
y = iris['target']
X = iris['data']
feature_name = iris['feature_names']
dtrain = lgb.Dataset(X, label=y, feature_name=feature_name)

Here's a reproduction:
import lightgbm as lgb
import pandas as pd
from sklearn.datasets import load_iris

def main():
    explicit_model = train(make_explicit_dataset())
    auto_model = train(make_auto_dataset())

    print("Trying explicit model")
    print(predict(explicit_model))
    print("\n")
    print("Trying auto model")
    print(predict(auto_model))

def train(dataset):
    params = {
        'objective':'multiclass',
        'metric':'softmax',
        'num_class': 3
    }
    return lgb.train(params=params, train_set=dataset)

def make_auto_dataset():
    iris = load_iris()
    y = iris['target']
    X = iris['data']
    return lgb.Dataset(X, label=y)

def make_explicit_dataset():
    iris = load_iris()
    y = iris['target']
    X = iris['data']
    feature_name = iris['feature_names']
    return lgb.Dataset(X, label=y, feature_name=feature_name)

def predict(model):
    request = {'sepal_width_(cm)': {0: 3.5}, 'petal_length_(cm)': {0: 1.4}, 'petal_width_(cm)': {0: 0.2},'sepal_length_(cm)': {0: 5.1} }

    # Simulate kserve's lgbserver behavior:
    df = pd.DataFrame(request, columns=model.feature_name())
    inputs = pd.concat([df], axis=0)
    return model.predict(inputs)

if __name__ == "__main__":
    main()

The output I got, with Python 3.7, scikit-learn == 1.0.1, lightgbm == 3.3.2:
Trying explicit model
[[9.99985204e-01 1.38238969e-05 9.72063744e-07]]

Trying auto model
Traceback (most recent call last):
  File "train.py", line 52, in <module>
    main()
  File "train.py", line 14, in main
    print(predict(auto_model))
  File "train.py", line 47, in predict
    return model.predict(inputs)
  File "/usr/local/lib/python3.7/site-packages/lightgbm/basic.py", line 3540, in predict
    data_has_header, is_reshape)
  File "/usr/local/lib/python3.7/site-packages/lightgbm/basic.py", line 820, in predict
    data = _data_from_pandas(data, None, None, self.pandas_categorical)[0]
  File "/usr/local/lib/python3.7/site-packages/lightgbm/basic.py", line 566, in _data_from_pandas
    raise ValueError('Input data must be 2 dimensional and non empty.')
ValueError: Input data must be 2 dimensional and non empty.

@yuzisun thanks for the quick fix! Unfortunately, #171 has a bug. While the key "feature_names" (plural) is correct for the object returned by sklearn.datasets.load_iris, the parameter for lightgbm.Dataset is named feature_name (singular). With the #171 example I get:
Traceback (most recent call last):
  File "train.py", line 38, in <module>
    main()
  File "train.py", line 23, in main
    dtrain = lgb.Dataset(X, label=y, feature_names=iris['feature_names'])
TypeError: __init__() got an unexpected keyword argument 'feature_names'

Should I make a new ticket for this?


Broken pipe error

Hello there,
While i was running rc_driver.py code on my laptop and stream_client.py and ultrasonicsensor_client.py on raspberrry pi, i was  getting ultrosonic data but i was not able to get data from stream_client.py. Instead i was getting an error which is broken pipe error for stream_client.py.
//Error on pi:
traceback (most recent call last):
file stream client.py, line 30, in
connection.close()
file /usr/lib/python2.7/socket.py, line 283, in close
self.flush()
file /usr/lib/python2.7/socket.py, line 307, in flush self._sock.sendall(view[write_offset:write_offset+buffer_size])
socket.error: [errno 32] broken pipe

This problem is due to delay of server...
whenever the data is sent from client the server should be in listening mode if not broken pipe error arises..
To solve this increase the sleep time in client program after every measurement..

@SaiSurya9999  i increased sleep time in ultrasonic_client.py file but it show me broken pipe error after few seconds


Metadata not parsed for autogenerated categories when dirname is subdirectory

🐛 Bug Report
Using a type: autogenerated with dirName not . results in category metadata not being parsed.
The bug does not appear when no sidebar file is specified, nor when dirName is set to .
Have you read the Contributing Guidelines on issues?
yes
To Reproduce
https://codesandbox.io/s/keen-wozniak-cpdp0?file=/docs/tutorial/extras/_category_.yml

Create a new Docusaurus site / CodeSandbox demo
Add a subfolder to the docs directory
add some categories to the subfolder
add metadata to _category_.yml (json didn't work either)
modify sidebars.js to contain a sidebar with the item {type: 'autogenerated', dirName: '[subfolder name]'}

Expected behavior
Sidebar categories have their metadata parsed
Actual Behavior
Category metadata isn't parsed.
https://codesandbox.io/s/keen-wozniak-cpdp0?file=/docs/tutorial/extras/_category_.yml
Expected:

Actual:

Your Environment

CodeSandbox demo: https://codesandbox.io/s/keen-wozniak-cpdp0?file=/docs/tutorial/extras/category.yml
Docusaurus version used: 2.0.0-alpha.73

Reproducible Demo
https://codesandbox.io/s/keen-wozniak-cpdp0?file=/docs/tutorial/extras/_category_.yml
steps made to create:
mkdir docs/tutorial
mv -r docs/tutorial-basics docs/tutorial/basics
mv -r docs/tutorial-extras docs/tutorial/extras

renamed _category_.json in docs/tutorial/extras to _category_.yml and updated to yaml syntax; sidebar position also changed, so it should be above basics.
in sidebars.js, changed dirName from . to tutorial
link in src/pages/index.js:19 changed to /docs/tutorial/basics/create-a-page for ease of access.

Just tried this locally, it seems the position is also not taken up it seems so that leaves the ordering of items in the sidebar to be manually arranged by updating filenames.

Hey, I think there's a misconception on how this feature is supposed to work.
When you use dirName: "tutorials", it won't read the category metadata file at all not create a category for the tutorials folder
It will just read the docs of that subfolder and also the sub-subfolders. If you want a category, you have to add it explicitly to the sidebar.
The reason for this is that this allows to create a single category that can source multiple autogenerated directories, and generate a flat list of sidebar items.
Here is the init template where we want a 100% flat structure. It will work and no category at all will be created (on purpose):
module.exports = {
  tutorialSidebar: [
    "intro",
    { type: "autogenerated", dirName: "tutorial-basics" },
    { type: "autogenerated", dirName: "tutorial-extras" },
  ],
};

Now what you are looking for is probably something like this:
module.exports = {
  tutorialSidebar: [
    "intro",
    {
      type: "category",
      label: "Tutorial - Basics",
      items: [{ type: "autogenerated", dirName: "tutorial-basics" }],
    },
    {
      type: "category",
      label: "Tutorial - Extras",
      items: [{ type: "autogenerated", dirName: "tutorial-extras" }],
    },
  ],
};

You can also mix and match so that basic tutorials are flat and extra tutorials are nested:
https://codesandbox.io/s/elated-heisenberg-6tu9g?file=/sidebars.js:0-261
module.exports = {
  tutorialSidebar: [
    "intro",
    { type: "autogenerated", dirName: "tutorial-basics" },
    {
      type: "category",
      label: "Tutorial - Extras",
      items: [{ type: "autogenerated", dirName: "tutorial-extras" }],
    },
  ],
};

I think it's powerful to be able to source multiple distinct folders and "concat" the docs of those folders under a single list.
Does it make sense?
How can we document this better?
Should we create an option so that a category is created for the target auto-gen dir by default?

I think the issue's more of that the autogenerated sidebar items do recognize and create subcategories, except these subcategories do not have metadata recognized unless dirName='.'.
i.e. if I have a docs directory structure of
docs
└── tutorials
    ├── basics
    │   ├── _category_.yml
    │   └── index.md
    └── extras
        ├── _category_.yml
        └── index.md

where the category metadata defines
# basics/_category_.yml
label: 'Tutorial - Basics'
position: 2

# extras_category.yml
label: 'Tutorial - Extras'
position: 1

, an autogenerated sidebar item with dirName: '.' gives a sidebar with the structure
tutorials
├── Tutorial - Extras
│   └── index.md
└── Tutorial - Basics
    └── index.md

If I don't want a wrapper tutorials category in my sidebar, I would expect dirName: 'tutorials' to yield a sidebar with the structure
Tutorial - Extras
└── index.md
Tutorial - Basics
└── index.md

whereas currently it yields
basics
└── index.md
extras
└── index.md

@duanwilliam  agree, something does not work as intended and Docusaurus fails to read the metadatas of subcategories of the autogenerated source dir. Will fix this.

Thanks @slorber ! is it possible to use this directly from master now? sorry my npm foo is a bit weak :(

@geekodour you can use the canary release to get the code from master before we release it:
https://www.npmjs.com/package/@docusaurus/core

released in alpha 74


Idea: allow to tweak behavior from the config file

It could be nice to allow the --no-push-tag  behavior to be encoded in the configuration file, for instance.

Yup, that's actually what I mentioned in #111 :)


Tooltip of editor doesn't shown up when launched while certain game running

Godot version:
Godot Engine v3.2.2.stable.official
OS/device including version:
Windows 10 1809
OpenGL ES 3.0 Renderer: GeForce GTX 1050 Ti with Max-Q Design/PCIe/SSE2
Issue description:
I've suffered from tooltip not showing up. After some investigation, I finally found the main cause was a game named World of Warships by wargaming.net .
Basically, if a godot editor is launched while the game running, any tooltip (both of toolbar icons and of properties) won't show up. If the game exits, all running godot instance affected immediately behaves normal.
Instance launched before the game starts remains normal after that.
I've tried removing all settings (%appdata%\Godot) but no help.
Steps to reproduce:

Run godot editor, and load/create a project (refers to godot A)
Run World of Warships (the game)
Run another godot editor, and load/create a project (refers to godot B)
Check if godot A has normal tooltip, and godot B doesn't show any
Quit World of Warships
Check if godot B shows tooltip now

Minimal reproduction project:
Any blank project is sufficient.

I don't know if it's worth opening an issue about it, cause the game is not a common application for daily use. Anyway feel free to close (and delete if needed) this issue if you think it's not appropriate, and take my sincere apologies.

Maybe this is solved in the master branch with the DisplayServer refactor? I don't know. You could try installing the Vulkan SDK then downloading a nightly build.

Yes the issue is gone with the latest nightly build. I've thought about testing on master but did failed to build myself, neither did I find the nightly binaries.
Thank you sir.


Indentation and whitespaces are being stripped away in multiline strings

Hi,
the current implementation of the parser strips away whitespace from all lines using strip().
To reproduce use this snippet:
import toml

t = '''
foo = """
test
  test
  test2
test3
    test5
    test6
test7
"""
'''

p = toml.loads(t)
print p["foo"]

Acutal Output
test
test
test2
test3
test5
test6
test7

Expected Output
test
  test
  test2
test3
    test5
    test6
test7

This violates the toml spec (see https://github.com/toml-lang/toml#string)

Multi-line basic strings are surrounded by three quotation marks on each side and allow newlines. A newline immediately following the opening delimiter will be trimmed. All other whitespace and newline characters remain intact.

furthermore

A newline immediately following the opening delimiter will be trimmed. All other content between the delimiters is interpreted as-is without modification.

Closing as a duplicate of #68
See #69 for discussion on necessary changes to the toml test suite.


Update error

I have done a clean installation of siwapp-sf3
I can't perform the db-upgrade process.
The following error is always displayed.
php bin/console siwapp:upgrade-db:0.4-1.0 mysql root root siwapp localhost -vvv
Imported 14 Properties
Imported 10 Series
Imported 6 Taxes
Imported 82 Customers
Imported 0 Products
Imported 39 Estimates
[Symfony\Component\Debug\Exception\ContextErrorException]
Warning: A non-numeric value encountered
Exception trace:
() at /Applications/MAMP/htdocs/siwappsf3/src/Siwapp/RecurringInvoiceBundle/Entity/RecurringInvoice.php:453
Siwapp\RecurringInvoiceBundle\Entity\RecurringInvoice->checkMustOccurrences() at /Applications/MAMP/htdocs/siwappsf3/src/Siwapp/RecurringInvoiceBundle/Entity/RecurringInvoice.php:503
Siwapp\RecurringInvoiceBundle\Entity\RecurringInvoice->preSave() at /Applications/MAMP/htdocs/siwappsf3/vendor/doctrine/orm/lib/Doctrine/ORM/Event/ListenersInvoker.php:102
Doctrine\ORM\Event\ListenersInvoker->invoke() at /Applications/MAMP/htdocs/siwappsf3/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php:896
Doctrine\ORM\UnitOfWork->persistNew() at /Applications/MAMP/htdocs/siwappsf3/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php:1683
Doctrine\ORM\UnitOfWork->doPersist() at /Applications/MAMP/htdocs/siwappsf3/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php:1639
Doctrine\ORM\UnitOfWork->persist() at /Applications/MAMP/htdocs/siwappsf3/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php:579
Doctrine\ORM\EntityManager->persist() at /Applications/MAMP/htdocs/siwappsf3/src/Siwapp/CoreBundle/Command/UpgradeFrom04Command.php:258
Siwapp\CoreBundle\Command\UpgradeFrom04Command->importRecurringInvoices() at /Applications/MAMP/htdocs/siwappsf3/src/Siwapp/CoreBundle/Command/UpgradeFrom04Command.php:83
Siwapp\CoreBundle\Command\UpgradeFrom04Command->execute() at /Applications/MAMP/htdocs/siwappsf3/vendor/symfony/symfony/src/Symfony/Component/Console/Command/Command.php:255
Symfony\Component\Console\Command\Command->run() at /Applications/MAMP/htdocs/siwappsf3/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:846
Symfony\Component\Console\Application->doRunCommand() at /Applications/MAMP/htdocs/siwappsf3/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:191
Symfony\Component\Console\Application->doRun() at /Applications/MAMP/htdocs/siwappsf3/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:80
Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /Applications/MAMP/htdocs/siwappsf3/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:122
Symfony\Component\Console\Application->run() at /Applications/MAMP/htdocs/siwappsf3/bin/console:29
siwapp:upgrade-db:0.4-1.0 [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--]      [] []

I just had the same issue and I fixed by changing the following line at the file: src/Siwapp/RecurringInvoiceBundle/Entity/RecurringInvoice.php
from:
503:  $this->checkMustOccurrences();
to:
503: //  $this->checkMustOccurrences();
hope that helps.

OK I'll try it.
Thanks a lot.

@israelam would it be possible to describe the steps you did with a clean installation? I would like to reproduce but cannot get further due to issue #130

I just had the same issue and I finally fixed by changing the following at the file: src/Siwapp/RecurringInvoiceBundle/Entity/RecurringInvoice.php
switch ($this->period_type) {
    case 'year':
        $unit = '%y';
        break;
    case 'month':
        $unit = '%m';
        break;
    case 'week':
    case 'day':
        $unit = '%a';
        break;
}

You're welcome.

I just had the same issue and I finally fixed by changing the following at the file: src/Siwapp/RecurringInvoiceBundle/Entity/RecurringInvoice.php
From line 434:
switch ($this->period_type) {
    case 'year':
        $unit = '%y';
        break;
    case 'month':
        $unit = '%m';
        break;
    case 'week':
    case 'day':
        $unit = '%a';
        break;
}

You're welcome.

I just had the same issue and I finally fixed by changing the following at the file: src/Siwapp/RecurringInvoiceBundle/Entity/RecurringInvoice.php
from line 435:
switch ($this->period_type) {
    case 'year':
        $unit = '%y';
        break;
    case 'month':
        $unit = '%m';
        break;
    case 'week':
    case 'day':
        $unit = '%a';
        break;
}

You're welcome.

thanks! I will try that out.


Repair XnViewMP Download Location

XnViewMP download locations have moved

Thanks, @lefte for your attempt, but this would only fix a single version, assuming the checksums still match.
The actual search for a new version happens here:
https://github.com/OlafHaag/chocolatey-packages/blob/2b28556b3b10f144f125d667614a154dc2bbf3f1/automatic/xnviewmp/update.ps1#L18
Since the author changed their versioning by prepending a leading zero in the file name, this messes up finding the correct file.
On the website is says "1.3.0", but the filename contains "1.03.0".
If there was a good way of finding the correct latest version, the leading zero would have to be removed for chocolatey, because the last version there is 1.3.0 and is considered newer than any minor version starting with a zero. If any part of the version is just a single zero, than that must not be removed.

Thanks, @lefte for your attempt, but this would only fix a single version, assuming the checksums still match. The actual search for a new version happens here:
https://github.com/OlafHaag/chocolatey-packages/blob/2b28556b3b10f144f125d667614a154dc2bbf3f1/automatic/xnviewmp/update.ps1#L18
Since the author changed their versioning by prepending a leading zero in the file name, this messes up finding the correct file. On the website is says "1.3.0", but the filename contains "1.03.0". If there was a good way of finding the correct latest version, the leading zero would have to be removed for chocolatey, because the last version there is 1.3.0 and is considered newer than any minor version starting with a zero. If any part of the version is just a single zero, than that must not be removed.

Very useful, I didn't notice the automatic package updater in the repo -- let me know if this new commit helps with the link URL parsing. I'm not sure what to do about the version comparison portion, as I'm pretty new to PowerShell and Chocolatey.

If I understand correctly, it's not the version (starting zero) that has changed but the location of the packages.
https://download.xnview.com/old_versions/XnView_MP/ - this one contains:

XnView_MP-1.4.2-win-x64.exe (apparently there is only 64bit version which is also mentioned in https://www.xnview.com/en/xnviewmp/)
XnView_MP-1.4.1-win.exe
XnView_MP-1.4.1-win-x64.exe

So the last commit by @lefte might work for finding the latest version (or any other for that matter).


change apipa network gw address from .1 to .2

Reason for Change:

currently cns using the same ip address "<IP_ADDRESS>" for both apipa gw and loopback adapter. This cause conflict issue when hns get restarted and not able to rehydrate the apipa endpoints. our long-term goal is to make this gw address configurable in dnc. But for a short-term fix, in cns, we want to overwrite the address to <IP_ADDRESS>, so customer can recreate apipa endpoints by restarting the cns.
Issue Fixed:

Requirements:

[ ] uses conventional commit messages

[ ] includes documentation
[x] adds unit tests
[ ] relevant PR labels added

Notes:

what's the impact of this change? is it backwards compatible?

here are some screenshots from testing the changes on my set up.

vm ipconfig

container ipconfig

thanks for adding this context. what happens if this change goes out to a node where containers are already running with the old .1 address?

thanks for adding this context. what happens if this change goes out to a node where containers are already running with the old .1 address?

This change only applies on new created apipa network/endpoints. It does not impact existed containers unless recreate them. @ashvindeodhar

thanks for adding this context. what happens if this change goes out to a node where containers are already running with the old .1 address?

@ZetaoZhuang did we test this with existing clusters with old cns and new cni, with all combinations?

A couple clarifications:

how do the apipa gw and loopback adapter come up the first time with no restart if they both use <IP_ADDRESS>?
hns allows this the first time with no restart
is the long term fix that we get the gw address from elsewhere and cns consumes it?
yep. cns get it from dnc
is the hns default gw address not changeable?
atm, right

/azp run Azure Container Networking PR


Document and check restrictions on passing non-array callbacks to CkStartCheckpoint

Original issue: https://charm.cs.illinois.edu/redmine/issues/158

In a bit of exploration in the ChaNGa source code following from #147, I discovered the following comment:

/// For checkpointing, the restart callback needs to be an array entry,
/// so we have a short entry that simply calls the main entry.
This was originally written in 2007, but still appears to be true today, based on an examination of the source code in ckcallback.h and charm.h. The issue is that CkChareID contains a pe and an object pointer. After a restart, the address of any given chare object is quite likely to have changed.

To prevent users from tripping over this, we should update the documentation to describe what callback types are allowed for restart, and add a check to CkStartCheckpoint (and any similar functions for in-memory or other FT mechanisms) that the callback will be usable in a restart situation. I think that the check should be an actual if(!valid(cb)) CkAbort(), rather than CkAssert, since that path is not so performance sensitive to the cost of one if, and users may never run it with error checking enabled. Be sure to check for pointers in other types of CkCallback when writing the docs and safeguards.
I note that under some options, plain chares can be identified either by pointer (unconditionally so in CkCallback) or by chareIdx when the macro CMK_CHARE_USE_PTR is set to 0. If that index is persistent across restart (possible) and globally valid (not sure what happens to chares on a failed PE), then we could move to using that in CkCallback instead. It might imply a bit of a performance hit to code using many plain chares that interact heavily via callbacks, but I'm not sure how that weighs against an arbitrary restriction on fairly basic functionality like disk checkpointing. If we move plain chares to a global object ID scheme, then that ID would go in the callback instead of a pointer and this issue would be moot.

Original author: Ramprasad Venkataraman
Original date: 2013-04-17 21:06:22

I am not completely knowledgeable about why CkChareID carries a ptr around. However,  our current perception of objid should be able to accommodate identifying and addressing free chares quite well. However, until we actually implement that, this task for additional checks / documentation is relevant and should proceed without waiting on objid_t.

Original date: 2013-05-03 19:28:20

Please complete this before internship.

Original date: 2013-06-04 02:00:56

Xiang, can you do this in the next week, or should we reassign it to someone else?

Original author: Xiang Ni
Original date: 2013-06-04 05:50:25

Sorry, I totally forgot about it. I will look at it tomorrow and estimate how much needs to be done. I will leave for travel this Saturday. If I cannot finish it in this week, please assign to someone else.

Original author: Xiang Ni
Original date: 2013-06-05 06:47:23

The checkpoint and restart of plain chares are only handled properly for CkStartCheckpoint (not in double in-mem FT) when CMK_CHARE_USE_PT is set to 0 and the number of restart pes are same as before. That being said, the callback should always be valid if the checkpoint for plain chares are used properly. But I add the check of callback for safety.

Original date: 2013-06-05 22:06:28

How is CMK_CHARE_USE_PTR set on the various build configurations? When it's set to 1, we need to detect and error out on checkpoint callbacks that would aim at a plain chare.

Original author: Xiang Ni
Original date: 2013-06-05 22:17:23

I just did a grep, CMK_CHARE_USE_PTR is set to 1 on various builds. CkStartCheckpoint does not checkpoint the data of plain chare when CMK_CHARE_USE_PTR is 1. If so, why would we use checkpoint with plain chare in such situation? Or are we expecting the user to reconstruct the plain chare?

Original date: 2013-06-05 22:23:01

That's an additional degree of trouble that the application developer would have to face, but it's something they can face. If they pass a plain chare callback containing a pointer to the checkpointing code, it's guaranteed to be broken, and we should detect that.

Original author: Xiang Ni
Original date: 2013-06-05 22:26:11

OK, I will add the detection tonight.

Original date: 2013-06-15 04:10:53

It turns out other callback types than just those targeted at Chares contain pointers that may not be valid after recovery. I'm implementing the more comprehensive solution.
In the longer run, it'd be nice to move away from CMK_CHARE_USE_PTR entirely, so that something that one expects ought to work actually does.


Add note that echo.Context must not accessed out of coroutine handling that request

Add note that echo.Context must not accessed out of coroutine handling that request
Relates to https://github.com/labstack/echo/issues/1908

done with #272


Don't allow emission of list(atom()) events without specifying source module, and add compile time error

Right now Sibyl allows us to emit events via: Sibyl.emit(:event) and Sibyl.emit([:some, :other, :event]).
The former has compile-time checks that :event exists in the module trying to emit said event, but the latter has no checks at all.
We should make it such that Sibyl.emit([:some, :other, :event]) either:

Checks the source module to determine if the event is defined if no module is given, or
Forces you to call it via: Sibyl.emit(Module, [:some, :other, :event]) which allows us to add in the missing compile time checks.

Closed by #17


TRG 7.07 Legal notice for documentation

some Legal Notice infromation are missing for your documentation
https://eclipse-tractusx.github.io/docs/release/trg-7/trg-7-07#documentation
Maybe this could also placed under the docs/ folder
https://github.com/eclipse-tractusx/portal-frontend/blob/v1.8.0-RC6/scripts/check-dependencies.md
https://github.com/eclipse-tractusx/portal-frontend/blob/v1.8.0-RC6/FILEHEADER.md

@FaGru3n thanks for the hint, change is implemented, please check the release branch https://github.com/eclipse-tractusx/portal-frontend/tree/release/v1.8.0


Books results from NLB API may have missing values

Description:
Some results from SearchTitle and GetTitles may not return all expected data. This includes results with no title or no author. Although this does not cause the app to crash, it causes the user's saved books to have blanks, which is a weird user experience.
Possible next steps:

Capture which APIs may return missing when they occur
Either consider a logic to exclude them from being shown at search or being saved into the user's saved books.

Added toast status raise any error if found for better user interaction


can't run gtest after #106

As the number of gtests increases, the build fails on API30 as it does with API28.
On API30, the build fails after 285 tests.
limitation

API28: 227 tests
API30: 285 tests

@euphony-io/all-ca-members
I think we have to reduce gtest test cases. 😢 Or is there any other good way?

@yeonns
I succeeded in building with API 30 in upsteam/master. There are 346 test cases. And it was also successful when API 24 and API 30 were tested at the same time.

API 30

API 24 + API 30

Let me test those cases!!
Thanks for sharing the unit-test issues!

@yeonns
I made 500 test cases at API 30.
but there are no issues.
I'm going to check S20 FE device with same environment!


Internet Explorer Compatibility

Not sure for how long, but it appears the game is no longer drawing properly in Internet Explorer. Other than that, nothing seems to be wrong. No errors logged in console. Reported in #444.

Appears to be something in 2123507, which was a part of the merge of #432. Looking into it now.

Okay, this was caused by IE's lack of support for the String.fromCodePoint() function, which is called in canvas.js: 697,698,699. When IE didn't know how to create the arrow character, it decides to throw in the towel and jump off a bridge to its death, rather than continue trying to draw anything. Crazy, I know.
I believe I have fixed the behavior by adding the .fromCodePoint() function to String during intial load. It checks to see if it has the function, and if not, adds it, so the browser will support calls to use it. With this in place, I am observing no further issues (IE 11.0.9600.18282, Chrome 49.0.2623.112, Firefox 44.0.2).


Rigidbody positional contraints are incompatible with app-coordinates

https://docs.unity3d.com/ScriptReference/Rigidbody-constraints.html
Positional constraints operate in world coordinates. They cannot be transformed to match a rotated app root. Some options to fix this are:

Implement constraints in app code, but this may have side effects.
Possibly use a Configurable Joint: https://docs.unity3d.com/Manual/class-ConfigurableJoint.html

Rotational constraints operate in local coordinates so they are compatible as-is.

Dup of #263


Factorize java build tool detection

And filter startupCommands in domain, with JHipsterModulesApplyer, rather in infrastructure. This makes FileSystemStartupCommandsReadmeCommandsHandler logic much simpler by reducing its responsibility.

Sorry, I only saw the request review now. I am going to review it when i wake up 😁👍

Coverage is not 100%
https://app.codecov.io/gh/jhipster/jhipster-lite/pull/9029?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=jhipster

Coverage is not 100%

Thanks, I'll fix it!


Could not load file or assembly 'Refit, Version=<IP_ADDRESS>

Hi,
I'm trying to use the library on UWP (Win10).
The package is installed correctly but when I execute I have thir error:
Exception thrown: 'System.IO.FileLoadException' in mscorlib.ni.dll
Additional information: Could not load file or assembly 'Refit, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Thank you in advance.

Please try again with 3.1 and re-open if still an issue


Can you provide a link to achieve "It is assumed that the Nano has been setup with JetPack 4.2 and that CUDA, cuDNN, and TensorRT have been installed."

Could you provide a link or the steps that shows how to "It is assumed that the Nano has been setup with JetPack 4.2 and that CUDA, cuDNN, and TensorRT have been installed."

Hi @DouglasPearless , please refer to these steps using the pre-populated SD card image (which already contains those components):
https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write


Breakpointing system added to replace illegals

@SamuraiCrow the breakpoints are in as suggested, it works well and i'm greatful for the idea.
There are a few commits backlogged :-)
The build structure is updated, the +Debug.s file used to be part of +amos_includes.s as a default - moving the reference and adding a MACRO for illegal to +Debug.s, and using switches when running the build script allows the use of the Breakpoint macro anywhere without interfereing with the build.
all the illegal references and been sanitized, some places in the code are not replaced with Breakpoint, but are commented Breakpoint for reference - if you look at the code, if the illegal was removed at those points something even worse would happen :-)
execute aall - builds everything with no Breakpoints
execute adebug1 - replaces AMOSPro and APCmp with debug versions that have Breakpoints included
execute adebug2 - replaces AMOSPro and APCmp with the integrated debug versions, these have AMOSPro.Lib, AMOSPro_Editor.Lib and AMOSPro_Monitor.Lib built in and Breakpointing works.
running the debug scripts switches 2 options - by replacing +Debug.s and +Integrated.s with a template from the scripts folder it allows adebug2 to include the .Libs in the build without create a second instance of the MACRO. I hope it makes sence and can be added, we will have the ability to add Breakpoints anywhere and run the debug build scripts without getting too involved.

please still merge this, I commented instead of changing in 3d.s - the illegal should be the macro
-*         illegal

       illegal                       * Breakpoint

should be

     Breakpoint

there are some other things about the 3d.Lib I can resolve in another commit together.


Added non English resource and metrics videos

Added URL of Youtube playlist of Change Data Capture Mechanism using Apache Kafka, Debezium, and Postgres in Urdu by Waqas Dilawar
Added URL of video on Monitoring Kafka Debezium Connector metrics using Prometheus in Docker-Compose by Waqas Dilawar

Applied, thx!


Add integration test to workflow

We have an integration test that will soon be complete. We need to add it to the workflow.

@fishonamos  Please can i work on this?

@fishonamos Please can i work on this? I'll add the integration test to the workflow by updating it?

Hi @Mystic-Nayy . This is an internal issue. However, you can apply to the feedback issue. We will open new issues.


Cop idea: the correct use of it and specify blocks.

StyleGuide: https://rspec.rubystyle.guide/#it-and-specify

Use specify if the example doesn’t have a description.

This one seems pretty straight-forward. Ignore for single line blocks and assertions starting with is_expected.


CDS-85869 Update k8s-dry-run.md

https://harness.atlassian.net/browse/CDS-85869
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the CODEOWNERS.
What Type of PR is This?

[x ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

https://harness.atlassian.net/browse/CDS-85869

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://656a5e0a9cf6c74bbfd9d3bf--harness-developer.netlify.app


Keyboard shortcut not working

Ctrl-alt-q not working.

Ok. Seems Ctrl-alt-q is used by Autoflow.
Changed my Open-in-browser key to Ctrl-Shift-q. works perfect now. :+1:


passing parameters to callback?

Is it possible to pass arguments to the callback function?
e.g.:
$(window).scroll($.debounce(40, updateLeftOffset(el, offset)));

This example throws an error right now. Is there a specific reason why this is not desired?
Is this sweet little plugin still maintained?

You can't do that because you'd be calling the updateLeftOffset() function when that line was executed.
You have to do something like this:
$(window).scroll($.debounce(40, function() {
    updateLeftOffset(el, offset))
});

@martinml thanks for the reply.
This looks like a good solution, I have not tried it yet, but the issue is closed i believe.
Thanks for pointing this out!


need documentation on backup/restore operation of the vaults

Hi,
Awesome module! IT would be great to add the location of the vault file and how to backup and restore the vault.
Kind Regards,
Emre

There is currently no way to securely and automatically backup and restore the store content, but it is something we can look at as a future enhancement.
For now you would have to write our own backup/restore using the SecretManagement 'Get-SecretInfo','Get-Secret' cmdlets, to loop through and obtain the secrets and then store in a secure location such as Azure KeyVault.

This is crucial requirement for multiple use cases

Backup secrets (so its not lost when system is rebuilt)
Move or clone secrets from one machine to another
Migrate from SecretStore to AzureVault (or any other extension)

I have written a simple module  to address these use cases. But would prefer if it gets implemented with official module. Also, I believe this should be SecretManagement module feature rather than SecretStore Extension.
Module Link : PSGallery - SecretBackup
Source code for module here - Github - SecretBackup


Store or return the Instance struct from TootClient.connect()

Right now, TootClient.connect() (and by extension, init(connect:clientName:session:accessToken:scopes:)) makes an API call with getInstanceInfo() but only stores the instance flavor and discards the Instance struct. If my app needs that struct, I have to immediately call getInstanceInfo() a second time.
Ideally, connect() would either store the Instance struct as a property of TootClient, and/or return it directly (in which case init(connect:clientName:session:accessToken:scopes:) also needs to return it) so the app can make use of it.

what I do is init TootClient without calling connect and instead call this (and I have a wrapper object called Session around TootClient for managing extra state including that returned Instance)
extension TootClient {

  public func getInstance() async throws -> Instance {
    let instance = try await getInstanceInfo()
    flavour = instance.flavour
    return instance
  }
}

We always try to minimise internal state of TootClient - if anything is to be persisted, it's up to the consuming app to manage the lifecycle as we can't predict that.
That we rely on getInstanceInfo to detect the flavour should be seen as an implementation detail of the library. If we find a way to understand the flavour without invoking the method then both connect and any initialisers would adopt the new approach and spare us the extra API call (Any suggestions on how to achieve this are more than welcome).
So you're both definitely on the right track - if your app requires instance information, you should invoke getInstanceInfo when needed and keep a copy of Instance for as long as your app needs it.


JSON-Elements with no children (hence, no values) causes failure of import

Working with a JSON that has elements with no children causes the import process to fail.
(I'm fully willing to accept that I may not be addressing this correctly, from a programming standpoint; I will confess to knowing enough to be dangerous with javascript & handlebarjs).
Looking at a Fantasy Map Generator JSON, the pack.provinces[0] element or the pack.burgs[0] element both are simply represented as 0,, even though there are many more child elements after that first empty element(burgs[1],[2],[3], etc). Importing either of these branches causes an error: Cannot create property 'SourceIndex' on number '0'
Is this a bug of the importer? Or is this bad data construction within the JSON file (as in, should those items at least have some dummy child elements)?
Manually adding in a dummy entry at the 0 position allows the import to succeed, but is there a way to tell the importer to ignore entries like this?
I do have some error checking code within a custom helper that will fail if an element contains 0 or is undefined, but the importer fails and stops the import before any custom helper code is even run.

I thought along the same lines. I will reach out to Azgaar and see if it can be updated.
For the time being, it's easy enough to manually add in a placeholder element to allow the importer to do its job.
Thanks.


Error illegal seek tailing access.log file

Issue type:

Bug report

What happened:
Running exporter along nginx inside a container, run by supervisor.
Starting exporter to listen on nginx access.log i get:
running HTTP server on address <IP_ADDRESS>:8082
2020/04/30 10:51:56 Seeked /var/log/nginx/access.log - &{Offset:0 Whence:2}
panic: Seek error on /var/log/nginx/access.log: seek /var/log/nginx/access.log: illegal seek

goroutine 42 [running]:
main.processNamespace.func1(0xa0d220, 0xc000064290)
        /home/runner/work/prometheus-nginxlog-exporter/prometheus-nginxlog-exporter/main.go:260 +0x3e
github.com/martin-helmich/prometheus-nginxlog-exporter/tail.(*followerImpl).OnError.func1(0xc0001286a0, 0x987e38)
        /home/runner/work/prometheus-nginxlog-exporter/prometheus-nginxlog-exporter/tail/tailer.go:60 +0x61
created by github.com/martin-helmich/prometheus-nginxlog-exporter/tail.(*followerImpl).OnError
        /home/runner/work/prometheus-nginxlog-exporter/prometheus-nginxlog-exporter/tail/tailer.go:57 +0x49

What you expected to happen:
Exporter runs and listens on the log successfully.
How to reproduce it (as minimally and precisely as possible):
Having Dockerfile such as:
FROM hoosin/alpine-nginx-nodejs:latest
RUN apk add nginx-mod-http-headers-more
RUN apk add supervisor
COPY src/main/docker/supervisord.conf /etc/
ENV NGINX_CONF /etc/nginx/
RUN touch /var/run/nginx.pid

RUN touch /var/run/nginx.pid && \
  chown -R nginx:nginx /var/run/nginx.pid && \
  chown -R nginx:nginx /var/cache/nginx

WORKDIR /usr/src/app

COPY src/main/nginx/prometheus-nginxlog-exporter prometheus-nginxlog-exporter
COPY src/main/nginx/nginx.conf /etc/nginx/nginx.conf
COPY src/main/nginx/nginx.site.conf /etc/nginx/sites-enabled/nginx.site.conf
RUN nginx -t

ENTRYPOINT /usr/bin/supervisord -c /etc/supervisord.conf

and Supervisor with disabled log rotation:
[supervisord]
nodaemon=true
logfile=/tmp/supervisord.log
childlogdir=/tmp
pidfile = /tmp/supervisord.pid

[program:nginx]
command=nginx
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
autorestart=false
startretries=0

[program:nginx_prometheus_exporter]
command=/usr/src/app/prometheus-nginxlog-exporter  -listen-port=8082 /var/log/nginx/access.log
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
autorestart=true
startretries=3

Environment:

Exporter version: 1.5.1
OS (e.g. from /etc/os-release): Alpine
Others: Docker

Any chance that /var/log/nginx/access.log is not a regular file, but something else? A named pipe, perhaps? Or a symlink to /dev/stdout?

Hey,
Yeah its a symlink to /dev/stdout. But i removed that from supervisor config too and it seems to be setup anyway, i guess by docker itself to intercept logs?
-> % docker exec f7467df6dd5b stat /var/log/nginx/access.log
  File: '/var/log/nginx/access.log' -> '/dev/stdout'
  Size: 11        	Blocks: 0          IO Block: 4096   symbolic link
Device: 6ch/108d	Inode: 41812122    Links: 1
Access: (0777/lrwxrwxrwx)  Uid: (  100/   nginx)   Gid: (  101/   nginx)
Access: 2018-12-21 01:18:39.000000000
Modify: 2018-12-21 01:18:39.000000000
Change: 2020-04-30 11:15:17.000000000

I'm not familiar with the base image, but I suspect that the symlink is simply baked into the image; it allows you to view the access logs using the docker logs command.
In this case, I would suggest one of the following options:

If you can live without having the access logs in docker logs, simply remove the symlink to /dev/stdout (presumably this could be done in the Dockerfile); NGINX should then create it as a regular file
Alternative, configure NGINX to additionally log either into an additiona log file or into a syslog port (in which case the exporter would have to be configured to accept syslog input).

Oh i just realized, its the alpine-nginx base image that does the symlinking: https://github.com/nginxinc/docker-nginx/blob/master/stable/alpine/Dockerfile#L105

The problem was idd symlink to the /dev/stdout done by the base alpine-nginx image itself.
Perfect, both solution worked. Not only got i a solution but got 2 :) and thanks for the swift response. Closing it now


Fixed a small spelling mistake in src/index.js

I didn't think it was worth opening a issue so fixed it myself it was annoying me for a while whenever i started my bot

Thanks :)


(maint) Update to latest ezbake

Test FAILed

Tests failed because we're in a chicken-and-egg situation with the pipeline PR at https://github.com/puppetlabs/ci-job-configs/pull/3465. That needs the update to ezbake to work, but also changes puppetdb pipelines to be called in a more standard way (not calling lein build directly), which is needed for the ezbake updates.

Tests failed because we're in a chicken-and-egg situation with the pipeline PR at https://github.com/puppetlabs/ci-job-configs/pull/3465. That needs the update to ezbake to work, but also changes puppetdb pipelines to be called in a more standard way (not calling lein build directly), which is needed for the ezbake updates.

Test PASSed

CLA signed by all contributors.

Test PASSed

Will get this via mergeups from 5.1.x


Unicast does not validate subscriber id

In case of unicast, the result is always no content. However, it makes sense to return a 404 Not Found in case the subscriber id does not exist.

Fixed in #132


Linux support

Not every programmer uses windows. As such, this should support Linux.
I was going to buy an AMD gpu since I am tired of Nvidia's terrible Linux drivers, but now it seems that y'all have serious gaps too.

+1 for GNU/Linux support

Not defending anything, but the profiling tool works great on manjaro, given the correct drivers are installed.
I would really love to see crash dump capture on linux though!


CSP Plugin doesn't put the nonce value into CSP meta tag on Windows

Description
Describe your issue here.
What type of issue is this? (place an x in one of the [ ])

[x] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Bug Report
If i use this CSP configuration on Mac
new CspHtmlWebpackPlugin(
      {
        'script-src': ['\'strict-dynamic\''],
        'style-src': ['\'self\''],
        'frame-src': ['\'none\''],
        'worker-src': ['\'none\'']
      },
      {
        enabled: true,
        hashingMethod: 'sha512',
        hashEnabled: {
          'script-src': true,
          'style-src': true
        },
        nonceEnabled: {
          'script-src': true,
          'style-src': true,
        },
      }

But if i run the same on windows pc nonces doesn't will be added to content property of CSP's meta tag
<!DOCTYPE html>

     <meta http-equiv="Content-Security-Policy" content="base-uri 'self'; object-src 'none'; script-src 'nonce-gn67IhFu2jJyrwY+PMSeUA==' 'strict-dynamic'; style-src 'self' 'nonce-y3gcK9oDtWf74QiBnf2rSA=='; frame-src 'none'; worker-src 'none'">
 <meta charset="UTF-8">
 <title>Title</title>

  <link href="static/css/main.6ec92936e5acaa7eae9f.bundle.css" rel="stylesheet" nonce="y3gcK9oDtWf74QiBnf2rSA==">

Reproducible in:
slackhq/csp-html-webpack-plugin version: ^5.1.0
node version:I'm using electron with node v12, but i've installed the latest LTS version
OS version(s):10.0.19041
Steps to reproduce:
1.Use my configuration on both OS
2.
3.
Expected result:
What you expected to happen: the same that happen on Mac

Confirming

Fixed this by updating node from 14.16.0 to 14.17.0 ¯_(ツ)_/¯


Question: How is css-layout pulled into the project?

According to this, it is pulled in using an import.sh script which I can't seem to find.

I never ended up committing this import script. It's just copy and pasted

I guess there is already an issue opened addressing this...


Mac Dock Icon

Hi, its your original donor!
I am using a Mac now.  In Windows the Tab Manager gets its own icon in the taskbar.  But in Mac it does not seem to have one.  I am using Chrome in both Windows and Mac.  I am wondering if that is something you can enable?

Thanks for reaching out. @msg43 is it the same issue as this https://wavebox.io/kb/how-do-i-show-hide-my-chrome-extensions/amp/ ?

@xcv58 Thanks for your response.  This is a different question.  In the attached picture below (in Windows 11) notice that in the taskbar I have a "T" icon which allows me to switch to Tab Manager v2.   But in MacOs (Ventura) using Chrome I do not have a seperate "T" for the Tab Manager v2 program.  I was wondering if it is possible to implement this?

Got it, I think you can do it via https://support.google.com/chrome_webstore/answer/3060053?hl=en
In addition, you can set up shortcut via chrome://extensions/shortcuts like

Thanks for responding.  The shortcut keys were very helpful.  Would still be great to have an icon on the dock.  Is it not possible to implement?  Thanks!  :)

I will look into the feature by this weekend.

Hi @msg43 ,
You can use this instruction to create an app icon in the macOS Dock:

Open Chrome.

Open the extension in a tab, you can use the Ctrl+o shortcut or click the top right button to open it in a new tab

At the top right, click MoreMore.

Click More Tools.

Click Create shortcut.

Enter a name for the shortcut (I used Tab Manager v2 and you can use whatever you want)

Check the Open as window and click Create.

Close your browser or restart your machine (if the browser is frozen).

Then you can find your app in Chrome Apps (you can use Spotlight to search it) and pin it in the dock.
Some screenshots:

That worked, thanks!

Hi, When I try to move a tab from one window to another using the app it
crashes the app.
On Sun, Mar 19, 2023 at 6:40 PM xcv58 @.***> wrote:

Hi @msg43 https://github.com/msg43 ,
You can use this instruction to create an app icon in the macOS Dock:

Open Chrome.
2.
Open the extension in a tab, you can use the Ctrl+o shortcut or click
the top right button to open it in a new tab
[image: image]
https://user-images.githubusercontent.com/503123/226214050-6c19d90f-ad3d-4c6b-ab78-37ddd87396ae.png
3.
At the top right, click MoreMore.
4.
Click More Tools.
5.
Click Create shortcut.
6.
Enter a name for the shortcut (I used Tab Manager v2 and you can use
whatever you want)
7.
Check the Open as window and click Create.
8.
Close your browser or restart your machine (if the browser is frozen).
Then you can find your app in Chrome Apps (you can use Spotlight to
search it) and pin it in the dock.
Some screenshots:
[image: image]
https://user-images.githubusercontent.com/503123/226214077-92d08db3-98df-47c0-bdbd-30541315f138.png
[image: image]
https://user-images.githubusercontent.com/503123/226214096-32fabb82-7bd4-436f-a9f8-b9782abf4661.png
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1475422114,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LONYUF25KAGUHS2T3LW46DNPANCNFSM6AAAAAAUPCV5KE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi, When I try to move a tab from one window to another using the app it crashes the app.
…
On Sun, Mar 19, 2023 at 6:40 PM xcv58 @.> wrote: Hi @msg43 https://github.com/msg43 , You can use this instruction to create an app icon in the macOS Dock: 1. Open Chrome. 2. Open the extension in a tab, you can use the Ctrl+o shortcut or click the top right button to open it in a new tab [image: image] https://user-images.githubusercontent.com/503123/226214050-6c19d90f-ad3d-4c6b-ab78-37ddd87396ae.png 3. At the top right, click MoreMore. 4. Click More Tools. 5. Click Create shortcut. 6. Enter a name for the shortcut (I used Tab Manager v2 and you can use whatever you want) 7. Check the Open as window and click Create. 8. Close your browser or restart your machine (if the browser is frozen). Then you can find your app in Chrome Apps (you can use Spotlight to search it) and pin it in the dock. Some screenshots: [image: image] https://user-images.githubusercontent.com/503123/226214077-92d08db3-98df-47c0-bdbd-30541315f138.png [image: image] https://user-images.githubusercontent.com/503123/226214096-32fabb82-7bd4-436f-a9f8-b9782abf4661.png — Reply to this email directly, view it on GitHub <#2289 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AR6K5LONYUF25KAGUHS2T3LW46DNPANCNFSM6AAAAAAUPCV5KE . You are receiving this because you were mentioned.Message ID: @.>

Can you share what extension version you used? And does this always happen or just in the app window?

Removing the app from Chrome and reinstalling it seems to have fixed the
issue.  Happy New Years!  :)
On Sun, Dec 24, 2023 at 6:03 PM xcv58 @.***> wrote:

Hi, When I try to move a tab from one window to another using the app it
crashes the app.
… <#m_-2173292522508966047_>
On Sun, Mar 19, 2023 at 6:40 PM xcv58 @.> wrote: Hi @msg43
https://github.com/msg43 https://github.com/msg43
https://github.com/msg43 , You can use this instruction to create an app
icon in the macOS Dock: 1. Open Chrome. 2. Open the extension in a tab, you
can use the Ctrl+o shortcut or click the top right button to open it in a
new tab [image: image]
https://user-images.githubusercontent.com/503123/226214050-6c19d90f-ad3d-4c6b-ab78-37ddd87396ae.png
https://user-images.githubusercontent.com/503123/226214050-6c19d90f-ad3d-4c6b-ab78-37ddd87396ae.png
3. At the top right, click MoreMore. 4. Click More Tools. 5. Click Create
shortcut. 6. Enter a name for the shortcut (I used Tab Manager v2 and you
can use whatever you want) 7. Check the Open as window and click Create. 8.
Close your browser or restart your machine (if the browser is frozen). Then
you can find your app in Chrome Apps (you can use Spotlight to search it)
and pin it in the dock. Some screenshots: [image: image]
https://user-images.githubusercontent.com/503123/226214077-92d08db3-98df-47c0-bdbd-30541315f138.png
https://user-images.githubusercontent.com/503123/226214077-92d08db3-98df-47c0-bdbd-30541315f138.png
[image: image]
https://user-images.githubusercontent.com/503123/226214096-32fabb82-7bd4-436f-a9f8-b9782abf4661.png
https://user-images.githubusercontent.com/503123/226214096-32fabb82-7bd4-436f-a9f8-b9782abf4661.png
— Reply to this email directly, view it on GitHub <#2289 (comment)
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1475422114>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LONYUF25KAGUHS2T3LW46DNPANCNFSM6AAAAAAUPCV5KE
https://github.com/notifications/unsubscribe-auth/AR6K5LONYUF25KAGUHS2T3LW46DNPANCNFSM6AAAAAAUPCV5KE
. You are receiving this because you were mentioned.Message ID: @.>
Can you share what extension version you used? And does this always happen
or just in the app window?
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1868608296,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LIW3QR6MDFG42ZCI3TYLCYEPAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRYGYYDQMRZGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Unfortunately it went right back to crashing when I try to move a tab from
one window to another within the app.
I am using the latest extension that is posted to the chrome store (removed
and re-downloaded yesterday).
I can move tabs around between Chrome windows normally without a problem.
I was able to move tabs using your app's window yesterday when I
re-installed the app.
Today it crashes again.
I have 214 tabs in 63 windows open.  I am not sure if that matters.
Thanks!
Matt
On Sat, Dec 30, 2023 at 9:49 PM Matthew Greer @.***> wrote:

Removing the app from Chrome and reinstalling it seems to have fixed the
issue.  Happy New Years!  :)
On Sun, Dec 24, 2023 at 6:03 PM xcv58 @.***> wrote:

Hi, When I try to move a tab from one window to another using the app it
crashes the app.
… <#m_4426273500301332947_m_-2173292522508966047_>
On Sun, Mar 19, 2023 at 6:40 PM xcv58 @.> wrote: Hi @msg43
https://github.com/msg43 https://github.com/msg43
https://github.com/msg43 , You can use this instruction to create an app
icon in the macOS Dock: 1. Open Chrome. 2. Open the extension in a tab, you
can use the Ctrl+o shortcut or click the top right button to open it in a
new tab [image: image]
https://user-images.githubusercontent.com/503123/226214050-6c19d90f-ad3d-4c6b-ab78-37ddd87396ae.png
https://user-images.githubusercontent.com/503123/226214050-6c19d90f-ad3d-4c6b-ab78-37ddd87396ae.png
3. At the top right, click MoreMore. 4. Click More Tools. 5. Click Create
shortcut. 6. Enter a name for the shortcut (I used Tab Manager v2 and you
can use whatever you want) 7. Check the Open as window and click Create. 8.
Close your browser or restart your machine (if the browser is frozen). Then
you can find your app in Chrome Apps (you can use Spotlight to search it)
and pin it in the dock. Some screenshots: [image: image]
https://user-images.githubusercontent.com/503123/226214077-92d08db3-98df-47c0-bdbd-30541315f138.png
https://user-images.githubusercontent.com/503123/226214077-92d08db3-98df-47c0-bdbd-30541315f138.png
[image: image]
https://user-images.githubusercontent.com/503123/226214096-32fabb82-7bd4-436f-a9f8-b9782abf4661.png
https://user-images.githubusercontent.com/503123/226214096-32fabb82-7bd4-436f-a9f8-b9782abf4661.png
— Reply to this email directly, view it on GitHub <#2289 (comment)
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1475422114>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LONYUF25KAGUHS2T3LW46DNPANCNFSM6AAAAAAUPCV5KE
https://github.com/notifications/unsubscribe-auth/AR6K5LONYUF25KAGUHS2T3LW46DNPANCNFSM6AAAAAAUPCV5KE
. You are receiving this because you were mentioned.Message ID: @.>
Can you share what extension version you used? And does this always
happen or just in the app window?
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1868608296,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LIW3QR6MDFG42ZCI3TYLCYEPAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRYGYYDQMRZGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Happy new year, @msg43!
I am traveling and have no easy laptop access. I will be back in around 8 days and will try to fix it.
In the meanwhile, I suggest double check whether the Chrome is the latest version and is there special window (i.e. the app window) involved in the drag & drop action?

Happy new year, @msg43!
I am traveling and have no easy laptop access. I will be back in around 8 days and will try to fix it.
In the meanwhile, I suggest double check whether the Chrome is the latest version and is there special window (i.e. the app window) involved in the drag & drop action?

OK, its not an emergency.  Enjoy your holiday!   :)
Also, when I search for a tab and then click on it (in the app) the screen
switches to a different tab than the one I clicked on.
Best,
Matt
On Sun, Dec 31, 2023 at 7:02 PM xcv58 @.***> wrote:

Happy new year, @msg43 https://github.com/msg43!
I am traveling and have no easy laptop access. I will be back in around 8
days and will try to fix it.
In the meanwhile, I suggest double check whether the Chrome is the latest
version and is there special window (i.e. the app window) involved in the
drag & drop action?
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1873060038,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LMZS4HP25DCWMXKBD3YMH4KBAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZTGA3DAMBTHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@msg43 I cannot reproduce both issues on macOS. I'm curious whether this happens in popup window?

Hi, I was able to resolve this issue by uninstalling and re-installing the
chrome extension.
However, it just comes right back.
Thanks,
Matt
On Wed, Jan 10, 2024 at 10:35 PM xcv58 @.***> wrote:

@msg43 https://github.com/msg43 I cannot reproduce both issues on
macOS. I'm curious whether this happens in popup window?
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1886171179,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LI7FKUCG2EKMMVSXP3YN5MZHAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBWGE3TCMJXHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi, I was able to resolve this issue by uninstalling and re-installing the chrome extension. However, it just comes right back. Thanks, Matt

That's great, thanks for the update!

Just to be clear the problem is not fixed.
Can you see if you can fix it?
On Wed, Feb 7, 2024 at 11:31 AM xcv58 @.***> wrote:

Hi, I was able to resolve this issue by uninstalling and re-installing the
chrome extension. However, it just comes right back. Thanks, Matt
That's great, thanks for the update!
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1932426440,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LMTKIRO4O2J54ULXOLYSOT7ZAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZSGQZDMNBUGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

I tried but I cannot reproduce the bug on my laptop.

I cannot see your image. Can you upload again please?

The image is all black screen with a sad face from Chrome saying  "invalid
is blocked.  This page has been blocked by Chrome".
[image: image.png]
On Thu, Feb 8, 2024 at 9:18 PM xcv58 @.***> wrote:

I cannot see your image. Can you upload again please?
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1935238303,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LPSPCEOEB6CFC7FT5DYSWBQHAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZVGIZTQMZQGM
.
You are receiving this because you were mentioned.Message ID:
@.***>

Is it something like this?

Yes, that's it.
On Thu, Feb 8, 2024 at 10:28 PM xcv58 @.***> wrote:

Is it something like this?
image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/df91ede7-e5ac-4b5b-b299-dfc2b1b2f632
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1935282158,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LLG5JK2NMNS2BDUZF3YSWJVLAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZVGI4DEMJVHA
.

Open Chrome and the extension page
Create a new app

The first time open the new app might cause Chrome to frozen but force close it and reopen will solve it.

It worked!  Thanks!
On Fri, Feb 9, 2024 at 11:41 AM xcv58 @.***> wrote:

These steps work for me:

Close all tabs and Chrome
Delete the Tab Manager v2.app or whatever .app you have.
Open Chrome and the extension page
Create a new app

image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/e8124f32-5aa7-4beb-ab77-f993dd1075d0
image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/443f3dba-9f03-42a9-a1e5-9697f7649ea7
The first time open the new app might cause Chrome to frozen but force
close it and reopen will solve it.
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1936247777,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LKS73EK4PGFV3TQWUDYSZGVFAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZWGI2DONZXG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

Still crashes when I try to move a tab from one group to another...
On Wed, Feb 14, 2024 at 5:02 PM Matthew Greer @.***> wrote:

It worked!  Thanks!
On Fri, Feb 9, 2024 at 11:41 AM xcv58 @.***> wrote:

These steps work for me:

Close all tabs and Chrome
Delete the Tab Manager v2.app or whatever .app you have.
Open Chrome and the extension page
Create a new app

image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/e8124f32-5aa7-4beb-ab77-f993dd1075d0
image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/443f3dba-9f03-42a9-a1e5-9697f7649ea7
The first time open the new app might cause Chrome to frozen but force
close it and reopen will solve it.
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1936247777,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LKS73EK4PGFV3TQWUDYSZGVFAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZWGI2DONZXG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

I have noticed that the same issue is happening with a competitor product
called tabmanager.io
On Wed, Feb 14, 2024 at 9:00 PM Matthew Greer @.***> wrote:

Still crashes when I try to move a tab from one group to another...
On Wed, Feb 14, 2024 at 5:02 PM Matthew Greer @.***> wrote:

It worked!  Thanks!
On Fri, Feb 9, 2024 at 11:41 AM xcv58 @.***> wrote:

These steps work for me:

Close all tabs and Chrome
Delete the Tab Manager v2.app or whatever .app you have.
Open Chrome and the extension page
Create a new app

image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/e8124f32-5aa7-4beb-ab77-f993dd1075d0
image.png (view on web)
https://github.com/xcv58/Tab-Manager-v2/assets/503123/443f3dba-9f03-42a9-a1e5-9697f7649ea7
The first time open the new app might cause Chrome to frozen but force
close it and reopen will solve it.
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1936247777,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LKS73EK4PGFV3TQWUDYSZGVFAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZWGI2DONZXG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

I believe this is a bug in Chrome since the same function worked before while the code wasn't changed.

Yes but what’s strange is that it crashes just the tab window, not the
chrome windows
On Thu, Feb 15, 2024 at 10:30 PM xcv58 @.***> wrote:

I believe this is a bug in Chrome since the same function worked before
while the code wasn't changed.
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1947702096,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LMPNTEWVUQC6ANYJZ3YT3HD3AVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBXG4YDEMBZGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

I understand that it may be a chrome bug.
Is there anything that can be done?
On Thu, Feb 15, 2024 at 11:00 PM Matthew Greer @.***> wrote:

Yes but what’s strange is that it crashes just the tab window, not the
chrome windows
On Thu, Feb 15, 2024 at 10:30 PM xcv58 @.***> wrote:

I believe this is a bug in Chrome since the same function worked before
while the code wasn't changed.
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1947702096,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LMPNTEWVUQC6ANYJZ3YT3HD3AVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBXG4YDEMBZGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

I understand that it may be a chrome bug. Is there anything that can be done?

I think it's difficult to fix this specific bug directly. And I'm curious what's your use case to make it as standalone window?
I usually use the shortcut (Command+T) to get the extension window, you can set it to global so that it will show up regardless you are in Chrome:
chrome://extensions/shortcuts

And you can change the default shortcut as well. Will this solve your problem?

Wait, why does one work and the other doesn't work?  What is the difference between them?

The one that works is the chrome built-in popup window. The broken one is the macOS "app" which was created by Chrome but it actually has the .app files in the disk. I guess there might be an issue of communication between chrome browser and the "app" version.

I just like to reboot and have the standalone window be maximized.  Is this not possible?

As I mentioned above, you can technically use the Ctrl+T (or whatever you set) shortcut to get the popup window (it is standalone but just doesn't have the Dock icon). You can maximize the window and it should always be there. I could add an option to let it always maximize by itself if you'd like. But it seems the dock icon approach is doomed.

So you tried to fix the app bug but it is something in the new chrome code?
On Tue, Feb 20, 2024 at 8:13 PM xcv58 @.***> wrote:

Wait, why does one work and the other doesn't work? What is the difference
between them?
The one that works is the chrome built-in popup window. The broken one is
the macOS "app" which was created by Chrome but it actually has the .app
files in the disk. I guess there might be an issue of communication between
chrome browser and the "app" version.
I just like to reboot and have the standalone window be maximized. Is this
not possible?
As I mentioned above, you can technically use the Ctrl+T (or whatever you
set) shortcut to get the popup window (it is standalone but just doesn't
have the Dock icon). You can maximize the window and it should always be
there. I could add an option to let it always maximize by itself if you'd
like. But it seems the dock icon approach is doomed.
—
Reply to this email directly, view it on GitHub
https://github.com/xcv58/Tab-Manager-v2/issues/2289#issuecomment-1955635468,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AR6K5LMPHE55CCEZA5N4CETYUVC4RAVCNFSM6AAAAAAUPCV5KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJVGYZTKNBWHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

I did try to fix the bug but could not find a clue. I guess it's something in the new chrome version but not 100% sure.


Feature/dev 273 renamings

Rename old safe-push-service repo to safe-notification-service

Pull Request Test Coverage Report for Build 210

22 of 22 (100.0%) changed or added relevant lines in 15 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 89.078%

Totals

Change from base Build 202:
0.0%

Covered Lines:
734

Relevant Lines:
824

💛  - Coveralls


Alert utility example

Description
Provides an example module (alert_util.py) that provides a CLI to summarize Alerts using the SDK
Issues Resolved
[List any issues this PR will resolve. e.g., Fixes #01]
Check List

[NA - example only ] New functionality includes testing.

[NA - example only ] All tests pass for Python 2.7+ & 3.4+($ tox).

[NA ] New functionality has been documented in the README if applicable.

[NA ] New functionality has been thoroughly documented in the examples (please include helpful comments).
[NA ] New endpoints supported are updated in the endpoints-support.md file.

[ NA] Changes are documented in the CHANGELOG.

Hi folks, my build failed in Travis with the following that I am not sure what to do about...
Can anyone help me with this?  thank you in advance!
$ pyenv global system 3.6
pyenv: version `3.6' not installed
The command "pyenv global system 3.6" failed and exited with 1 during .

found this.  https://travis-ci.community/t/error-pyenv-version-3-6-not-installed-since-a-week/1400
any chance someone with access to the build env could check into it?  thank you!

@russellnelsonbriggs, Thank you for your contribution.
Let me try to fix this build issue.

@russellnelsonbriggs, This issue has been fixed in PR #448 .
Now you can update your branch with the latest changes and push it.

Thank you sir!


Create a Terms of Use page

[x] Create the template
[ ] Obtain and include the copy
[x] Make the link in the footer live

This page has been created and link to from the footer


crypto-js has problem with asynstorage

i want to encrypt every thing that save in asynstorage so i have 2 method frist for storing data and second for  getting that i write them blow
async function get(key) {
    try {
        const value = await AsyncStorage.getItem(key);
        console.log(value+ " in get  "+key);
        if (value!=null) {
            const orgintext =  CryptoJS.AES.decrypt(value, key).toString(CryptoJS.enc.Utf8);
            console.log(orgintext);
            return orgintext;
        }else
            return value

    } catch (error) {
        console.error(error);
        return null;
    }
};
const _storeData = async (key, item) => {
    startLoading();
    try {
        console.log(item+" in store "+key);
        const encryptedText= CryptoJS.AES.encrypt(item, key).toString();
        console.log("setitem",encryptedText);

        await AsyncStorage.setItem(key, encryptedText);
    } catch (error) {
        // Error saving data
    }
};

but when i get stored encrypted text in asyncstorage its different with that stored in async
for example
this is encrypted text: U2FsdGVkX19mETTpoMNW66BOgAJatyPChDKJpsXKctUYrGn76Ki75iXerkybIBS97dH80NQT2Kz3/zZ1CMgylAge3cImSICrpoyV8IAHcLU=
this is same item that get by asyncstorage.getItem("key"):U2FsdGVkX1+3JoSYXp78xCP6CUM8LcqPoj4IT+tqFaM=
they are diffrent so my decrypt doesnt work :(((
please help me
react-native = 0.59.8
asyncstorage(from comunity) =1.6.2
crypto-js = 1.9
android platform

no body solved this problem ?

@sootood I can't reproduce it myself - I can store your hash and read it correctly.
Can you provide a repro project? That'd be helpful to see what's wrong

@sootood any update on this?

Closing due to inactivity. Please reopen with a repro if you still see this issue.


Maintain translations for each emoji (l10n)

Coming from https://github.com/missive/emoji-mart/issues/303, I think you should provide translations for each emoji/maintain these somehow.
The reasons and objectives for downstream projects using this are listed in https://github.com/missive/emoji-mart/issues/303.

Actually, these are included in the CLDR (even for keywords), so you could just take them… :smiley:

+1 to find a way to translate emojis (apart from categories)

I'm working on a similar solution here: https://github.com/milesj/emojibase/pull/64


tools/check-py3: Speed up and add --find-fixers.

Now tools/check-py3 will by default run all fixers together.
This is quicker but doesn't tell which fixers caused failure.
The newly added option --find-fixers falls back to the old way of checking each fixer separately if the quick check fails.
Fixes #710.

Awesome, thanks @sharmaeklavya2!  Merged.


How to Refresh and changed it's complexity

Type of issue
[ ] Bug
[ ] Question (e.g. about handling/usage)
[ ] Request for new feature/improvement
Expected Behavior

Current Behavior

Possible Solution (optional)

Steps to Reproduce (for bugs)

Your Environment

Hi @chancezheng ,
can you please give more details? The purpose/reason for this issue is unclear to me.


Unable to import the project into Unity

Hi
I downloaded the zip file of the project from repository. I am unable to import into latest version of Unity(5.3.1). I am getting path error.

Hey, sorry about that. What's the exact error message?

Thank you for your prompt reply.
This is the error I got.

tl;dr: download the new zip, and then 'force quit' once and reopen.
I tried changing a few things, and there is good news and bad news (and bonus news).
Bad news: Try as I may, the error doesn't seem to go away. It now complains about a different file.
Good news: For me, the error only shows up once now. That is, if you press 'Force Quit' the first time you see the error, and reopen Unity and the project, it should import successfully. Subsequent opens work fine on my system now. Let me know if that doesn't work for you, and I'll try something else.
Bonus news: I've checked in the long-pending refactor of the code. The previous version was a complete mess and a pain to read and understand. The new version is hopefully a little easier to understand and start messing with.

Ok. Thanks. I will try and let you know.

It worked as you suggested. Thanks for the help.


$unset not allowed on fields not in schema

Collection2 causes an update to fail if the update contains a $unset modifier that references a field that is not in the schema.
This is annoying when the schema has changed and was unexpected to me.

Pretty sure this was fixed a long time ago in simple-schema package. Make sure your app is pulling in the latest simple-schema version.

I have collection2 version 2.10.0 and simple-schema 1.5.3 but still have the problem.

+1


md-button-toggle-group, can only set value through child

I'm not sure if this was intended, however I was trying to set the value of a md-button-toggle-group via a reference and discovered that a md-button-toggle-group will only be exposed as an ElementRef
and thus setting it's value is not possible.  The md-button-toggle, however; will be exposed as an MdButtonToggle, thus it allows access to its group and setting the group value.
@ViewChild('toggleButton') toggleButton: MdButtonToggle;
@ViewChild('toggleGroup') toggleGroup: MdButtonToggleGroup;
What is the expected behavior?
@ViewChild('toggleGroup') toggleGroup: MdButtonToggleGroup; should provide a reference to the MdButtonToggleGroup and allow its value to be set.
this.toggleGroup.value = 'swanky'; // <- does not work
What is the current behavior?
MdButtonToggleGroup is only accessible through a child MdButtonToggle.
this.toggleButton.buttonToggleGroup.value = 'swanky'; // <- this works
What is the use-case or motivation for changing an existing behavior?
If the UI is updated and the md-button-toggle-group value does not match.
Which versions of Angular, Material, OS, browsers are affected?
Angular 2 rc5, Material 2 alpha 7-4, Windows 10, chrome.

In your template you just have to put
<md-toggle-group #toggleGroup="mdButtonToggleGroup">

And the @ViewChild will give you the correct thing.

I have a similar problem (Material 2.0.0-beta.1). Using ViewChild, the toggle group is always undefined (in the AfterViewInit hook):
<md-button-toggle-group #alignment="mdButtonToggleGroup" (change)="changeAlignment($event)">
   <md-button-toggle value="top">
      <md-icon>vertical_align_top</md-icon>
   </md-button-toggle>
   <md-button-toggle value="center">
      <md-icon>vertical_align_center</md-icon>
   </md-button-toggle>
   <md-button-toggle value="bottom">
      <md-icon>vertical_align_bottom</md-icon>
   </md-button-toggle>
</md-button-toggle-group>

and
 @ViewChild('alignment') alignment:MdButtonToggleGroup;


Issue #SC-1072 feat: Analytics API play framework upgrade to 2.7.2

 Here is an overview of what got changed by this pull request:

Issues
======
+ Solved 35
- Added 88

Complexity increasing per file
==============================
- platform-api/analytics-api-core/src/main/scala/org/ekstep/analytics/api/service/CacheRefreshActor.scala  2
- platform-modules/batch-models/src/main/scala/org/ekstep/analytics/util/HDFSFileUtils.scala  5
- platform-modules/batch-models/src/main/scala/org/ekstep/analytics/job/BaseReportsJob.scala  3
- platform-modules/batch-models/src/main/scala/org/ekstep/analytics/job/StateAdminReportJob.scala  4
- platform-modules/batch-models/src/main/scala/org/ekstep/analytics/job/JobFactory.scala  1
- platform-api/analytics-api-core/src/main/scala/org/ekstep/analytics/api/service/HealthCheckAPIService.scala  3
- platform-api/analytics-api/app/controllers/JobController.scala  1
- platform-api/analytics-api-core/src/main/scala/org/ekstep/analytics/api/util/H2DBUtil.scala  3

Complexity decreasing per file
==============================
+ platform-api/analytics-api/app/filter/RequestInterceptor.scala  -1
+ platform-api/analytics-api/app/controllers/Application.scala  -1

See the complete overview on Codacy


DOC: changelog

I'm debugging the downstream gcsfs failures in gcsfs itself, https://github.com/dask/gcsfs/pull/202


(default,never) -> This field cannot be initialized because it is not a real variable

Since Haxe 3.3.0 only inline or read-only (default, never) fields can be used as a pattern - so I need to declare them with (default,never):
public static var V_2 (default,never) : String = "v2";
But this will be marked as an error with the message: "This field cannot be initialized because it is not a real variable", The code compiles just fine. It's a cosmetic thing but would be nice to get fixed. :)
Her a little screenshot for clarification:

To fix this, the method isRealVar in HaxeFieldModel.java can be chaged like below:
  public boolean isRealVar() {
    if (this.getModifiers().hasModifier(HaxeModifierType.IS_VAR)) return true;
    if (!isProperty()) return true;
    if (getGetterType() == HaxeAccessorType.NULL || getGetterType() == HaxeAccessorType.DEFAULT) {
      return true;
    }
    return false;
  }


Using mouse to select text closes the popup

I often just want to copy text to the clipboard, rather than write to a file. After dragging the mouse over some text to select it in the popup window, it closes.

Just to clarify, you mean selecting text within the popup itself, right?
If so, what browser are you using? I can't see this happening on my end in firefox, nor chromium browsers...


Add fromListBy, to create Dicts from Lists and a key function

This adds a nice little function I've found to particularly be useful when creating a Dict of records by their id property, or similar – see the example in the docs :)

Thank you!


Problem with NULL data in SVGTypographicGlyph.js

It my Fix

if glyph element don't have d attribute we have error

Thank you @KiborgMaster
I will try to manage some time to merge this. In the meanwhile, feel free to report and propose other fixes


npm install dcipher error

Closing due to inactivity. Feel free to re-open this issue if you are still experiencing a problem. Thanks!


Remote HTML Input elements with Turbo

Currently, Turbo Drive takes care of links and forms. But Rails UJS also had the ability to request the server based on the change event of HTML input elements. Are there any plans to add this feature to Turbo Drive as well?

No. Would recommend you use Stimulus for that 👍


Upgrade upb to 0e0de7d9

third_party/upb has been modified not in a regular import process so it has to be reimported.
xds_type_upbdefs is updated to have xds_type_upb dependency since upbdef targets explictly rely on its corresponding upb target.

This needs an interlocked import with cl/388567218

grpc_build_artifacts_multiplatform: running


Use a Term-like interface instead of Expr

It would be good if Metatheory worked on types with some kind of common interface. Any type can say -- this is how you destructure this as a term, and this is how to put parts of a new term back into my type, now go and apply some rules on it.
We have an interface like this in SymbolicUtils.jl https://symbolicutils.juliasymbolics.org/interface/ it's basically istree, operation, arguments, similarterm, and other optional items. I plan to add issym so that Sym is not the only thing representing an "unknown".
Further, it would be nice to factor out the interface into an "ExpressionBase" package and use that.

This would definitely make our lives on Catlab easier if these Term-like data structures supported type information. Having a context(t::Term)::Context which told you the free variable and their types and type(t::Term)::Term which gave you a term-like structure representing the type of the term would be necessary for our GATExprs.  We would want the type of a term that represents a function to be its signature type(f: X--> Y) == Arrow(X,Y) and the context would be like a Dict{Symbol, Term} mapping the free variables of the term to the type the variable lives in. In order to represent higher order functions like map(f, X) you need the types to be terms too. context(map(f, X)) = Dict(:f=>Arrow(X,Y), :X=>List) or something like that.

@jpfairbanks I think what you mean by context (also useful for the other turnstile problem) could be formulated as an EGraph analysis. What @shashi meant was maybe an interface for treating other types as "function call exprs" and inserting them into the EGraph.

We're getting there! Adding a metadata::Any field to ENodes to store any additional value which is not "default" stuff that goes in an Expr like head and args. Thinking about adding a sourcetype::Type field to also tell where this enode came from, useful for re-extracting Terms from ENodes

We're there. It works! Please @shashi @jpfairbanks try in the latest commit to see if you like this interface. It is defined (by now) in src/TermInterface.jl, the methods to implement, in module TermInterface are:
gethead(e::Expr) = isexpr(e, :call) ? e.args[1] : e.head
getargs(e::Expr) = e.args[(isexpr(e, :call) ? 2 : 1):end]
istree(e::Expr) = true
getmetadata(e::Expr) = (iscall=isexpr(e, :call),)

Metadata can be anything but I strongly suggest it to be a namedtuple instead of a Dict bc of performance (can have up millions of enodes in an egraph and Dicts are not so performant at this scale).
The last method you need to implement, in module EGraphs, is extractnode. You do not need to worry about what extractor does. It is a sort of complicated mutually recursive call to the rest of the enode extraction code. You just need to call it on the children e-class ids of the ENode.
Replace Expr here with the type you want to plug into the egraph and have fun :rocket:
function extractnode(t::Type{Expr}, n::ENode, extractor::Function)::Expr
    expr_args = []
    expr_head = n.head

    if n.metadata.iscall
        push!(expr_args, n.head)
        expr_head = :call
    end

    for a ∈ n.args
        push!(expr_args, extractor(a))
    end

    return Expr(expr_head, expr_args...)
end

NOTE: equivalence between enodes, is defined (by AutoHashEquals.jl) also on metadata. Two equal enodes but with different metadata are considered equal.

That's looking pretty good!
What's the way to construct terms that are not Expr when rewriting? we have similarterm -- this was the key part of the interface that let us decouple representation and rules.
For metadata we wanted to allow different packages to use their own metadata without interfering with other packages. So we allow the use of "context types"
The interface would be
hasmetadata(x, MyCtxType)
getmetadata(x, MyCtxType)
setmetadata(x, MyCtxType, val)

See https://github.com/JuliaSymbolics/SymbolicUtils.jl/pull/215
Also, just a tip, we made sure that its performance is better than having an ::Any field by making it be a parameterized type T<:Union{Nothing, ImmutableDict{DataType,Any}}. This does not lead to extra allocs than before if you don't have any metadata.

In Symutils we don't use metadata for equality...

It may be useful to have additional data that is used to check equality. The pattern matcher is not yet really aware of metadata of terms, but it is aware of custom values and types. Maybe having two fields metadata and weakmeta ?

If you want to allow different modules to attach metadata without knowing about each other, they would have to implement and use their own equality checks... Or maybe you could standardize isequal(x, y, MyContextType). And could specify the equality context somehow in the rules DSL.

@shashi I'm implementing your suggested metadata system on EClass-es.

Here's an example of how it works by now. @shashi @jpfairbanks
using Metatheory
using Metatheory.EGraphs
using Test
using AutoHashEquals

@metatheory_init ()

struct MyExpr
    head::Any
    # NOTE! this will not work, when replacing
    # with z in the theory defined below, the arg type
    # will be EGraphs.EClass! Additional manipulation
    # is needed for custom term types with stricter arg types
    # args::Vector{Union{Int, MyExpr}}
    args::Vector{Union{Int, MyExpr, EClass}}
    # additional metadata
    foo::String
    bar::Vector{Complex}
    baz::Set{Int}
end

import Base.(==)
(==)(a::MyExpr, b::MyExpr) = a.head == b.head && a.args == b.args &&
    a.foo == b.foo && a.bar == b.bar && a.baz == b.baz

MyExpr(head, args) = MyExpr(head, args, "", Complex[], Set{Int}())
MyExpr(head) = MyExpr(head, [])

# Methods needed by `src/TermInterface.jl`
TermInterface.gethead(e::MyExpr) = e.head
TermInterface.getargs(e::MyExpr) = e.args
TermInterface.istree(e::MyExpr) = true
# NamedTuple
TermInterface.getmetadata(e::MyExpr) = (foo=e.foo, bar=e.bar, baz=e.baz)
TermInterface.preprocess(e::MyExpr) = MyExpr(e.head, e.args, uppercase(e.foo), e.bar, e.baz)

# f(g(2), h(4)) with some metadata in h
hcall = MyExpr(:h, [4], "hello", [2+3im, 4+2im], Set{Int}([4,5,6]))
ex = MyExpr(:f, [MyExpr(:g, [2]), hcall])

# let's create an egraph
g = EGraph(ex)

# let's create an example theory
t = @theory begin
    # this way, z will be a regular expr
    # f(g(2), a) => z(a)
    # we can use dynamic rules to construct values of type MyExpr
    f(g(2), a) |> MyExpr(:z, [a])
end

saturate!(g, t; mod=@__MODULE__)

# Define an extraction method dispatching on MyExpr
function EGraphs.extractnode(n::ENode{MyExpr}, extractor::Function)
    (foo, bar, baz) = n.metadata
    # extracted arguments
    ret_args = []

    for a ∈ n.args
        push!(ret_args, extractor(a))
    end

    return MyExpr(n.head, ret_args, foo, bar, baz)
end

expected = MyExpr(:z, Any[MyExpr(:h, Any[4], "hello", Complex[2 + 3im, 4 + 2im], Set([5, 4, 6]))], "", Complex[], Set{Int64}())
@test extract!(g, astsize) == expected

See also https://github.com/0x0f0f0f/Metatheory.jl/blob/master/test/test_custom_types.jl

I think we're there!!


Added the FAQ section

Fix #145
I have added a FAQ section with a CSS aligning to the rest of the page. I would request you to merge this with the Hacktoberfest label.

@Adil-Khan-N FAQ do exist. Find another issue or feature to contribute to. Thank you!


Add shard documentation

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

Project coverage is 100.00%. Comparing base (3ce392b) to head (d882572).

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #110   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           68        68
  Lines         1354      1354
  Branches       101       101
=========================================
  Hits          1354      1354

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