feat: add send to slack support

As discussed in #73, this is a separate PR to add send to Slack support.

As a general direction here we should pass a client set to the functions instead of a kubeconfig.
That way we can check if we are in cluster before and either create the clientset from the service account or from the kubeconfig

As a general direction here we should pass a client set to the functions instead of a kubeconfig. That way we can check if we are in cluster before and either create the clientset from the service account or from the kubeconfig

@yonahd I didn't quite understand your idea. I created 2 separate handlers for InCluster and KubeConfig configurations.
I create the clientset from those handlers and I let GetKubeClient handle which one to use. And kubeconfig file is only sent to KubeConfigClient which needs it to create the client.
Could you explain your idea when looking into those 3 functions? KubeConfigClient, InClusterConfigClient and GetKubeClient

As a general direction here we should pass a client set to the functions instead of a kubeconfig. That way we can check if we are in cluster before and either create the clientset from the service account or from the kubeconfig

@yonahd I didn't quite understand your idea. I created 2 separate handlers for InCluster and KubeConfig configurations. I create the clientset from those handlers and I let GetKubeClient handle which one to use. And kubeconfig file is only sent to KubeConfigClient which needs it to create the client.
Could you explain your idea when looking into those 3 functions? KubeConfigClient, InClusterConfigClient and GetKubeClient

I don't want to limit any of the functions to only be in cluster or only out of cluster. That's why I want to create the separation of kubeconfig vs service account earlier and regardless pass a clientset to the functions.

As a general direction here we should pass a client set to the functions instead of a kubeconfig. That way we can check if we are in cluster before and either create the clientset from the service account or from the kubeconfig

@yonahd I didn't quite understand your idea. I created 2 separate handlers for InCluster and KubeConfig configurations. I create the clientset from those handlers and I let GetKubeClient handle which one to use. And kubeconfig file is only sent to KubeConfigClient which needs it to create the client.
Could you explain your idea when looking into those 3 functions? KubeConfigClient, InClusterConfigClient and GetKubeClient

I don't want to limit any of the functions to only be in cluster or only out of cluster. That's why I want to create the separation of kubeconfig vs service account earlier and regardless pass a clientset to the functions.

I think I got your idea. But still thinking on how to control that. I mean, when it should authenticate with kubeconfig or when to use rest.InClusterConfig().
What do you think of sending a flag when it should authenticate from inside the cluster, e.g. kor all --in-cluster-auth?
With that it could be could be hard coded inside the helm template for CronJob and also in the future for Deployments. e.g. args: ["{{ .Values.cronJob.korCommand }} --in-cluster-auth --slack-channel {{ .Values.cronJob.slackChannel }} --slack-auth-token {{ .Values.cronJob.slackAuthToken }}"]

We can try something like this
func GetKubeClient(kubeconfig string) *kubernetes.Clientset {
	if _, err := os.Stat("/var/run/secrets/kubernetes.io/serviceaccount/token"); err == nil {
		config, err := rest.InClusterConfig()
		if err != nil {
			fmt.Fprintf(os.Stderr, "Failed to load kubeconfig: %v\n", err)
			os.Exit(1)
		}

		clientset, err := kubernetes.NewForConfig(config)
		if err != nil {
			fmt.Fprintf(os.Stderr, "Failed to create Kubernetes client: %v\n", err)
			os.Exit(1)
		}
		return clientset
	}
	if kubeconfig == "" {
		if configEnv := os.Getenv("KUBECONFIG"); configEnv != "" {
			kubeconfig = configEnv
		} else {
			kubeconfig = GetKubeConfigPath()
		}
	}
	config, err := clientcmd.BuildConfigFromFlags("", kubeconfig)
	if err != nil {
		fmt.Fprintf(os.Stderr, "Failed to load kubeconfig: %v\n", err)
		os.Exit(1)
	}

	clientset, err := kubernetes.NewForConfig(config)
	if err != nil {
		fmt.Fprintf(os.Stderr, "Failed to create Kubernetes client: %v\n", err)
		os.Exit(1)
	}
	return clientset
}

and in the command we can do e.g.
var configmapCmd = &cobra.Command{
	Use:     "configmap",
	Aliases: []string{"cm"},
	Short:   "Gets unused configmaps",
	Args:    cobra.ExactArgs(0),
	Run: func(cmd *cobra.Command, args []string) {
		clientset := kor.GetKubeClient(kubeconfig)
		if outputFormat == "json" || outputFormat == "yaml" {
			if response, err := kor.GetUnusedConfigmapsStructured(includeExcludeLists, clientset, outputFormat); err != nil {
				fmt.Println(err)
			} else {
				fmt.Println(response)
			}
		} else {
			kor.GetUnusedConfigmaps(includeExcludeLists, clientset)
		}

	},
}

We can try something like this
func GetKubeClient(kubeconfig string) *kubernetes.Clientset {
	if _, err := os.Stat("/var/run/secrets/kubernetes.io/serviceaccount/token"); err == nil {
		config, err := rest.InClusterConfig()
		if err != nil {
			fmt.Fprintf(os.Stderr, "Failed to load kubeconfig: %v\n", err)
			os.Exit(1)
		}

		clientset, err := kubernetes.NewForConfig(config)
		if err != nil {
			fmt.Fprintf(os.Stderr, "Failed to create Kubernetes client: %v\n", err)
			os.Exit(1)
		}
		return clientset
	}
	if kubeconfig == "" {
		if configEnv := os.Getenv("KUBECONFIG"); configEnv != "" {
			kubeconfig = configEnv
		} else {
			kubeconfig = GetKubeConfigPath()
		}
	}
	config, err := clientcmd.BuildConfigFromFlags("", kubeconfig)
	if err != nil {
		fmt.Fprintf(os.Stderr, "Failed to load kubeconfig: %v\n", err)
		os.Exit(1)
	}

	clientset, err := kubernetes.NewForConfig(config)
	if err != nil {
		fmt.Fprintf(os.Stderr, "Failed to create Kubernetes client: %v\n", err)
		os.Exit(1)
	}
	return clientset
}

and in the command we can do e.g.
var configmapCmd = &cobra.Command{
	Use:     "configmap",
	Aliases: []string{"cm"},
	Short:   "Gets unused configmaps",
	Args:    cobra.ExactArgs(0),
	Run: func(cmd *cobra.Command, args []string) {
		clientset := kor.GetKubeClient(kubeconfig)
		if outputFormat == "json" || outputFormat == "yaml" {
			if response, err := kor.GetUnusedConfigmapsStructured(includeExcludeLists, clientset, outputFormat); err != nil {
				fmt.Println(err)
			} else {
				fmt.Println(response)
			}
		} else {
			kor.GetUnusedConfigmaps(includeExcludeLists, clientset)
		}

	},
}

Agreed and done. Let me know if you need to change something.

Perfect!
Don't want to inconvenience you too much, but can we separate the slack part to a different MR?

Perfect! Don't want to inconvenience you too much, but can we separate the slack part to a different MR? This MR would close #75 And I'll open a different ticket for Slack messages(I think we can combine some of the functions). In addition We can have the slack reports also out of the cluster

Sure. I can split it in two.
What do you mean by having slack report out of the cluster? I mean it already works out of the cluster also.

Perfect! Don't want to inconvenience you too much, but can we separate the slack part to a different MR? This MR would close #75 And I'll open a different ticket for Slack messages(I think we can combine some of the functions). In addition We can have the slack reports also out of the cluster

Sure. I can split it in two. What do you mean by having slack report out of the cluster? I mean it already works out of the cluster also.

My mistake.
Now though it can be a condition in the regular function.

Codecov Report
Patch coverage: 6.35% and project coverage change: -11.35% :warning:

Comparison is base (f3235b0) 49.36% compared to head (a217e51) 38.01%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main      #77       +/-   ##
===========================================
- Coverage   49.36%   38.01%   -11.35%
===========================================
  Files          15       16        +1
  Lines        1493     2028      +535
===========================================
+ Hits          737      771       +34
- Misses        657     1147      +490
- Partials       99      110       +11

Files Changed
Coverage Δ

pkg/kor/all.go
0.00% <0.00%> (ø)

pkg/kor/confimgmaps.go
47.43% <0.00%> (-14.24%)
:arrow_down:

pkg/kor/deployments.go
25.58% <0.00%> (-18.42%)
:arrow_down:

pkg/kor/hpas.go
32.28% <0.00%> (-12.78%)
:arrow_down:

pkg/kor/ingresses.go
40.62% <0.00%> (-15.90%)
:arrow_down:

pkg/kor/pdbs.go
29.12% <0.00%> (-15.65%)
:arrow_down:

pkg/kor/pvc.go
31.73% <0.00%> (-16.80%)
:arrow_down:

pkg/kor/roles.go
34.23% <0.00%> (-16.44%)
:arrow_down:

pkg/kor/secrets.go
50.62% <0.00%> (-14.70%)
:arrow_down:

pkg/kor/serviceaccounts.go
44.37% <0.00%> (-12.89%)
:arrow_down:

... and 3 more

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

I'd like to condense the slack functions to be part of the GetUnusedHpas function.
Can we make the slack parameters optional and based on the users sent parameters decide if we are sending to slack(and whether it's a file or webhook)?

I'd like to condense the slack functions to be part of the GetUnusedHpas function. Can we make the slack parameters optional and based on the users sent parameters decide if we are sending to slack(and whether it's a file or webhook)?

I'd like to condense the slack functions to be part of the GetUnusedHpas function. Can we make the slack parameters optional and based on the users sent parameters decide if we are sending to slack(and whether it's a file or webhook)?

alright, give me some time to take a look at that.

@patricktalmeida Is this ready for review?

@patricktalmeida Is this ready for review?

Yes it is.

FYI I also opened this.
https://github.com/yonahd/kor/issues/91
We might have to make a small refactor in the code to support it in Helm properly

FYI I also opened this. #91 We might have to make a small refactor in the code to support it in Helm properly

I'm gonna look into that.

Overall looks good. If you can add a screenshot from slack to images(otherwise I'll do it) Also there is the Readme updates which you can optionally do

Well, I believe it would be better if you added it. The cluster I'm testing on has sensitive data.


iOS Mifare Classic 1k

I am unable to read Mifare classic cards on ios. Is there a way to read just the records from the card?

Reading Mifare Classic 1k is not supported by iOS in general (not a limitation by this package)

https://www.nxp.com/products/wireless-connectivity/nfc-hf/nfc-with-ios-13-:NFC_IOS_13#resources

https://developer.apple.com/documentation/corenfc/nfcmifaretag


Be able to track when LanguageStatusItem is pinned

Hi,
I'm working on integrating the LanguageStatusItem into my teams language extension and we'd like to be able to tell when an item has been pinned to the status bar (preferably with an Event).
Our immediate goals are to:

get notification when an item is pinned or unpinned
be able to alter the text of the item when (un)pinned (similar to #165940 )
programmatically indicate whether an item should be pinned by default

It would be great if there was an accessible Event field to use or some other kind of callback setup.
FYI: @alexandrakemperms @Colengms @bobbrow

I talked with @isidorn about this a little while ago and I think to address our immediate needs, adding a property for "pinnedText" would be more advantageous than an event.  We want the text in the flyout to be different from the text in the status bar because the flyout is by design is more verbose than a status bar item should be.
An event that tells us when something is pinned doesn't help us solve that problem because if we change the singular text property to make the status bar item look nicer, it comes at the cost of the flyout item now not having the verbosity/context that a user would expect since pinning an item does not remove it from the flyout.
Allowing us to specify a default pinned status for some items would also be nice, but is lower in priority than getting a "pinnedText" property on the language status item.

folding this into https://github.com/microsoft/vscode/issues/165940

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


notes about upgrading

As requested, some documentation about upgrade tasks carried out when upgrading from 3.3 to 3.4.
If ok, then this PR needs a backport to 3.4 and probably 3.3 (if you think it makes sense).

thanks jan
low priority and as an improvement we may mention that those tasks will happen when we do an "In-Place" upgrade (this is the term that we use in https://docs.arangodb.com/3.4/Manual/Upgrading/GeneralInfo/) and add the links to arangosearch and the new geo index, when we mention them - @Simran-B WDYT?

http://jenkins01.arangodb.biz:8080/view/Documentation/job/arangodb-documentation/148/
@sleto-it Please check my additions
@jsteemann I don't see why it should be backported to 3.3 if it's about upgrading to 3.4? Maybe a warning about downgrading (it's not supported or is it)?


osbuild in Fedora 32 depends on both Python 3.6 and Python 3.8

$ rpm -q osbuild --requires
/usr/bin/python3
/usr/bin/python3.6
...

$ rpm -q python3-osbuild --requires
python(abi) = 3.8
python3.8dist(setuptools)
...

We use /usr/bin/python3.6 shebangs in rhel runners. I guess %{?python_enable_dependency_generator} takes that and adds a dependency to python 3.6.

Fixed in #299


Add book

https://www.goodreads.com/book/show/7268380-your-money
Your Money: The missing manual is a book on personal financing. It has lots of great information and links to other sources. Definitely a book worth reading and it is especially helpful for adults who are going to be out on their own financially, or for anyone who wants to fill in the blanks in their financial education
By submitting this pull request I confirm I've read and complied with the below requirements.
Failure to properly do so will just result in the pull request being closed and everyone's time wasted. Please read it twice. Most people miss many things.

[X] I have read the Contribution guidelines and I am confident that my PR is suitable.
[X] This pull request has a descriptive title. To add a new resource use the title: Add [resource_name]
[X] The resource link I added is not a duplicate.

Hey, @djsbalakrishnan please edit the PR template. Thanks for the contribution 👍

Thank you @mr-karan updated the PR.


feat: add app router example on readme.md

Hey @tomassabol, the only change was on the appRouter import? I believe it's okay not to be 100% accurate because the appRouter location could change depending on where the user puts it.

Yes, the import is individual. The main thing I changed is the export, and export types.

@itelo @tomassabol anyone get {"name":"TRPCClientError"} error when trying to make a query or mutation?

@itelo @tomassabol anyone get {"name":"TRPCClientError"} error when trying to make a query or mutation?

Unfortunately yes. I am getting this error on every endpoint using this implementation, but when I tried using this experimental repo, it worked flawlessly

ok thanks for letting me know

Im probably gonna just wait until they support the app router lol and keep using the first implementation for now


ClippedCamera does not work

The engine version is latest master.
ClippedCamera always display picture oriented from parent node. Changes to y value do something but not much. Can't maintain some distance. The setup is minimal - light source, a sphere as a parent and ClippedCamera. Looks like it considers itself as colliding even though there is nothing to be collided with.

It does not work on stable either, that or it need some special undocumented setup to work as it is supposed to.


Add support for namespaces

Allow using it for port forwarding from pods in the namespaces that differ from default

Thanks!
This PR makes namespace required option and we don't know it in advance (the one from the current context).  There should be a check like if namespace == "" to set the namespace.
Also this breaks API so other progs will break. I think I'll fix them by myself. :)

Ok, you're right. That was just a quick fix for my own needs ;)

thanks!


fix issue with extending native String object for formatting

closes #132

Many thanks!

@jpmckearin Would you be interest in helping me maintain this repo?


current API only allows one class to implement web methods according

to its method names, this is limitting in some cases. With this new
API, a developer can use one class to implement a set of APIs.
The developer can simply add an instance of that class to the app
by calling add_route method. An example of how to do this has been
documented in the ResourceAPI class in resource_api.py module.

Apologies for taking so long to get back to you; I've been trying to decide what approach to take. In 0.3 we made it easier to plug in custom routers, so one approach might be to refactor this router to use  that new interface. I've also proposed an alternative strategy that may work for some use cases and I'd be happy to get your feedback on that as well (see issue #584).

All things considered, I think it would be better to implement this in an add-on library for now.
If you would like to map to arbitrary callables, while still taking advantage of the default CompiledRouter, you could to inherit from falcon.API and create a new method similar to add_route(), but one that takes a single responder callable and an HTTP method in lieu of a resource class. It would update a method map attribute (i.e., self._method_maps), keyed by URI template. For example, after calling the new Api.my_add_route() twice for the same URI template, you would have something like:
{
    '/some_uri_template': {
        'GET': some_get_responder,
        'PUT': some_put_responder,
    }
}

Then you would pass that into the router's add_route() method with a dummy object (or None) for the resource, e.g.:
self._router.add_route(uri_template, self._method_maps[uri_template], None)

Note that subsequent calls to self._router.add_route() will override the previous method map for a given uri_template. Anyway, this approach should work, but caveat emptor since this is just off the top of my head.


Distortion after saving image having transparent pixels in BC1 format

I tried to save PNG image having transparent pixels into different BC formats and found that the image in BC1 format becomes sharper (see test_bc1a.dds).

Compare the following DDS files between themselves and the original image.
dds.zip
BC2, BC3 and BC7 formats support alpha channel so the original image is converted fine.
But even images in BC4 and BC5 formats that don't support transparency are still similar to the original one.
Also after adding to the original image opaque layer in Paint.NET I saved it in BC1 format to show how I expected it supposed to look like.

I think that could just be how the BC1 alpha format works. It only supports alpha value of 0 and 255, so it has to convert the semi-transparent pixels to either fully transparent or fully opaque.
For the BC1 image with an opaque background, paint.net handles the alpha blending and the BC1 encoder sees an image that does not have any transparency.

BC4 and BC5 formats don't support transparency at all. But converted images are still similar to the original one.
P. S. Please read my message carefully.

BC4 and BC5 are not the same compression format as BC1.  I do not have any idea what is going on with your test_bc1a.dds image.
This plugin uses the BC1 encoder from DirectXTex, you should refile your issue in that repository. https://github.com/microsoft/DirectXTex/issues
The DirectXTex developers may have a better idea of what is causing the problem.

Thank you for the pointing. I understand that isn't the plugin related issue. So you may close it.


Can we add support for chai (mocha)?

Audi uses chai.

@ebdrup I guess #13 will not do cover everything right?

@ebdrup this should now be fixed thanks to @ignovak - it's live in v1.4.0, but chai is massive as... I don't even know what. So maybe not everything is covered - let me know ;)


Add option to remove type/value/suit display for player hands/cards.

For game systems that just want to use the card UI to deal with cards as images (without corresponding suit/values), it would be great if there was a UI option to not display the boxes corresponding to suit/value/type when hovering over a card in a hand, since they would always be empty.

Yes, I intend to make it such that if those values don't exist, the boxes just won't appear.

Closed by 04e296ada035bc1404d8702588b2ba9e38607cda


Server Functionality

Hey Luis, has there been any progress towards including a server for Keyhunt?

Do you want the server to record progress? If you have bsgs search installed in random mode, then recording progress is pointless, since the server will have to save all the generated keys. Can you imagine how many terabytes the database will be in a day of work if one key takes about 64 bytes ? 64,000,000,000,000,000 keys will occupy approximately 58207 TByte.

I want it to distribute work and record baby steps completed in sequential mode. if a key is found by one of the clients then it will be reported to the server. every individual key does not need to be recorded.

if the server keeps track of the ranges issued to the workers and records completed ranges only that would be better.

There are<PHONE_NUMBER>92457936451903530140172287 keys in the 120 range.There will be too many subranges.
664,613,997,892,457,936,451,903,530,140,172,287 keys 120bit range
1,000,000,000,000,000,000 keys/s(1 ExaKeys) For example, the speed of your pool.
You need 664,613,997,892,457,936 seconds to scan the full 120 range. People hope for luck in a random search.

im currently getting in the range of ~900 Exakeys/s across my threadrippers using 90% of all their cores, wanted to link them together somehow.

The speed is great, but it won't make much of a difference in time, and it will take you ~21074771 years to get through the full 120 range.

I am about to finish some BSGS server that work on  demand.
Check my dashboard or pendings
https://trello.com/b/GXBPiBCM/keyhunt

Sounds good! if you need any testing done let me know

test if you want
https://github.com/albertobsd/keyhunt/blob/main/BSGSD.md


Add a translation framework to the site

Add next-translate as translation framework.

After dedicating some hours to this issue, we will need to decide what approach we should take since at least now i18n support is not compatible with next export which we are using to export the Next.js application as static.
See:
https://nextjs.org/docs/advanced-features/i18n-routing#how-does-this-work-with-static-generation
https://github.com/vercel/next.js/discussions/18957
https://github.com/vercel/next.js/issues/18318
I've also tried some workarounds like https://github.com/vercel/next.js/issues/18318#issuecomment-724071925 but didn't work either.

This may help? https://dev.to/adrai/static-html-export-with-i18n-compatibility-in-nextjs-8cd


[webview_flutter] Move the method channel behind the platform interface

This is a followup for #1618 and #1624, and moves all of the plugins.flutter.io/webview method channel calls behind the platform channel, which allows a third party package to provide a new platform implementation for all of these methods.
See the description for #1618 for more details.
The last remaining part is the plugins.flutter.io/cookie_manager channel which I'm leaving for a followup PR.

@nkoroste please take a look


Error when trying to brew tap

I am getting the following error when trying to run: brew tap dracula/install
I am running on a Macbook Pro 2021 with Apple M1 pro chip.

Resolving deltas: 100% (1/1), done.
2022-08-30 05:48:52.458 defaults[9066:34850]
The domain/default pair of (com.runningwithcrayons.Alfred-Preferences, syncfolder) does not exist
Error: Invalid cask: /opt/homebrew/Library/Taps/dracula/homebrew-install/Casks/dracula-drafts.rb
Cask 'dracula-drafts' is unreadable: undefined method `/' for nil:NilClass
Error: Cannot tap dracula/install: invalid syntax in tap!
/opt/homebrew/Library/Homebrew/tap.rb:312:in `install'
/opt/homebrew/Library/Homebrew/cmd/tap.rb:65:in `tap'
/opt/homebrew/Library/Homebrew/brew.rb:93:in `<main>'

Same issue on my M1 MacStudio w/ MacOS 12.15.1
brew --version Homebrew 3.5.10 Homebrew/homebrew-core (git revision 510a8caa26c; last commit 2022-09-03) Homebrew/homebrew-cask (git revision d7b9e451b0; last commit 2022-09-04)
ruby --version ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.arm64e-darwin21]
brew tap dracula/install ==> Tapping dracula/install Cloning into '/opt/homebrew/Library/Taps/dracula/homebrew-install'... remote: Enumerating objects: 19, done. remote: Counting objects: 100% (13/13), done. remote: Compressing objects: 100% (12/12), done. remote: Total 19 (delta 1), reused 11 (delta 0), pack-reused 6 Receiving objects: 100% (19/19), 8.77 KiB | 4.39 MiB/s, done. Resolving deltas: 100% (1/1), done. 2022-09-03 13:06:59.621 defaults[37542:11702927]  The domain/default pair of (com.runningwithcrayons.Alfred-Preferences, syncfolder) does not exist Error: Invalid cask: /opt/homebrew/Library/Taps/dracula/homebrew-install/Casks/dracula-drafts.rb Cask 'dracula-drafts' is unreadable: undefined method /' for nil:NilClass
Error: Cannot tap dracula/install: invalid syntax in tap! `

Seems to be a problem on Apple silicon macs… Unfortunately, I don’t currently have access to one! However, I just pushed a potential fix… @alex5517 @mauvehed Please can you test?

Bit better.
➜ ~ brew tap dracula/install Running brew update --auto-update`...
==> Auto-updated Homebrew!
==> Updated Homebrew from 99682c5af to c49f2e8b4.
Updated 2 taps (homebrew/core and homebrew/cask).
==> New Formulae
rome                                                          sambamba
==> New Casks
random-mouse-clicker
You have 15 outdated formulae installed.
You can upgrade them with brew upgrade
or list them with brew outdated.
==> Tapping dracula/install
Cloning into '/opt/homebrew/Library/Taps/dracula/homebrew-install'...
remote: Enumerating objects: 23, done.
remote: Counting objects: 100% (17/17), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 23 (delta 4), reused 15 (delta 3), pack-reused 6
Receiving objects: 100% (23/23), 9.13 KiB | 9.13 MiB/s, done.
Resolving deltas: 100% (4/4), done.
Tapped 1 command and 11 casks (26 files, 31.0KB).`
But fails to install dracula-macos-color-picker
➜ ~ brew install --cask dracula-macos-color-picker ==> Downloading https://github.com/dracula/macos-color-picker/archive/refs/heads/main.zip ==> Downloading from https://codeload.github.com/dracula/macos-color-picker/zip/refs/heads/main ##=O#- # Warning: No checksum defined for cask 'dracula-macos-color-picker', skipping verification. ==> Installing Cask dracula-macos-color-picker /opt/homebrew/Library/Taps/dracula/homebrew-install/cmd/dracula-yaml-json.rb:1:in require': cannot load such file -- active_support/all (LoadError)
from /opt/homebrew/Library/Taps/dracula/homebrew-install/cmd/dracula-yaml-json.rb:1:in <top (required)>' 	from ./generate.command:4:in require'
from ./generate.command:4:in <main>' ==> Purging files for version latest of Cask dracula-macos-color-picker Error: It seems the Generic Artifact source '/opt/homebrew/Caskroom/dracula-macos-color-picker/latest/macos-color-picker-main/Dracula.clr' is not there.


Updated to the Minetest location format #149 and update the Spanish

-Updated to the Minetest location format #149
-Update the Spanish

May I re-work this PR? It's something pending since about a year ago.

May I re-work this PR? It's something pending since about a year ago.

Sure :slightly_smiling_face:

May I re-work this PR? It's something pending since about a year ago.

Sure slightly_smiling_face
I wasn't around much to review this PR when it was origiginally made, apologies.

Ready

Superseded by https://github.com/minetest-mods/moreblocks/pull/186.


Completely remove OSGi Import-Package 'javax.annotation'

As suggested (and I assume also intended) in https://github.com/google/guice/pull/1173 this PR changes the configuration of the maven-bundle-plugin to completely remove the import of the package javax.annotation, which seems not to be required at runtime.
With PR https://github.com/google/guice/pull/1173 respectively https://github.com/google/guice/pull/1697 the OSGi package import of javax.annotation;version="[3.0,4)" was only changed to javax.annotation, i.e. the version range was removed.
@mcculls do you want to have a look at this?
Additionally update to latest maven-bundle-plugin 5.1.8.

Thank you @sameb for the quick review and merge.
Can you tell when the next release of guice that contains this change will approximately be done?

Sure thing!  Thanks for the PR!
My hope is to finish merging outstanding pull requests this week and do a cursory sweep over open issues, fixing anything reasonable.
The biggest barrier to a release is a resolution to #1383.  At this point, I think we mostly need a Maven expert who can advise on how to structure the POMs to allow pushing an artifact with different deps and bytecode, so we can do a final 6.0 release as-is, and then a 7.0 release using the jakarta namespace as deps (despite the code still referencing javax).  As soon as that's settled, I can cut a new release.

Thanks for the elaboration.
Looks like you already found a solution/plan. Looking forward to the new release!


Nested enum types are not supported

Environment information
System:
    OS: macOS 13.6
    CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
    Memory: 229.59 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.18.2 - ~/.nvm/versions/node/v18.18.2/bin/node
    Yarn: Not Found
    npm: 9.8.1 - ~/.nvm/versions/node/v18.18.2/bin/npm
    pnpm: Not Found
    bun: Not Found
    Watchman: Not Found
  npmPackages:
    @aws-amplify/backend: ^0.6.0 => 0.6.0
    @aws-amplify/backend-cli: ^0.9.1 => 0.9.1
    aws-amplify: ^6.0.5 => 6.0.5
    aws-cdk: Not Found
    aws-cdk-lib: ^2.110.1 => 2.110.1
    typescript: ^5.3.2 => 5.3.2

Description
const schema = a.schema({
Prompt: a.customType({
text: a.string().required(),
weight: a.integer().required()
}),
Configuration: a.customType({
clip_guidance_preset: a.enum(['FAST_BLUE','FAST_GREEN','NONE SIMPLE','SLOW','SLOWER','SLOWEST']),
...
error TS2322: Type 'EnumType<EnumTypeArgFactory<("FAST_BLUE" | "FAST_GREEN" | "NONE SIMPLE" | "SLOW" | "SLOWER" | "SLOWEST")[]>>' is not assignable to type 'ModelField<ModelFieldTypeParamOuter, CustomTypeAllowedModifiers, any>'.
Property 'default' is missing in type 'EnumType<EnumTypeArgFactory<("FAST_BLUE" | "FAST_GREEN" | "NONE SIMPLE" | "SLOW" | "SLOWER" | "SLOWEST")[]>>' but required in type 'Omit<{ required(): ModelField<string | number | boolean | object | any[] | Date | ModelFieldTypeParamInner[], CustomTypeAllowedModifiers, undefined>; array(): ModelField<...>; default(value: ModelFieldTypeParamOuter): ModelField<...>; authorization<AuthRuleType extends Authorization<...>>(rules: AuthRuleType[]): Mod...'.

Hey @ubiqart, Thank you for highlighting this. We've successfully replicated the issue, thus marking it as a bug for the team to further assess.

Related issue: https://github.com/aws-amplify/amplify-category-api/issues/2126

Duplicate of #2126


[Feature Request] Add option to change icon's style in dark/light mode

Hi there, I have seen that the theme have setting to display another logo in dark mode, would you mind adding a setting to display another icon in darkmode like this
icon:"sth"
darkIcon: "some others things" //Display another icon in darkmode
Thanks

This feature is not hard to add. But I am curious about why you need this feature.
Logos can be images which it's color can be too light in darkmode(or too dark in lightmode), so I added that darkLogo option.
But font icons only have shapes, and it's color should be adjusted when switching between darkmode and lightmode.
So why do you need to change to another icon in darkmode?

Oh, sorry. I though that you can add a darkIcon and then add darkStyle and Style (for light mode) to make it render like this: <i class="fal fa-quidditch" style="color: #f06595;"></i> but I h the a better idea that we just need to add
darkStyle (for styles in darkmode) and Style(for lightmode)
Why
Well, have a look at my site, the reddit icon in darkmode look doesn't good because of its color but in lightmode, it look great in lightmode so adding a way to change the color of icons in dark/light mode is great

Do you like the icon color or not?
If not, I think it's possible for you to add in your index.styl
.iconfont::before
  color inherit

If above has issues, you can add important:
.iconfont::before
  color inherit!important

I really love the icon color in light mode but it doesn't look good at darkmode so I just want to change the icon's color in darkmode into another color

Besides, I regard these icons as decorations, and I am not expecting users take a look time configurating them. If you do want a full control to the icon, I will add some options like iconStyle add darkIconStyle.

Hey here, I just realize you are configuring contact. There is a component for you to add those links:

Oh, yeah I know that but it doesn't support some platform: gitlab, bitbucket, reddit so I choose to add a small dropdown item on the nav bar

You can leave the icons you want, I can add them in the next version.

Can you add discord as well

The four icons were added in 0.8.0


node compatibility of /lib files

Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/var/www/mapgeo.alpha1.appgeo.com/map/node_modules/ember-cli-tree-shake/index.js:9:30)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)

Hello!
What version of NodeJS are you using? I've really only tested against Node 6, but if you're using a relatively recent version I can see if I can support it too.

4.4.7, which is still in the ember-cli support roadmap (basically anything after 0.12)

Ok thanks! I'll see what I can do


Navigate to Epics Roadmap fixed

Bug in navigation to epic road map fixed

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: pranotipr sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

This was already implemented in a different PR.


Adds the Java casting functionality to java module in the stdlib

Purpose
Adds the Java type casting implementation into the java module of the Ballerina standard library.
Fixes #https://github.com/ballerina-platform/ballerina-lang/issues/22718
Approach
Java type casting could be done on Ballerina object representations of Java classes (Ballerina bindings created to map Java objects). In order to use this Java type casting functionality, a Ballerina binding object should be of the following kind,

It should implement the Ballerina java:JObject abstract object. This is the Ballerina abstract  object that represents a Ballerina binding object for a Java class.
It should have the @java:Binding annotation, which stores the fully qualified name of the Java class that is represented through the Ballerina object.

The above mentioned JObject abstract object and the Binding annotation are added into the java module of the Ballerina standard library through this PR. Binding objects of this nature could be auto generated using the bindgen tool available inside the Ballerina distribution.
Samples
Function:
# Returns an `any|error`, which is obtained after casting the provided `JObject`
# instance to the given `JObject` type depending on assignability.
#
# + value    - The JObject `object` instance which is to be casted
# + castType - The JObject implementation type `typedesc<object>` to which
#              the given object is casted to if assignable
# + return   - The `any|error`, which refers to the new JObject `object` instance
#              or an `error`
public function cast(any value, typedesc<any> castType) returns any|error = external;

Example:
any|error obj = java:cast(inputStream, typedesc<FileInputStream>);
if (obj is any) {
   FileInputStream fileInputStream = <FileInputStream>obj;
}

FileInputStream fileInputStream = check java:cast(inputStream, typedesc<FileInputStream>);

Refer the test cases included in this PR for more samples.
Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[X] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #23196 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #23196   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

Continue to review full report at Codecov.

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

Codecov Report

Merging #23196 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #23196   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

Continue to review full report at Codecov.

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


Setting format date-time on a property and then rendering the schema says format: null

Confirmed this is an issue and thanks for reporting. In the new version (scheduled for release this year) semantic validation options get their own "card" in the schema options and I have confirmed this bug is not present.

This feature is not yet available on the new version of www.jsonschema.net so I'm closing this. However, this feature will be landing soon. Thank you for reporting this.


add DDPO to index

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


removed output type

Can you expand on the bug caused by output_type? I'm not sure if this is related, but I've been having trouble serving CIFAR predictions with the latest management and query docker frontends.

It wasn't a bug, the output_type just distinguished between double and int outputs. But that's not a useful distinction to make in Clipper currently, and it added a lot of needless complexity to the codebase. It's definitely possible that the removal broke something though (this is why we need integration tests!). What was the problem?

Folded this in with #55


html tags inside bindings

Sorry, most likely not a bug. I was wondering whether it is possible to have html tags inside my bindings. A simple example:
I have an object with values for all cells in a table, including the header row because even the header row may be dynamic.
After playing around this for a while I found that it would be great if I could have html tags inside my values.
For example, in a header cell I would like to include a line break like this: "System
requirements".
In a data cell I would like to show a boolean value with an LED image like this: "".
The problem is that the templates don't seem to handle this but only print the tags out as strings.
My template code looks something like this:
render() {

	return html`

${this.tableContent.header.map(h => html`<th>${h}</th>`)}

		${this.tableContent.data.map(d => html`

${d.map(cellSpec => html`<td>${this.getTextForDataCell(cellSpec)}</td>`)}

		`)}

    `;
}

this.tableContent contains the specification of what to show in the table.
this.getTextForDataCell builds the output that is to be shown in the cells and that may include html tags, as described above.
Am I missing something or is this a general limitation?

You can use unsafeHTML for this. Beware that this is a potential XSS security vulnerability. You should sanitize any user input that might pass through unsafeHTML.

Yes, that solves it, thanks so much. I should have read the docs more carefully. This is an Intranet application with a limited known user group but I will sanitize the input nevertheless.


For probono

Couple of small changes to subsurface.sh
Still doesn't work for me, but this gets me closer
(admittedly the second one is questionable - you could turn this into a "-no-travis" with the opposite logic)

Agree with the intention of your changes, but travis-ci throws
$ bash -ex recipes/subsurface.sh
recipes/subsurface.sh: line 23: syntax error in conditional expression

The command "bash -ex recipes/subsurface.sh" exited with 2.


make: fix govet target after moving 'common' to 'pkg'

'common' can be dropped from the govet list as it was moved to
pkg/common in commit e374eac9a077 ("Move all 'common' code to 'pkg'")
This fixes the following warning during make govet:
go: warning: "./common/..." matched no packages

Coverage increased (+0.008%) to 42.641% when pulling 52a989efbc837c187e8834a7f2965b5bf1d1fd38 on pr/tklauser/govet-rm-common into 2ff7193bb2301523af39695646ac4eb2a1294f17 on master.


ConvLSTM2D: return_sequences=False returns a 5D tensor (should return 4D)

According to ConvLSTM2D documentation, when return_sequences=False, the ConvLSTM2D is supposed to only return the last element of the sequence.  Specifically:
     # Output shape
        - if `return_sequences`
             - if data_format='channels_first'
                5D tensor with shape:
                `(samples, time, filters, output_row, output_col)`
             - if data_format='channels_last'
                5D tensor with shape:
                `(samples, time, output_row, output_col, filters)`
        - else
            - if data_format ='channels_first'
                4D tensor with shape:
                `(samples, filters, output_row, output_col)`
            - if data_format='channels_last'
                4D tensor with shape:
                `(samples, output_row, output_col, filters)`
            where o_row and o_col depend on the shape of the filter and
            the padding

But setting return_sequences=False seem to have no effect and the layer continues to return a 5-d tensor.
Is this a bug?  Is there a workaround?
Here is my code:
def create_model(input_shape):

    num_filters = 15
    model = Sequential()
    model.add(ConvLSTM2D(filters=num_filters, kernel_size=(3, 3),
                         # input_shape=(None, 40, 40, 1),
                         input_shape=input_shape,
                         padding='same', return_sequences=True))
    model.add(BatchNormalization())

    model.add(ConvLSTM2D(filters=num_filters/2, kernel_size=(3, 3),
                         padding='same', return_sequences=True))
    model.add(BatchNormalization())

    model.add(ConvLSTM2D(filters=num_filters, kernel_size=(3, 3),
                         padding='same', return_sequences=False))
    model.add(BatchNormalization())

    model.add(Conv2D(filters=1, kernel_size=(3, 3),
                     activation='sigmoid',
                     padding='same', data_format='channels_last'))

    opt = optimizers.Adam(lr=1e-4)
    model.compile(loss='mae', optimizer=opt, metrics=[metrics.mae])

    return model

As far as I can tell, ConvLSTM2D with return_sequences=False returns a 4D tensor (this is unit-tested). If you find an example where that is not the case, that is bug. In that case, please post a code example that other people can run to verify the bug.

Thanks for the response.  I've modified your conv_lstm.py in Keras/examples slightly by setting return_sequences to False and replacing Conv3D with Conv2D.  Here is the self-contained gist:
https://gist.github.com/rawmean/254a65a236fc7dbcaa5ba11d0f2cb09f
This generates the following Value error:
Traceback (most recent call last):
  File "/home/me/Keras_examples/conv_lstm.py", line 108, in <module>
    epochs=300, validation_split=0.05)
  File "/usr/local/lib/python2.7/dist-packages/keras/models.py", line 870, in fit
    initial_epoch=initial_epoch)
  File "/usr/local/lib/python2.7/dist-packages/keras/engine/training.py", line 1439, in fit
    batch_size=batch_size)
  File "/usr/local/lib/python2.7/dist-packages/keras/engine/training.py", line 1319, in _standardize_user_data
    exception_prefix='target')
  File "/usr/local/lib/python2.7/dist-packages/keras/engine/training.py", line 127, in _standardize_input_data
    str(array.shape))
ValueError: Error when checking target: expected conv2d_1 to have 4 dimensions, but got array with shape (1000, 15, 40, 40, 1)

Can't reproduce, in this script, the output of the last ConvLSTM2D is a 4D tensor with shape (None, 40, 40, 40).

_standardize_input_data

It sounds like the problem is with the data that you are passing as input.

Thanks.  You are correct.  I should have changed the output dimension to 4D (remove the time dimension).


The secure-boot-example does not tell you how to copy the boot.ug and boot.sig to the eMMC!

Describe the bug
Following the README here: https://github.com/raspberrypi/usbboot/tree/master/secure-boot-example at the very bottom it says:
Copy the boot.img and boot.sig files from the secure-boot-example stage to the mass storage drive
but it does not tell you how to do that! How do i do that? I can see the eMMC is available at /dev/sda, i could use dd to copy the boot.img but then how to copy the boot.sig???
The README should be updated with the commands to use?
Steps to reproduce the behaviour
.
Device(s)
Raspberry Pi CM4
Compute Module IO board.
.
RPIBOOT logs
.
Kernel logs
.
Device UART logs
.

You would use the mass-storage-gadget as with flashing any other OS image.
Presumably you have already verified your OS image before enabling secure-boot ?

(also, thanks so much for replying so quickly @timg236 !)

Can't use cp here as it copies a file on a Filesystem. Use dd or other tool which. Am write to the raw block dev
Eg. dd if=yourimage.img of=/dev/sda bs=1M conv=fsync
Make sure that sda is the correct path!!

ok, but with secure boot there are two files - boot IMG and boot.sig - so
how can I copy both with the DD command?
On Monday, June 24, 2024, Nicolai @.***> wrote:

Can't use cp here as it copies a file on a Filesystem. Use dd or other
tool which. Am write to the raw block dev
Eg. dd if=yourimage.img of=/dev/sda bs=1M conv=fsync
Make sure that sda is the correct path!!
—
Reply to this email directly, view it on GitHub
https://github.com/raspberrypi/usbboot/issues/225#issuecomment-2186802747,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADCTVCXQRJNCZLFO5UPHGKLZJAY3LAVCNFSM6AAAAABJZ6ST2KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBWHAYDENZUG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

My bad, you need to copy the files to a Bootable partition (eg vfat) on the emmc for secure boot. See secure boot example Readme file
https://github.com/raspberrypi/usbboot/tree/master/secure-boot-example#loading-bootimg-from-sdemmc

Sorry its still not clear to me.
Its a brand new CM4 so the eMMC is completely empty. Once its mounted with the mass-storage-gadget doe sit need to be formatted?
Can you help with the exact commands for formatting and/or copying the two boot files?
Many thanks!

Use mass-storage-gadget to export the devices as block devices. Typically these will appear as /dev/sda
Format and partition the drive according to your expected layout
Copy the boot.img to the boot file-system.
Installing to EMMC is really outside the scope of this tutorial. It's just running from RAM to demonstrate that an code is loading and running.

Is there some other README somewhere that explains how to do it (i can't find one)?
There are examples of how to copy a boot.img to the eMMC by using the dd command , but how can that work for the boot.sig too?
I really this this README should explain at least how to deal with coping the boot.sig, or  atleast point to someother README that shows it, surely?

Something like this:
Power OFF and Power ON the CM4, then check what block device it is under lsblk. Then need to build the partitions:
sudo umount /dev/sda1 # if necessary

sudo fdisk /dev/sda

From here you can create the partitions as follows:

Type o to create a new MBR partition table
Create a new boot partition (still inside the fdisk util) with n
-- choose all default values except the last sector where you input +512M (primary, number 1, first sector 2048, last sector +512M)
-- if you get the question "Partition #1contains a vfat signature. Do you want to remove the signature? [Y]es/[N]o:" , Enter Yes
Create another new partition with n
-- choose all default values (primary, number 2, first sector 1050624, last sector 30535679)
-- Write the modification with w

Reload the partitions with partprobe or unplug and re-plug the CM4.
Next need to format the partitions correctly. Format the first partition as fat and label as boot:
sudo mkfs.fat -F 32 -n boot /dev/sda1

Then format the second partition as ext4 and label as root:
sudo mkfs.ext4 -L root -m 1 0b 4096 /dev/sda2

Update the flag of the first partition to "lba" using parted:
sudo parted /dev/sda

(parted) set 1 lba on
(parted) q

Reload with partprobe or unplug and re-plug the CM4. Reconnect with the rpiboot command:
sudo ./rpiboot -d secure-boot-msd

If you run lsblk you should see two partitions under sda, and their mounting point (/media//boot (root)).

is there anything that can get it done simpler?

The secure-boot-example is there to demonstrate that the code-signing is working and a signed image can be loaded/verified.
If you are creating a new custom OS that requires secure-boot I recommend using the higher level Secure Boot Provisioner tool
https://github.com/raspberrypi/rpi-sb-provisioner

Thank you for the link to the new rpi-sb-provisioner!


pickadate goes in an infinite loop when all days are disabled

pickadate goes in an infinite loop when all days are disabled
example :
$('.datepicker').pickadate({
    disable: [1,2,3,4,5,6,7],
});

results in an infinite loop

+1, same problem


fix MySQL spell

Hello, @igoso .
Unfortunately, this repo is abandoned. I made PR about this situation, but could not merge it :)
I'll be glad to see your PR in my fork, which I continue to support and develop.

see https://github.com/atercattus/go-mysql/pull/6


User picker: Search result is corrupted

Some users are missing in the search result.
For example, I did not observe "Yannick" in result whereas I filled "y" as search pattern.

Cannot reproduce


Feature/toast notification

Toast notifications for transactions and approvals!
Notable changes:

installed react-hot-toast dependency
Two types of different toasts: TransactionToasts and Generic Toast
TransactionToast for all transactions and approval requests
Generic Toast for more generic error or warning messages.
Created a ToastController that exports functions to render Toasts
Created storybooks

Feedback appreciated!

I haven't looked in huge detail at implementation yet, but I think this mostly needs to be discussed with the designers / someone with design authority, but there are a few things that differ a bit from designs (as well as general approach to toasts as per my thoughts on discord :

Generic toast is much bigger than error message popup in design (font size, wise).
Close icon vertical centering on generic toast
Generic toast appears to be able to take some supplementary information (e.g. an error code), which isn't accounted for in its props currently.
Transaction toasts are fixed width in the designs

One implementation point I'm not sure about is that the start time is passed formatted to the toasts. I think this is a slightly jarring developer experience as, when I implement a toast, I need to reference the formatting on all other toasts, and similarly if I want to change the way the start time is displayed on a toast, I need to do it in many places. I would pass a javascript millisecond timestamp (i.e. Date.now()) and do the formatting in the toast itself.
Reference images:
Storybook tx toast:

Design tx toast:

Storybook generic toast:

Design generic toast (not to scale, sorry):

Relative sizing of toasts on design:


"Intrinsic & Extrinsic Sizing" feature discussion

I was looking into the Intrinsic & Extrinsic Sizing feature recently and I feel like due to the way the specs and implementations have changed over the years it may have become more confusing than useful.
When it was first added in 2013 and the concept of intrinsic width was new it made sense to track support even if it was implemented unevenly just so people could tell how to accomplish some the basic parts cross-browser.
Now however there's a history of legacy values and newly specified values and of course the values will behave differently for different properties.
As far as I can tell the BCD feature tables do a good job at handling a lot if not all of these, and looking at them (through the summary of https://caniuse.com/?search=min-content for example) I notice there's a lot of differences in support by property, suggesting that lumping them together doesn't work very well.
So for now I'm considering either removing the feature altogether in favor of the BCD tables, or perhaps repurposing it to a subset of values/scenarios but I'm having a hard time finding something that wouldn't still be messy and confusing in some way that's not already solved by the BCD tables.
I don't take removing a feature lightly though, which is why I thought I'd bring it up here in search of suggestions. @Schweinepriester & @atjn as the top caniuse co-contributors I'm particularly interested in hearing your opinions. :)

Hmm, I agree that trying to have complete support data on so many values in one place is making it hard to both use and maintain the table, but the way I see it, tables like this is exactly why Caniuse is so useful.
If I am a developer getting into intrinsic sizing, I will at first just want to get a quick impression of whether or not it will be feasible to use. If I only had the MDN data, getting that impression would be very cumbersome, whereas the Caniuse table instantly lets me know that I probably can make it work, since it's supported in all browsers, although there is enough edge cases that I will have to thoroughly test it, and maybe use the MDN data as I move forward with the finer details of my implementation.
Having the above use case in mind, I would probably keep the support table, but scrap most of the comments and replace them with something like:
"Support is highly fragmented depending on the specific value and property it is used on. Check if your use case is supported by making a search with the name of both the property and value that you want to use (example: width min-content)."
Maybe it would also make sense to downgrade all browsers to partial support, just to make it more clear to the user that nothing is guaranteed, and they should make use of the MDN tables to be certain.
Hope this helps, happy to discuss further :)

Cool, yeah that sounds pretty good to me. I guess that would make it similar to https://caniuse.com/es6 except that I was able to set a threshold there at which point I started marking it as "supported". It would be nice if we could determine that point for this feature as well.
Perhaps if min-content, max-content, and fit-content() (the values specified in the level 3 spec) are supported across all properties that support them? The stretch, fit-content and contain values will supposedly come in level 4 so it would make sense to exclude these even though they have some amount of support today as well.
Not a huge fan of that differentiation but who knows how long everything would stay at "partial" support otherwise.

I don't really use these features, so It's hard to determine what makes sense, but making the level 3 spec determine full support sounds like a good solution to me :+1:

@atjn Alright, will probably go that route then. Thanks for weighing in!
@Schweinepriester do you have thoughts on this?

(Yeah, sorry for not responding yet, I'll focus on doing that today)

So, finally: I concur with the direction!

If I am a developer getting into intrinsic sizing, I will at first just want to get a quick impression of whether or not it will be feasible to use. If I only had the MDN data, getting that impression would be very cumbersome, whereas the Caniuse table instantly lets me know that I probably can make it work, since it's supported in all browsers, although there is enough edge cases that I will have to thoroughly test it, and maybe use the MDN data as I move forward with the finer details of my implementation.

+1

Perhaps if min-content, max-content, and fit-content() (the values specified in the level 3 spec) are supported across all properties that support them? The stretch, fit-content and contain values will supposedly come in level 4 so it would make sense to exclude these even though they have some amount of support today as well.
Not a huge fan of that differentiation but who knows how long everything would stay at "partial" support otherwise.

Why don't you like that differentiation?
I think that's the perfect way to go, just like ECMAScript 2015 is basically defined by the sum of the ~features, one entry for level 3 and one for level 4, pretty clear defined whats needed for full support :)
We might even be able to leverage the web-platform-tests or the like to define support.
The entries could even be (semi)automated by adding all sub-features together with each data update, combining the strengths of BCD and caniuse? B-)
In other words:
Feature request: Automated meta-entries, support defined by the sum of sub-features :D :)
(Nudge #5872 0:-))
One minor nitpick I'm sure is already on your radar: I really think the URL https://caniuse.com/intrinsic-width should change, i.e. move the feature, best case redirecting existing links/embeds 0:-)

Thanks!

Why don't you like that differentiation?

I think in this particular case what bothers me is that while min-content and max-content are in the spec and have pretty good support, the fit-content() function value does not (except inside grids)... instead the fit-content keyword value does have good support but is not in the current spec. I'm sure this makes sense from the spec developers POV but I can absolutely see this being confusing to developers.
One way around that would be to only consider min-content and max-content here, certainly wouldn't be the first case that only part of a spec is tracked on a table due to varying browser support. What are your thoughts on doing that?
Regarding automating tests and leveraging WPT, definitely something I've considered, when time allows I'll look into that some more. :)

I see!

One way around that would be to only consider min-content and max-content here, certainly wouldn't be the first case that only part of a spec is tracked on a table due to varying browser support. What are your thoughts on doing that?

As long as it's transparent that's fine I think. Best case linked to what's not included.
I guess that would be easy here for level 3, simply linking to https://caniuse.com/mdn-css_properties_width_fit-content_function.
Maybe worded something like:
"Basic support for Intrinsic & Extrinsic Sizing, a subset of Box Sizing Module Level 3. Includes a, b, c; excluding x, y, fit-content() function value"

Hmm, seems rather wordy, I was just going to go for something like "CSS min-content & max-content values" (bit similar to the grab & grabbing values, though obviously a lot more complicated). I think that would be more developer-friendly since most folks don't dig into the spec to see exactly what it does and does not cover.

Fair enough!


KAFKA-10873: ignore warning messages if connector/task start failed

Ignore warning message if connector/task start failed because we already log error messages to user when start connectors/tasks failed.
I was trying to add a null value to connectors/tasks map, and use containsKey() method to distinguish start failed ones from the non-present/unowned ones. But the concurrent map doesn't  allow null value. So, use a hashSet to store the startFailed connectors/tasks.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@rhauch @kkonstantine , please help review this simple PR. Thanks.

@rhauch @kkonstantine , please help review this simple PR. Thanks.

@rhauch @kkonstantine , please help review this simple PR. Thanks.

@kkonstantine , Thanks for the comments. So you mean this issue can be kept as is? Or we should find another way to implement it instead of bookkeeping way?

@kkonstantine , Thanks for the comments. So you mean this issue can be kept as is? Or we should find another way to implement it instead of bookkeeping way?

The former I guess. I don't see a strong case on skipping the messages based on number of occurrences. Seems we can use this information in the log and that it should be present in abnormal circumstances (maybe with a severity that varies)

The former I guess. I don't see a strong case on skipping the messages based on number of occurrences. Seems we can use this information in the log and that it should be present in abnormal circumstances (maybe with a severity that varies)

@kkonstantine , thanks for the comments. Good to me. Close this PR. Thank you.

@kkonstantine , thanks for the comments. Good to me. Close this PR. Thank you.


Add a project license

The repository currently doesn't seem to contain any license. Could you add one, please? See Choose a License for more information :slightly_smiling_face:
For reference, most Godot add-ons use the MIT license.

Done!  Thank you for bringing this to my attention.


Show alert in addTrip avtivity when the selected date is before today

Description
Fixes #681

It will also fix a build error, related with test classes
Fixes #(issue)
Type of change
Just put an x in the [] which are valid.

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes.

[x] ./gradlew assembleDebug assembleRelease
[x] ./gradlew checkstyle

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings

Great @amoraitis 👍


Improve Primer Materials

[ ] Question folks as to what the output should be before running it
[ ] Maybe do this all in interactive shell?
[ ] Point out that MATLAB is 1-based (and maybe why zero based is a thing?)
[ ] Add units to speed example
[ ] Pressure typo in exercises
[x] Use MetPy constants
[ ] Talk about default values in function docstrings
[x] Kelvin issue in example
[x] Add tests for examples
[ ] Add np.ndim example
[ ] Need a break before getting deep into time series stuff
[x] Add boolean arrays back
[x] Ran long
[ ] Maybe use some graphics to help them conceptualize multi-dimensional arrays?

First cut done in #183.


Fix the service for getAvailableRoutines()

The response type of diagnostics routine getAvailableRoutines() should be 'GetAvailableRoutinesResponse', which contains one field 'routines' with an array of RoutineType as value.
BUG: b/295126759

nit: Suggested PR title: [Extension] Fix the response type for getAvailableRoutines


Short-circuit while unifying constructor arguments

Fixes #1504
Reviewer checklist

[ ] Test coverage: stack test --coverage
[ ] Public API documentation: stack haddock

On second thought, this shouldn't be necessary.


Tarbase update

Tarbase v9 no longer uses the generic json loader, so we need to parse their tsv ourselves.
This PR uses polars to simplify processing, including using polars to query the database and extract the necessary information (e.g. sequence) to build accessions.
The way I've written this uses SQL queries from python. I don't know if that 's something I should have avoided, but it does work, and fairly fast. The maximum number of queries is probably 8 (2 per file here: https://dianalab.e-ce.uth.gr/tarbasev9/downloads), with the majority being quite small. We would have at most 4 concurrent queries, so I think it will be ok
TODO: nextflow stuff

There is one test to parse a line in the new tsv that we have an accession for in the database, which is ensuring things match between the two. I can add more of that sort of thing, or try to work on catching and mitigating errors that might arise, like missing data after we query our DB for some of the things maybe?

Looks good to me, merge away!


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/30717

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/34281

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/47878

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/50480

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/50486

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/50627

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/50643

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/50887


Fix #487 (summarize call uses OpenAI even with local LLM config)

Closes #487
How to test
Set the context length of a local model (eg in LM Studio) intentionally low to trigger the summarize.

[ ] (Reproduce bug) Do this on main without OPENAI_API_KEY set
[ ] (Test fix) Do this on PR branch, should now be fixed

Have you tested this PR?
TODO

Was able to reproduce the bug using LM Studio:
> Enter your message: what do you know about the world?
An exception ocurred when running agent.step():
Traceback (most recent call last):
  File "/Users/loaner/dev/MemGPT-2/memgpt/agent.py", line 586, in step
    response = self.get_ai_reply(
  File "/Users/loaner/dev/MemGPT-2/memgpt/agent.py", line 803, in get_ai_reply
    raise e
  File "/Users/loaner/dev/MemGPT-2/memgpt/agent.py", line 785, in get_ai_reply
    response = chat_completion_with_backoff(
  File "/Users/loaner/dev/MemGPT-2/memgpt/openai_tools.py", line 57, in wrapper
    raise e
  File "/Users/loaner/dev/MemGPT-2/memgpt/openai_tools.py", line 38, in wrapper
    return func(*args, **kwargs)
  File "/Users/loaner/dev/MemGPT-2/memgpt/openai_tools.py", line 111, in chat_completion_with_backoff
    return get_chat_completion(**kwargs)
  File "/Users/loaner/dev/MemGPT-2/memgpt/local_llm/chat_completion_proxy.py", line 91, in get_chat_completion
    result = get_lmstudio_completion(endpoint, prompt, context_window)
  File "/Users/loaner/dev/MemGPT-2/memgpt/local_llm/lmstudio/api.py", line 55, in get_lmstudio_completion
    raise Exception(f"Request exceeds maximum context length (code={response.status_code}, msg={response.text}, URI={URI})")
Exception: Request exceeds maximum context length (code=400, msg={"error":"Context length exceeded. Tokens in context: 3500, Context length: 3500"}, URI=http://localhost:1234/v1/chat/completions)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/loaner/dev/MemGPT-2/memgpt/main.py", line 608, in run_agent_loop
    new_messages, user_message, skip_next_user_input = process_agent_step(user_message, no_verify)
  File "/Users/loaner/dev/MemGPT-2/memgpt/main.py", line 584, in process_agent_step
    new_messages, heartbeat_request, function_failed, token_warning = memgpt_agent.step(
  File "/Users/loaner/dev/MemGPT-2/memgpt/agent.py", line 649, in step
    self.summarize_messages_inplace()
  File "/Users/loaner/dev/MemGPT-2/memgpt/agent.py", line 719, in summarize_messages_inplace
    summary = summarize_messages(
  File "/Users/loaner/dev/MemGPT-2/memgpt/memory.py", line 142, in summarize_messages
    response = create(
  File "/Users/loaner/dev/MemGPT-2/memgpt/openai_tools.py", line 57, in wrapper
    raise e
  File "/Users/loaner/dev/MemGPT-2/memgpt/openai_tools.py", line 38, in wrapper
    return func(*args, **kwargs)
  File "/Users/loaner/dev/MemGPT-2/memgpt/openai_tools.py", line 80, in completions_with_backoff
    return openai.ChatCompletion.create(**kwargs)
  File "/Users/loaner/Library/Caches/pypoetry/virtualenvs/pymemgpt-PCQPn4ce-py3.10/lib/python3.10/site-packages/openai/api_resources/chat_completion.py", line 25, in create
    return super().create(*args, **kwargs)
  File "/Users/loaner/Library/Caches/pypoetry/virtualenvs/pymemgpt-PCQPn4ce-py3.10/lib/python3.10/site-packages/openai/api_resources/abstract/engine_api_resource.py", line 151, in create
    ) = cls.__prepare_create_request(
  File "/Users/loaner/Library/Caches/pypoetry/virtualenvs/pymemgpt-PCQPn4ce-py3.10/lib/python3.10/site-packages/openai/api_resources/abstract/engine_api_resource.py", line 92, in __prepare_create_request
    raise error.InvalidRequestError(
openai.error.InvalidRequestError: Must provide an 'engine' or 'model' parameter to create a <class 'openai.api_resources.chat_completion.ChatCompletion'>


image editing configuration

Thank you for open sourcing such a great work! I'm trying to reproduce image editing results but the results seems not good enough using inference_pixwizard.sh. Is there anything different to use this model to do editing task like sampling step and cfg scale?

Hi, sorry for the delayed response. Due to the impact of multi-task training, image editing results can sometimes be unstable. You can try running inference with 100 steps, changing the random seed to 42 or using a random value, and increasing the text_cfg_scale value slightly—these adjustments might help. Also, the current model weights are not yet stable and robust enough, but we plan to release better weights after further training.

thank you for your reply!

Hi, sorry for the delayed response. Due to the impact of multi-task training, image editing results can sometimes be unstable. You can try running inference with 100 steps, changing the random seed to 42 or using a random value, and increasing the text_cfg_scale value slightly—these adjustments might help. Also, the current model weights are not yet stable and robust enough, but we plan to release better weights after further training.

Hi, great work and thank you for the open source. Any update on when do you plan to release the more stable weights?


Clear also clears pinned items

Thank you for this great free tool.
My problem is that the pinned items are always deleted when I click "Clear"
I tried holding while holding option key and not holding it.
I also tried control or cmd keys but my pinned items always get deleted.

Already implemented and will be available in a new version 40a6b7e349dc7baa4261e0645af57b8f0816836b


Travis work

Does this PR leak prod secrets?

I meant to merge this into my own fork and I didn't pay proper attention to it, i'm sorry about that. As for secrets, nope. The keys are either encrypted or like the URL thats public (not worried about the URL being public)


[Bug]: Tabs - Rendering warning "Prop aria-controls did not match." in Next.js v14

Browser
Chrome
Package version
^3.0.466
React version
^18
Description
Actual behavior:

Expected behavior:
The tabs component renders as expected. How can I get rid of this warning?
Source code
https://github.com/xbeaulac/cloudscape-tabs-bug-reprod
Reproduction
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems

Hi, thank you for reporting this. We've reproduced the issue and we're working on a fix.

We have released the fix now. Please let us know if you encounter any further issues.