cups-filters: apply patch for CVE-2024-47076

Description of changes
Advisory:
https://github.com/OpenPrinting/libcupsfilters/security/advisories/GHSA-w63j-6g73-wmg5

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 344748 run on x86_64-linux 1

1 package failed to build:

rcu

13 packages built:

cups-filters
foomatic-db
foomatic-db-ppds
foomatic-db-ppds-withNonfreeDb
ocsinventory-agent
ocsinventory-agent.devdoc
perl536Packages.NetCUPS
perl536Packages.NetCUPS.devdoc
perl538Packages.NetCUPS
perl538Packages.NetCUPS.devdoc
ptouch-driver
splix
system-config-printer

Add a :+1: reaction to pull requests you find important.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/cups-cups-filters-and-libppd-security-issues/52780/1


English?

Hi, It will be in English?

@lubieapki Oh yes, I will make this for localization later. Thanks for your interesting^_^

@Urinx thanks :)


Update  dependencies

Recently I've made a switch to Node v.6, and it started creating problems with running builds with gulp. The error that I keep getting is:
(node:10185) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
Updating graceful-fs module to the latest version didn't work. Running
npm info graceful-fs | grep version:
I got following graceful-fs version: version: '4.1.10'
However, typing npm list graceful-fs I can see which versions of graceful-fs are currently installed:
npm list graceful-fs

<EMAIL_ADDRESS>/Users/katarina/theme-builder

├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ │ └─┬<EMAIL_ADDRESS>│ │   └─┬<EMAIL_ADDRESS>│ │     └─┬<EMAIL_ADDRESS>│ │       └─┬<EMAIL_ADDRESS>│ │         └──<EMAIL_ADDRESS>│ └─┬<EMAIL_ADDRESS>│   └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └─┬<EMAIL_ADDRESS>│   └─┬<EMAIL_ADDRESS>│     ├─┬<EMAIL_ADDRESS>│     │ └─┬<EMAIL_ADDRESS>│     │   └─┬<EMAIL_ADDRESS>│     │     └─┬<EMAIL_ADDRESS>│     │       └──<EMAIL_ADDRESS>│     └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └─┬<EMAIL_ADDRESS>│   └─┬<EMAIL_ADDRESS>│     └──<EMAIL_ADDRESS>└─┬<EMAIL_ADDRESS>  └─┬<EMAIL_ADDRESS>    └──<EMAIL_ADDRESS>
As you can see gulp deep down depends on a very old version of graceful-fs. Unfortunately, I can't update that myself using npm update graceful-fs.

I have just discovered that this issue doesn't belong here.


Value.toDate(string value) is not thread safe

When running the sdk in multi-threaded environment, method static Date toDate(String value)  in class Value is throwing exceptions from time to time:

Caused by: java.lang.NumberFormatException: For input string: ""
Caused by: java.lang.NumberFormatException: For input string: ".10201E.102014E4"
Caused by: java.lang.NumberFormatException: multiple points

This is preventing to get the status of a job.
Here is  some hints to fix this issue
thanks

We have run into this same issue as well.  Random but frequent occurrences that only started with the recent update to 1.6.3.   We are falling back to 1.6.2 until this is resolved.

We've merged a fix to the develop branch.


branch-2.0 Fix extremely high CPU usage caused by rf merge

pick https://github.com/apache/doris/pull/27894

run buildall


FloatingActionButton interact with Snackbar even inside NavigationBar

If you select any menuItem in NavigationBar, FloatingActionButton will be heaved by SnackBar and will not be unheaved if you open NavigationBar again before SnackBar disappear.
There is a gif  so you can understand what I am talking about.

I got it. What your opinion about an UX solution? What should it to do?

I literally have no good idea about how to deal with it for better design :(
Maybe X sign should move down fast (to position, where it was before Snackbar) after NavBar opened? And if Snackbar will be activated when user tap X sign, it should also move up fast and then closing CircularAnimation should appear.
It's not so great idea because it could cause other glitches so I really don't know how to handle this.


Why have a kind of Field in spite of that Fields has two variants Named and Unnamed?

I think it more reasonable that there are Named Field and UnnamedField because it's strange that Fields have two variants and when it is extracted as each Field whose ident have that is extra two variants as Option type.
Thanks.

A lot of code that looks at Field benefits from dealing with named fields and tuple fields uniformly, such as code that only needs the attrs or types of the fields. If you have fields that you know are named (because they came from FieldsNamed) then you can unwrap the Option<Ident> to get the names.

I understand that its implement benefits others. Thank you for the reply.


0.0.6？

Hi,
It seems that 0.0.6 is the latest version? but I can only download the 0.0.5.
After clicking the app, the window will disappear, but I can track the processes in the activity monitor.
In Discord, I can see "playing apple music", but no song information, only says "browsing".

It is due to a recent change that requires all developers to notarize they’re apps. Current I am working in getting a electron patch that allows me to do that but until that’s completed you can only run the app by cloning the repo, installed node, the running yarn dev.

@A-da-m Until then, can you post a guide to running it straight from the cloned repo?

@idealleee @mattgeowild I believe I finally figured out the issue after hours of debugging and searching google. 0.0.6 has been released with notarization support https://github.com/A-da-m/AppleMusicPresence/releases/tag/0.0.6.


Parse imdb.com URLs, add year support to search

Mostly (all of it) stolen from @freeboson's https://github.com/sopel-irc/sopel/pull/1195
It's working on Python3.6 for me, haven't tested Python2.

Can you clean up the flake8 issues?

Thanks for the review, some obvious errors, I should have read the Travis log immediately


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/VSC-Service-Account/docs-archive-test-source.git

Docs Build status updates of commit dce08bb:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-RepositoryUnauthorizedWithSourceCommit] Git data access to 'https://github.com/VSC-Service-Account/docs-archive-test-target' (branch: Release_Archive_master_2020-05-25-13-46-10) is not authorized.. It looks like this might be the first time you’ve submitted a pull request to this repo. Before you can run builds in a pull request, you have to enable your GitHub account in Docs by visiting https://opportal-sandbox.azurewebsites.net. After you enable your account, close and then reopen this pull request to start another build.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Being able to initialise a fully populated ROM::Struct

ROM::Structs have albeit having a schema (defined by query returns if I got it right) don't allow you to use them for initialisation.
# table authors (name:string, id:integer, created_at:datetime, updated_at:datetime)
class Author < ROM::Struct ; end
Author.new(name: 'Bob') # => <Author {}>

This makes it hard to test pieces of your code without touching the DB at all and therefore slowing the testing down. Is it possible to offer some similar functionality (maybe as part of rom-sql :/ )?
Author.new(name: 'Bob') # => <Author {name: 'Bob'}>

@mereghost rom-factory does that, have you seen it?

@flash-gordon the idea is to be able to do it via class constant. Thoughts?

@solnic type metadata will be missing, it can be a problem in some cases. For instance, you won't be able to notice column renaming. Otherwise, it's possible with method_missing and overriding of #to_s

though I think I would go with a different name, Struct.build or something

@solnic type metadata will be missing, it can be a problem in some cases. For instance, you won't be able to notice column renaming

@flash-gordon not sure if I follow - we'd use actual struct classes generated by the struct compiler, they have meta-data. I'd imagine that if you do User.build(name: "Jane") then the factory would search for the canonical representation of that struct class (basically going to users relation and grabbing its users.mapper.model) and using that. So, essentially a little bit of magic behind the scenes.
I like Struct.build btw.

@solnic linking User to a container would require some sort of a global state, this concerns me somewhat :)

@flash-gordon but it's already "linked" through struct_namespace and class name inference, isn't it?

@solnic no, it's the other way around, container references classes. Currently, User is an empty class that can be easily shared by multiple containers with (possibly) different schemas

@flash-gordon you're right. I guess we should stick to factories after all. @mereghost would you be OK with that? Please remember that User is only a placeholder class, the actual struct classes used at runtime are subclasses of that User class and they are created on-the-fly, based on relation schemas.

I took a look at rom-factory but I'm under the impression that it ends up writing to the DB right?

I'm looking at it using my hanami/model's glasses:
If someone is using their own structs (struct_namespace) there (even with a couple of methods inside), they will probably be caught off-guard by not being able to initialize them.
What model used to do was to look at the relations (and associations) and craft a mapper for that relation and a schema for the entity, registered as :entity, that we would use by default. For that we did a couple of workarounds that looked like 9and were) an ugly hack but that created a nice developer experience.
That being said: this is OK as it seems to be the preferred rom way to do it and if we want the best for both projects we both need to let go of previous assumptions. =)
But I'd love to see this piece of dev UX to improve, either as plugin or as part of rom itself. =)

@mereghost every rom-rb user must learn how auto-structs work though, so pretending that an abstract entity class is something that it's not would be confusing. We can make it nice and easy though, but unfortunately we shouldn't rely on abstract class constructors for that because that would give you the wrong impression and cause confusion. I'm totally for adding support for this to rom core btw. I cringe every time I do relation.mapper.model.new 😆

If someone is using their own structs (struct_namespace) there (even with a couple of methods inside), they will probably be caught off-guard by not being able to initialize them.

This just got me, so I agree.
If creating a Struct with .new on the class isn't possible, could we possibly raise an Exception and provide an indication to users suggesting to use rom-factory (by catching it in internal library code) and possibly linking to a doc that explains why? I expect most Ruby users will reach for .new since it's a basic and ubiquitous part of Ruby.

@cllns this is one of my top priorities in rom 6.0. Struct implementation in rom is a pretty advanced piece TBH. I understand people's expectations because it shares attribute foundation with Dry::Struct but these are not normal classes. Just like ActiveRecord models are not normal classes. It's something a rom-rb user has to learn. We can improve the situation by adding meaningful exceptions like you suggested though, so that's what I'll most likely do.

Great to hear! Maybe it’s more appropriate to think of ROM::Struct as a “Struct Definition” class rather than a Struct class itself (like how Dry::Struct, ::Struct, ::OpenStruct, etc. use the word).
Maybe renaming it something like ROM::StructDefinition, ROM::MetaStruct, ROM::AutoStruct could help signal to users that they’re a new thing to learn. Just an idea though, I don’t understand the domain & usage well enough to know if that’s a good idea.

@cllns this is actually a really good idea. To give you a quick explanation - the struct class you define by inheriting from ROM::Struct is never instantiated. ROM creates sub-classes of your class for every unique schema. I'm not sure how to rename it to make it clear that this is what's happening though. Hard to come up with a short word 🙂
It just occurred to me though that maybe it would be possible to have your classes use the default schema and already be concrete. Then we could generate an abstract class on-the-fly for any non-default schema and derive dedicated classes from this abstract class. @flash-gordon thoughts on this idea? Have you considered this maybe in the past?

ROM::Abstruct :)

It just occurred to me though that maybe it would be possible to have your classes use the default schema and already be concrete. Then we could generate an abstract class on-the-fly for any non-default schema and derive dedicated classes from this abstract class. @flash-gordon thoughts on this idea? Have you considered this maybe in the past?

But what would you do with accessors generated from the base class? And then, what if two containers with different schemas use the same base struct? Which one would be considered the default one? Currently, we have clear semantics, as I can see, we'll have to trade it for better ergonomics. Another argument is structs are not tied to schemas hence, they can be loaded separately. What if you instantiate a struct without loading a schema somewhere else.
It's possible to come up with a safe and predictable API I think, it would require relying on effects (not necessary dry-effects, thread local variables would work just as well) like for most tricky things
ROM::Struct.with_container do # you call it somewhere at the top, in middleware, in RSpec.around(:all), etc
  Entities::User.new() # relies on implicitly passed container
end

That much I can suggest in terms of well-defined API :)

I think most Structs in most codebases (my impression) will have just one associated schema. Can we privilege that use-case, but still retain the power & semantic correctness of supporting many schemas?
I’m working at the edge of my understanding, so forgive me if this doesn’t make sense, but this has been productive so far and I think we’re making progress on this (as @flash-gordon noted) semantics-ergonomics balance.
Could we use container/schema names somehow, with a registry? (e.g. accessed as Entities::User[:default] or just Entities::User for :default).
Then later, when another container/schema is added, they must be named (e.g. accessed as Entities::User[:redis]). Seems like this might use a little bit of global state, but in a sensible way.

I would prefer not to sacrifice ergonomics because of less common use cases, assuming we can support both. I think structs should be per container anyway. If you want shared classes then it should be up to you to set it up. My idea in theory sounds simple:
# with this relation
class Users < ROM::Relation[:sql]
  schema(:users) do
    attribute :id, Types::PrimaryKey
    attribute :name, Types::String
  end
end

# having this struct
class User < ROM::Struct
end

# during setup, rom would define attributes for this default struct assuming
# Users's default schema becomes this struct's schema, so
User.schema # matches Users.schema

# then, if you do something like
users.select(:name)

# this would result in
abstract_class = User.superclass
# define attributes from the dynamic schema on-the-fly
abstract_class.schema # this now matches users.select(:name).schema

# Everything is of coursed cached at run-time

So, in which scenario this would be problematic? Please remember that I want to make Structs first class citizens in ROM 6.0 setup process, so auto-register will deal with them etc.
I also like @cllns's idea that we can leverage the already established pattern with Class#[] and have the ability to provide container's identifier.

Got an idea, here's a sketch
module AbstractEntities
  class User < ROM::Struct
  end
end

# somewhere else
App.boot(:persistence) do |container|
  init do
    rom = ...
    Entities = rom.make_structs(AbstractEntities)
  end
end

# then
Entities::User.new(name: 'John Doe')

This way we "offload" global state management to users but in a controlled way. WDYT?

My idea in theory sounds simple:

I didn't get it :( How is
# having this struct
class User < ROM::Struct
end

compatible with
# this would result in
abstract_class = User.superclass
# define attributes from the dynamic schema on-the-fly
abstract_class.schema # this now matches users.select(:name).schema

?
User.superclass is ROM::Struct. Besides,
user = users.select(:name).by_name('John').limit(1).one
user.is_a?(User) # false!

@flash-gordon sorry that was a confusing mental shortcut. I meant that we need an abstract class that is used for building dedicated structs BUT have the default "User" as a concrete implementation already. This means that we'd generate something like AbstractUser < ROM::Struct and have User < AbstractUser. So it's what you showed more or less in your example.

I just came across this issue again, and I think it'd help a lot of we include the object_id of the class in the inspect output. So then people would see something like
article1.class # => ROM::Struct::Article<11020>
article2.class # => ROM::Struct::Article<80600>

Instead, now they show the same string even though they're different objects. Usually in Ruby we expect classes with the same name are the same object.
Of course, they'd change every time but I think that's fine for inspect output.

This is something we could address in 6.0. I'd be for introduction of the Abstract prefix and then User < AbstractUser. I am not sure yet what to do with classes that are generated for non-canonical schemas though. Your suggestion to add object_id sounds like a simple solution so maybe that's the way to go :)

There's also a new feature in ruby for classes having non-standard naming, it may be useful here: https://github.com/ruby/ruby/pull/7483/files#diff-71f34ef53b0d05e06f87bf7a7f89a88ad136325a33864985ee48895ebc90394eR9

Related to this issue: is there a way to use a verifying double with RSpec (instance_double) and ROM 5 structs that infer their schema from the relation?
article = instance_double(MyApp::Structs::Article, id: 1)

Shows this error
#   Failure/Error:    the MyApp::Structs::Article class does not implement the instance method: id

If I add attribute :id, Types::Integer to the Struct's schema then it works though.

@cllns you need to use the struct class that is actually used by the mapper, ie instance_double(articles.mapper.model, id: 1) should work


-- Added extensive templating the be able to generated different type…

…s of doxygen comment.

I added a lot of configuration to be able to generate different type of comment. It also decouples the trigger sequence to the actual generated comment. I also a way to generate template parameter but parsing is not yet implement for them.

Then for the C/C++ case I would say for now we will leave it like this and continue to improve the extensions. If we run into issues later we will refactor then.

If we run into issues later we will refactor then.

;)


Community engagement manager, Q4 2024

Supporting community activities:
fortnightly "Death by AI game;
stimulating discussion in the Ethics Forum;
running one live discussion event during the Quarter for the whole Ambassador community

Advanceameyaw is backup now for games of Death By AI

I will be researching Worldwide AI Ethics Events for 2025, in order to begin to develop some sort of prioritized schedule for Ambassador participation.  I expect to have this ready before the Thanksgiving  Holiday to propose to the BEGIN Nexus group.
Also, we will hold a meeting for all SNet Ecosystem Ambassadors to attend and contribute thoughts on questions such as; What events we should attend? Which Ambassadors should attend? What types of activities should be developed? Should we prioritize in-person or digital attendance?

I will continue to host the "Death BY AI" game on Discord in the Ambassador Events Channel on Wednesdays at 1400 UTC.

Tentative meeting date Monday 9th December at 14:00 UTC.
Vani to ask Esther


[PROPOSAL] More programmer friendly beehive framework

What would you like to be added:
Please refer to this demo:
https://github.com/tenxcloud/serviced/blob/master/example/main.go
type EdgeCore interface {
	CreatePod(pod Pod) (result PodCreationResult)
	// ...... other methods
}

type EdgeD interface {
	CreatePod(pod Pod) (status PodStatus)
	// ...... other methods
}

type edgeCoreImpl struct {
	EdgeDModule EdgeD  // can be injected
	// ...... other dependencies
}

func (eci edgeCoreImpl) CreatePod(pod Pod) (result PodCreationResult) {
	status := eci.EdgeDModule.CreatePod(pod)
	result := status.ToResult()
	return
}

// at edgecontroller side

edgeCore := kernel.ResolveService(new(EdgeCore))

// resolves out a transparent proxy which convert method call to message then send
// through websocket or other transport object.
result := edgeCore.CreatePod(theNewCreatePodFromEvent)

Why is this needed:
beehive framework now has points that now good enough:

Hard for one who new to kubeedge code to understand interactions between modules (without accurate sequence diagram);
Hard to debug (nor do unit test);
Easy to make a mistake;
A module can 'Receive' messages which should not be received by this module.

cc @qizha @m1093782566

Actually Beehive is designed as a in-process messaging system and pluggable module support system instead of a RPC system. The module is new concept in beehive just like microservices on cloud. The unnecessary modules can be closed with configuration to reduce the resource cost.
Beehive is designed to handle the cross-module communication. At the beginning we only have go-channel communication cross modules. Later, we have few requirements to provide corss-process module communication so we add socket/UDS capability but that part is not in kubeedge. So we only need in-process communication with go-channel in kubeedge now. The idea is to use messaging system to make the modules running in one process be pluggable.
The message can be send to one module or multiple modules. We group each modules during initialization so every modules in this group can get messages if one module send message to this group. This is useful to de-couple modules. For example, we have one group named "hub" and there is one module "edgehub" right now. Now we are planning to add quic support by adding a new module someting like "edgehub-quic". What we need to do is just add this new module and add it to "hub" group, that's all. No one else need to be aware of this new guy.
The samething happen on cloud part. But the communication between cloud and edge is rely on cludhub/edgehub instead of the Beehive.
But yes I agree with you we need a document to describe the interaction between modules, that will make things clearly.
BTW, you may want to check the real microservice framework go-chassis(https://github.com/go-chassis/go-chassis) which comes from my previous project.

@qizha Thanks for reply. The proposal not intend to re-implement a rpc system. It just learnt from beehive to give a pluggable module support and inter process message call system.
The module in beehive could be considered as a Service, which expose a set of methods. By sending message to a module or a group, a method (a set of methods if send message to a group) can be invoked according to routing policy.
So 'module' could be contracted as an interface. By giving an implementation and register the implementation to the the Service, any other module which depends on this module (want to send message to this module) can resolve out an object that implemented the Service, and then call the method. If the implementation is on server side, the object is a proxy (only in this case it do rpc things).
Also the proposal provide a dependencies injection system. When a module depends on other modules, the dependencies can be injected.
As the main propose of beehive is pluggable, what if no 'eventbus' or 'edged' in edge core's config?
modules:
    enabled: [eventbus, websocket, metaManager, edged, twin, dbTest]

The program may not run properly. Then if used some system like this proposal want to implement, the dependency (event bus) is a proxy, other process which implements eventbus can be called.
The demo is for proposal not a production level package.
Beehive is great, and inspired by beehive, we think it could do more to clarify interactions between moduls by code itself not document which is always late come out and outdated.

@tedli , If a module(say X) has to contacted by an interface.... other modules wanting to contact X need to be aware of the interface implemented by X right ?
If yes, assuming we will have 10 modules in future, each of them need to aware about 9 other interfaces implemented by other modules.
Also adding a new module would need source code changes for making existing modules aware about the new modules interface.
Please correct me if I am wrong

xref: http://www.sel.zju.edu.cn/?p=989

@sids-b Let us forget about this proposal and current implementation of beehive for now. If module A want's to send message to module B, A have to know there is a module B, just that A not need to know how B implemented. If A even don't know there is a module B why A wants to send message to.
So answer your question, no matter there are 10 modules or more, if a module depends on other modules (it wants send messages to ), it has to know the modules it depends on, just not need to care about the implementation.
And for now on, modules on controller side or edge side now have to co-exists. If no 'eventbus' at edge core, it just doesn't work. It's not about pluggable, it's dependencies.
The proposal want's to inject interfaces (modules [it's dependencies]) to a struct (a implementation of other interface [a module]), while it not need to care about the interfaces' implementations, the implementation may be a proxy if the implementation not in the same process.

The 'in-process communication' indeed acts in asynchronous manner. But async also can be done in many other ways.
For current beehive implementation, in process communication just act a complex method call. I'm not saying it's not good. It‘s just about preference.

@tedli , as @qizha said, module A doesn't want to send message to module B.
For example we have one group named "hub" and there is one module "edgehub" right now. Now we are planning to add quic support by adding a new module someting like "edgehub-quic". What we need to do is just add this new module and add it to "hub" group, that's all. No one else need to be aware of this new guy. So module A sends message to Hub group and not module B(which can be edgeHub). Module A does not care who is present is Hub group.....

@sids-b Indeed. Module A depends on Module B's contract (an interface). Let's named this interface 'hub'. 'edgehub-quic' is nothing but an implementation of Module B's contract. Module A also not need to know this new guy. That's why I was inspired so much.

@tedli Suppose the current implementation of Hub is
type Hub interface {
	A()
	B()
}

In the future version I change it to
type Hub interface{
	C()
	D()
}

With current implementation, there is no need for module A to be aware of change in interface and change in function definition as well :). Indeed as amazing design by @qizha  :)

@sids-b For current beehive implementation, what if a module's routing policies changed.
That's the same thing about method changes, which the former will cause errors or panic in runtime, the latter can be checked by compiler during compile time.

I don't think there will be runtime errors and panics as long as Hub Group design owner make sure C() is backward compatible with A() and D() is backward compatible with B(). Backward compatibility is always expected in an interface upgrade :)

Requesting @m1093782566 and @qizha to put their thoughts.

'Go module' can import more than one version of type.
// github.com/kubeedge/beehive/hub/v1
type Hub interface {
    A()
    B()
}

// github.com/kubeedge/beehive/hub/v2  <---
type Hub interface {
    A()
    B()
    C()
    D()
}

A v2 version of Hub implementation is also a v1 one.
Just a proposal for ones who loves beehive and kubeedge and want to do further contributions like me to contribute without any pre-release docs or a private internal company meeting. Not mean to replace or diss the current implementation.

@tedli @m1093782566 @qizha
It's just some initial thought about current in-process messaging design of beehive, and I think we can talk about this later next week, it should be more efficient. For now, we should pay more efforts to fix bugs and enable more functionalities of young KubeEdge :-)
Thanks all for the discussion above, and will update here after our offline communication.

@tedli , Please don't get me wrong that I am opposing this proposal. I am only trying to understand it better.
Glad to know that you like KubeEdge and beehive :) Looking forward to more collaborative work to improve both KubeEdge and beehive :)

@tedli @nkwangleiGIT I am very glad to talk with you guys about the design ideas. And I'd like to share with you the reasons why beehive implemented like this. Also, I'd like to see we can make it better together ^_^
This is a big topic actually. I know exactly what @tedli is proposing because I built ServiceComb(https://servicecomb.apache.org/cn/) in the last two years as well as the "microservice infrastructure as a service" in production. What @tedli is trying to implement here is something like dynamic proxy in Java and ServiceComb\Dubbo use this mechanism to implement their microservice calling system. I am very impressed you implement it with the language not that dynamically like golang. It looks great!
Just like tedli mentioned, let's back to the requirement itself. Here are some features we need for this system:

We need not only 1:1 communication but 1:n. For example, a connection lost event shoud be propagate to multiple consumers on edge to handle such situation. This is more like a MQ style communication system then.
Everything should happen asynchronously with a reactive programming style to accelerate the operation.
The changes happened to each module should not impact the others. The changes here means code changes or add/remove modules even in runtime. So we need a contract-oriented system instead of interface-oriented. The message wrapper is that contract then: https://github.com/kubeedge/beehive/blob/master/pkg/core/model/message.go.  However, the dynamic plugin in golang is not mature enough so we have to include every modules when doing compiling. But user can close/open some of them even in runtime by balancing the functionalities and resource cosuming. That include edged(user can shutdown container deployment and keep the function implement by another module) and eventbus(user can use servicebus to communicate) actually. Sorry for the missleading that we are not open source function and servicebus in the moment because we want to implement function with Knative in the community and servicebus is coming soon.
Easy for testing and mockup. Remember the contract-oriented here, the contract is the message wrapper regardless the protocol so we can use go-channel on Edge and websocket/quic between edge and cloud. Each developer work on different modules can use the same mechanism to communicate with others then. And it is easy for them to create mock modules to test their module by mockup the contract.
Later we found we need the same communication mechanism cross processes and languages. See we may have some monitoring agent implemented by another language running separately. And each modules in kubeedge may need to send information to it.

Well, that's what we need. And then I realized what I built in the last two years may not be suitable to handle such situation. A MQ style messaging system plus a well wrapped message format maybe better. But I do agree with you that we should find a way to make such message interactivtion be declarable instead of in the code. See we may have one file for each module to declare the message interaction relationship so that everyone can easily get the whole system module interaction relationship from these files. What's your take?


Correct delimiter regex for quarto

(this is somewhat related to https://github.com/Klafyvel/vim-slime-cells/issues/8)
quarto qmd files use cell delimiters that look something like:
```python

or

```{python}

I'm trying to use a delimiter regex to catch both; I currently have the following but doesnt seem to be working:
vim.g.slime_cell_delimiter = "^```{?%a+}?$"
any thoughts on why that pattern doesnt seem to be matching either? does the plugin use standard regex or lua match patterns?

Hi! the plugin is pure vimscript. The regexp you are looking for is ^```{\?\a\+}\?$ .

perfect, thanks!


Use kubernetes annotations to store instance information instead of redis

MultiJuicer currently depends on redis as a datasource.
MultiJuicer stores 3 pieces of data related to every instance in redis:

Passcode: Bcrypt hash of the instances passcode
LastRequest: Timestamp of the last request proxied to the instance. Update at most every 10 seconds to reduce load.
ContinueCode: JuiceShop ContinueCode to backup the current Instance Progress.

All of the data could be stored directly on the instance, as annotations on the Instances kubernetes deployment or directly on the pod. This would enable to remove redis entirely. This would make the setup easier as no persistent volumes are required and removed a potential point of failure.

Made a ton of progress on this today.
Was able to replace all redis dependencies and move them to the annotations on the JuiceShop deployments. This seems to work out great so far!
Structure of the new annotations
The annotations are structured like the following:
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    multi-juicer.iteratec.dev/challengesSolved: "42"
    multi-juicer.iteratec.dev/continueCode: "LRo3lzE7XYnWkwaZNdE7i3Hku6TqCQiW8i5NF96H2b0yPxve5Mq4pK18VJmg"
    multi-juicer.iteratec.dev/lastRequest: "1581010161979"
    multi-juicer.iteratec.dev/lastRequestReadable: "Thu Feb 06 2020 17:29:21 GMT+0000 (Coordinated Universal Time)"
    multi-juicer.iteratec.dev/passcode: $2a$12$bGiBDC0wYE23TSRSeNIUaOk2mMU3QgfV9hgem7NCj4W2J/UjyGnpi
  labels:
    app: juice-shop
    deployment-context: multi-juicer
    team: team42
spec:
# deployment spec ...

The fields challengesSolved and lastRequestReadable are kind of duplicated technically but make debugging a lot easier.
And enables you to see all important information within kubectl e.g. via custom-column template like: https://github.com/iteratec/multi-juicer/blob/3de9964de5e586b3457e77d2c4846735932bbf00/juiceShop.txt
This looks like the following when used with kubectl:

Neat, right 😉
Changes to the ProgressWatchdog
I had to make one big(ish) architecture change for this. Previously the progress-watchdog, the component reading JuiceShop continueCodes and saving them was running as a sidecar in every JuiceShop container. This made it easier as every ProgressWatchdog was only responsible for its own container. The ProgressWatchdog now runs in a single deployment, which managed all JuiceShop instances.
This was changed for two reasons:

The ProgressWatchdog now needs write access to the kubernetes api (the exact permission can be viewed on the progress-watchdog role). To make this possible we have to mount the access token for the progress-watchdog into the pod. The access tokens are availible to all container in the pod, which would for the sidecar mean that JuiceShop users could access the kubernetes api and change deployments as they wish. This seemed just a bit too dangerous to me 😉 .
Having a ProgressWatchdog running in every container running consumed about 10Mib of additional RAM for every JuiceShop instance just for the golang runtime overhead. Having this handled in one place is more efficient. The in / exporting is pretty quick and runs in 10 seperate goroutines (at the moment). That should be able to easily manage thousands JuiceShops at the same time. When somebody has more JuiceShop, we'd can always increase the number of goroutines. But i don't really expect setups this big.

So this should basically be safer and more efficient for pretty much any setups.
Timeline
To see if this is all relatively stable, I'll need some more time and tweaks.
I'm currently planning for that to get released during the OWASP Winter Summit (End of February), but no promises 😉

Will be release with 3.0.0 later today 😀


EXSWHTEC-275 - Implement tests for atomic CAS operations

Implement positive tests for combinations of a single kernel on a single device and concurrent kernels on a single device with various memory access patterns
Implement positive tests for combinations of a single kernel on a single device concurrent with host, and concurrent kernels on multiple devices concurrent with host, with various memory access patterns
Implement negative parameter tests.

Depends-on: #392

PR has been merged into develop branch via commit 7659470dbc88f6b08a029cdcfd304edb868fe718.


Three dot notation in gulpfile.env.js

What is this three dot notation in gulpfile.env.js:27 and gulp-index.js:15? Because i am not able the boot the project with this "syntax errors".
Regarding our README, it should be possible the easily start the project, what isn't the case atm.
$ git clone https://github.com/ghpabs/angular2-seed-project.git && cd angular2-seed-project
$ npm install
$ typings install
$ gulp build serve

It's spread operator. Update your node version.

That's right, thanks @Wobbly-Wibbly.
Dupe: https://github.com/ghpabs/angular2-seed-project/issues/53.


README patch

Fixes the Developer Documentation link destination on the README.

🚀 [bumpr] Bumped! New version:v1.0.1 Changes:v1.0.0...v1.0.1


Allow search to filter diseases only in OMIM

For example, @iimpulse would like to search for diseases only in OMIM, such as:
https://api.monarchinitiative.org/api/search/entity/marf?prefix=OMIM&rows=20&start=0&minimal_tokenizer=false
But this returns nothing.
First we'll need to make sure the equivalent id list is reflexive, so that we can put the filter on this field instead of id.  This might also be potentially confusing to users, as they would get back Mondo as a primary id when searching for OMIM

It would be useful to have a query that would return MONDO is for a given OMIM query. If this is not possible please let us know and we will look for another solution -- this is currently a blocker!

if you have an OMIM id, you can get the linked MONDO id via bioentity/{id}, eg
https://api.monarchinitiative.org/api/bioentity/OMIM:154700

@kshefchek that seems very useful. Are these 1:1 OMIM<->MONDO mappings?

to follow up here, the original ticket was to add support for limiting autocomplete to only diseases in OMIM, which would require some updates to our solr schema and the solr loader code.  There are some additional requirements for poetry, such as mapping an OMIM 1:1 mapping to Mondo, and also to get all superclasses.  I think we support both these but need to check.
Another route is to expand out the on demand ontology endpoints in /ontol and /ontology which run fetch the latest ontology using the obo purl.  See https://ontobio.readthedocs.io/en/latest/inputs.html (although no obvious from the docs how this works)

#372 is a "superticket" keeping track of all three requests. Feel free to remove / edit (either ticket) as needed.

I've added two new params to autocomplete that will support this:
include_eqs= true|false, when filtering in/out a prefix include equivalent identifiers
exclude_groups=true|false, exclude classes with children, ie only return leaf classes
I've also updated the response to include equivalent identifiers so that the Mondo ID can be mapped to OMIM ID without making a second call to bioentity


Added new targets to allow pushing manifest lists

Based on https://github.com/kubernetes/kubernetes/blob/master/build/debian-base/Makefile, I've changed the Makefile to allow manifest-list push to the build process.
I've added two new targets, all-push and push-manifest that creates the manifest list and pushes to the $(PREFIX)/metrics-server:$(VERSION) image.
These targets are not called by default, the build process (on Travis from what I see) needs to call the push-manifest one.

this looks fine at a glance, but I'd prefer to have someone that actually knows about docker manifests (i.e. not me) sanity check.  Maybe @luxas or @mkumatag ?

Any word on this? It would be nice to have a default server-deployment which is not architecture dependent.

Whats the current state for approval here?

@carlosedp could you please resolve this conflict?

/remove-lifecycle rotten

Looking at it @PierluigiLenociAkelius

Since I have accidentally deleted the original branch and fork, I've opened the PR https://github.com/kubernetes-incubator/metrics-server/pull/313 to address this.

@carlosedp so you can close this.


docs: Added cover image for blog

With reference to #1245
Changes:
Added cover image for the following blogs:

[x] Why Is Apache APISIX the Best API Gateway?
[x] Why do you need Apache APISIX when you have NGINX and Kong?

Can you help check it? @SkyeYoung

@hf400159 Just fixed it, It looks like some incidental error.


As an operator of wifi for restaurants, hotels, etc I'd like to allow clients to use their WebID to log in so that we don't need to manage passwords or have a captive portal.

Added to readme

Opening this as part of moving all user stories into issues again.


Dynamic base url in about page

Since DPASTE_BASE_URL is a dynamic setting that can be changed when the application is self-hosted, the templates need to have access to the variable when rendering the templates so that they do not erroneously display the dpaste.de url.
This PR exposes the DPASTE_BASE_URL in templates and replaces the instances of dpaste.de in the about page with it.

Codecov Report

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

@@           Coverage Diff           @@
##           master      #89   +/-   ##
=======================================
  Coverage   98.11%   98.11%
=======================================
  Files          10       10
  Lines         318      318
  Branches       40       40
=======================================
  Hits          312      312
  Misses          3        3
  Partials        3        3

Impacted Files
Coverage Δ

dpaste/context_processors.py
100% <ø> (ø)
:white_check_mark:

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 780aaa8...ec533a9. Read the comment docs.

Looks good! Can you change it to site_url so its in line with site_name?

@bartTC will do!


testnet order returns nothing but also doesn't throw any error

Describe the bug
A test market order doesn't throw any error but also returns nothing.
To Reproduce
with open('<path to private key>', 'rb') as f:
    private_key = f.read()

client = Client(
    api_key='<api key>',
    private_key=private_key,
    testnet=True
)

order = client.create_test_order(
    symbol='BTCUSDT',
    side=SIDE_BUY,
    type=ORDER_TYPE_MARKET,
    quoteOrderQty=10.0
)
print(order)

Returns: {}
Expected behavior
Here is an equivalent bash script with returns the expected details.
#!/usr/bin/env bash

# Set up authentication:
API_KEY="<api key>"
PRIVATE_KEY_PATH="<path to private key>"

# Set up the request:
API_METHOD="POST"
API_CALL="api/v3/order"
API_PARAMS="symbol=BTCUSDT&side=BUY&type=MARKET&quoteOrderQty=10.0"

# Sign the request:
timestamp=$(date +%s000)
api_params_with_timestamp="$API_PARAMS&timestamp=$timestamp"
signature=$(echo -n "$api_params_with_timestamp" \
            | openssl dgst -sha256 -sign "$PRIVATE_KEY_PATH" \
            | openssl enc -base64 -A)

# Send the request:
curl -H "X-MBX-APIKEY: $API_KEY" -X "$API_METHOD" \
    "https://testnet.binance.vision/$API_CALL?$api_params_with_timestamp" \
    --data-urlencode "signature=$signature"

Returns: {"symbol":"BTCUSDT","orderId":2619482,"orderListId":-1,"clientOrderId":"20ud4QwBKKePm9tLFcp1Kb","transactTime":1731324546617,"price":"0.00000000","origQty":"0.00012000","executedQty":"0.00012000","cummulativeQuoteQty":"9.85717920","status":"FILLED","timeInForce":"GTC","type":"MARKET","side":"BUY","workingTime":1731324546617,"fills":[{"price":"82143.16000000","qty":"0.00012000","commission":"0.00000000","commissionAsset":"BTC","tradeId":817269}],"selfTradePreventionMode":"EXPIRE_MAKER"}
Environment:

Python version: 3.12.3
Virtual Env: virtualenv
OS: MacOS 12.7
python-binance 1.0.21

Hello @trueToastedCode,
Thanks for reporting it, we will take a look and get back to you.

Hello @trueToastedCode,
Thanks for reporting it, we will take a look and get back to you.

Thank you, i figured out the scripts aren't actually equivalent. The correct method to call is 'order_market_buy' but not 'create_test_order'.


feat: Improve Terraform

Description
Terraform now gets the default version if not provided
How Has This Been Tested?
N/a
Due Diligence

[ ] Breaking change
[ ] Requires a documentation update
[ ] Requires a e2e/integration test update

Waiting on Bat Cave to test these changes work before merging. Will merge once verified!


GIS: develop file viewer for KML/KMZ files

Develop custom file viewer for KML/KMZ files.

few tasks for finalization:

[ ] handle and process resizing event of the viewer window
[ ] test preview  ability on different files (with different coordinates systems/different projections)
[ ] should we pull images and other non-mapping content from KMZ files and show it in some kind of preview on the map?

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-14811

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-16070


Flag ALLOW_REGISTER not really active

Describe the bug
Even if the flag ALLOW_REGISTER is set to False, if i add "/register" to the url, i can create a user
To Reproduce
Steps to reproduce the behavior:

Go to 'https://mydomain.org/petition/register/'
create a user and connect to this user to create new petition

Expected behavior
The url "https://mydomain.org/petition/register/" would show an error message if ALLOW_REGISTER is set to false
Desktop (please complete the following information):

OS: debian 10
firefox 75

You're absolutely right! Thanks for the report :)
Will fix ASAP!


CALL apoc.schema.assert({}, {}); gets reformatted to ASSERT

CALL apoc.schema.assert({}, {}); gets reformatted to ASSERT
^-- this causes incorrect proc name

Fixed and delivered in plugin v2.5.5.
Should be available for updating soon.


GetMilliseconds()

Nice wrapper library!
I see there's no GetMilliseconds() function. Seeing as the user can input ms when setting the current time, it would be nice to be able to get the ms out as well.
Is this possible? Thanks

Updated
commit 8c6d08d

long ESP32Time::getMillis(){
	struct timeval tv;
	gettimeofday(&tv, NULL);
	return tv.tv_sec;
}

Shouldn't the return value be tv.tv_usec?

the function above returns the epoch seconds
I've made the following changes;

getEpoch() return tv.tv_sec
getMillis() return tv.tv_usec/1000
getMicros() return tv.tv_usec


I want it to be portable.

Description of the new feature / enhancement
It can add a function's right-click menu in the software instead of reinstalling.
I installed it in Win10 and when I switched to Win11 it worked fine though. But there is no right-click menu in Win11, like Locksmith.
Scenario when this would be used?
I have two systems, Win10 and Win11, and I want them to use the same copy of software.
Supporting information
No response

/dup https://github.com/microsoft/PowerToys/issues/598
We currently have no plans for a portable version

@.***
On Tue, Sep 19, 2023 at 12:09 AM microsoft-github-policy-service[bot] <
@.***> wrote:

Closed #23331 https://github.com/microsoft/PowerToys/issues/23331 as
completed.
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/23331#event-10405487152,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3AGSJHOO5MK4EE4GWVM6ZLX3ELH7ANCNFSM6AAAAAAT3E7TWI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Roll Plugins from cd358b07e7bc to 8c9ad1198a1e (3 revisions)

https://github.com/flutter/plugins/compare/cd358b07e7bc...8c9ad1198a1e
2021-01-29<EMAIL_ADDRESS>[ci][image_picker][webviews_flutter] enable Xcode 12  (flutter/plugins#3461)
2021-01-29<EMAIL_ADDRESS>[url_launcher] Update description in pubspec.yaml (flutter/plugins#2858)
2021-01-29<EMAIL_ADDRESS>[integration_test] Fix tests from changes to flutter test machine output (flutter/plugins#3480)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-plugins-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.

Commit queue failed; closing this roll.


Include symbols nuget package

This was previously turns on, but nuget.org was returning 500 time outs so it was turned off to simply get the initial build working.

Fixed in #38, symbols are now included via a snupkg that is uploaded on release.


Mac OS download

When I download the Mac OS file and try to open, I get an error that says I don't have any applications to open this type of file. I've tried following online tutorials for installation but they're older so the files are different (from before the Vina website changed) and I'm not sure where to go from here

This may help: https://github.com/ccsb-scripps/AutoDock-Vina/issues/55

Also: https://ubuntu.com/tutorials/command-line-for-beginners#9-conclusion
Even though this was written for linux, probably all of it applies to mac os.


Nullptr dereference in UpdateGlobalExperienceData

g_experienceData can be NULL?
Seems Android version of YaPB crashed here on 0xC address. (I will port Android crash logs a bit later)

Can't. It' allocated anyway  on every map load. Even if experience file absent.

BTW, it's crashes here sometimes. Maybe it's on an old version?


fix wrapper breakout

Fixes #28
Fixing the wrapper that breaks out of the container on smaller screens

This PR looks good to me. Hence, merging it for today's patch release.


Fix usage of seekAsync in MessageImpl.hasMessageAvailable and flaky-test

Fixes #10152
Motivation
1
When the connection is reset, message received by reader may be duplicated, so I remove the judgment of whether the key is unique
Repeated scene:
start to read -> 1255:0 threadId:68
after read,update read position -> 1255:1 threadId:68
start to read -> 1255:1 threadId:68
[pulsar-external-listener-39-1] WARN  org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/my-reader-topic-with-batching-inclusivebdcf4a3e-6c2e-4d36-b362-52c066d14da0-partition-2] [d975f7e2-7b8f-467a-a56b-b3c1e96ec75f] Could not get connection while getLastMessageId -- Will try again in 190 ms
[pulsar-external-listener-39-1] INFO  org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/my-reader-topic-with-batching-inclusivebdcf4a3e-6c2e-4d36-b362-52c066d14da0-partition-2][d975f7e2-7b8f-467a-a56b-b3c1e96ec75f] Get topic last message Id
[pulsar-client-io-38-1] INFO  org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/
my-reader-topic-with-batching-inclusivebdcf4a3e-6c2e-4d36-b362-52c066d14da0-partition-2][d975f7e2-7b8f-467a-a56b-b3c1e96ec75f] Successfully getLastMessageId 1255:0
[pulsar-client-io-38-1] INFO  org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/my-reader-topic-with-batching-inclusivebdcf4a3e-6c2e-4d36-b362-52c066d14da0-partition-2][d975f7e2-7b8f-467a-a56b-b3c1e96ec75f] Seek subscription to the message 1255:0:2:4
2
When I fixed bug 1, I found bug 2
normal situation:

ConsumerImpl.hasMessageAvailableAsync triggers seek, and then seek triggers reconnection
Reconnection triggers connectionOpened, at this time startMessageId = clearReceiverQueue() = seekMessageId
ConsumerImpl reconnects. BrokerlastDequeuedMessageId=earliest, startMessageId=seekMessageId
hasMessageAvailableAsync return true
The broker returns a message
Consumer receive

abnormal situation:

ConsumerImpl.hasMessageAvailableAsync triggers seek, and then seek triggers reconnection
Reconnection triggers connectionOpened, at this time startMessageId = clearReceiverQueue() = seekMessageId
ConsumerImpl reconnects. BrokerlastDequeuedMessageId=earliest, startMessageId=seekMessageId
hasMessageAvailableAsync return true
The broker returns a message
Due to other reasons, the connection is disconnected again, and step 2, 3, and 4 are triggered again.
When 2 is triggered, the message in incomeQueue is cleaned, and startMessageId is no longer equal to latest, so seek will not be triggered anymore, resulting in the cleaned message cannot be read

The only time to trigger seek now is:
lastDequeuedMessageId == MessageId.earliest
and
startMessageId.equals(MessageId.latest)
and
resetIncludeHead == true
Modifications
1）remove ·assertTrue(set.remove(key)) in uniteTest, because message may be duplicated
2）add seek in hasMessageAvailableAsync

What about changing the Title and explicitly point out that we are modifying the behaviour of "hasMessageAvailableAsync" ?
The title reads about fixing a flaky test but we are touching  ConsumerImpl

What about changing the Title and explicitly point out that we are modifying the behaviour of "hasMessageAvailableAsync" ?
The title reads about fixing a flaky test but we are touching ConsumerImpl

OK, do you have any good suggestions ?

What about "Fix usage of seekAsync  in MessageImpl.hasMessageAvailable" ?

What about "Fix usage of seekAsync in MessageImpl.hasMessageAvailable" ?

Em...But I fixed 2 bugs in total, not only hasMessageAvailable but also including flaky-test. If I submit flaky-test separately, there will be other problems.

Indeed, if we put the seek in this place, at this time, there is a high probability that the connection is not ready, causing the seek to fail, and eventually this bug still exists. It would be better to put it in connectionOpen.
We can use subscription to set the initial position.

I tried to handle this situation in connectionOpen, but failed:
1 The first time call hasMessageAvailable, it will get the last msg in broker, and then trigger seek lastMsgIdInBroker
2 seek will trigger disconnect and reconnect, clearReceiverQueue() will be called when connectionOpen, and then startMessageId will be assigned to seekId (lastMsgIdInBroker)
3 Then connection is disconnected again(For other unknown reasons), and the startMessageId subscribed at this time is lastMsgIdInBroker, and the broker will not return this message.
Because the sub command does not have an inclusive option, it can only be read from the next item of startMessageId. And I can't set entryId or ledger -1, otherwise the client may read forward after multiple reconnections. Unless I change the proto, add the inclusive option.
@codelipenghui

Record the process:

I modified the proto so that the subscription supports the inclusive option. I found that hasMessageAvailableAsync and messageProcessed are not in the same thread, which has thread safety issues with seek. Time line:

messageProcessed 1131:0:0:4 topic 0
Successfully getLastMessageId 1131:0
Seek subscription to the message 1131:0:0:4
connectionOpened 1131:0:0:4 topic 0
hasMoreMessages 1131:0:0:4 lastMessageIdInBroker 1131:0:0:4 lastDequeuedMessageId-1:-1:-1 topic 0
hasMoreMessages 1131:0:0:4 lastMessageIdInBroker 1131:0:0:4 lastDequeuedMessageId-1:-1:-1 topic 0
message received [1132:0:1:4, 1131:0:0:4, 1133:0:2:4, 1133:0:2:4]

Then I implemented the first seek in ConnectionOpen, and found that when there is no subscription, the lastMessageIdInBroker cannot be obtained.

Finally, I can only temporarily use seek to solve this problem. If anyone wants to use subscription to solve this problem, they can open another issue.

@eolivelli @merlimat @codelipenghui  PTAL

@codelipenghui can you please take a final look ?

This PR can also fix these problems:

hasMessageAvailable returns true, but the reader cannot read any message
After the broker restarts, the reader will not continue to receive messages


feature(zt): add continuous actor and svgd method into soft q learning

Description
Related Issue
TODO
Check List

[ ] merge the latest version source branch/repo, and resolve all the conflicts
[ ] pass style check
[ ] pass all the tests

This PR will be written in new pipeline


euler commands can only take integer sizes, and dont work with decimel

According to your testing, does the issue occur with ONLY Immersive Portals mod and Farbic API?
Yes
Describe the issue
When you use the command:
/portal euler make_portal ~ ~ ~ ~ ~ 1.25 2.5 1
The command errors, and says that the size is the issue.
When you do this:
/portal euler make_portal ~ ~ ~ ~ ~ 1 2 1
It works.
Post the log here
No response

Sorry for the issue spam, put it all into 1 issue, you can delete this post:
https://github.com/iPortalTeam/ImmersivePortalsMod/issues/1236

Going to fix in the next version

fixed


Introduction of Skia Vulkan backend breaks build in  Ubuntu 22.04.4 LTS/Jammy (on WSL2)

With https://github.com/LadybirdBrowser/ladybird/commit/e713de115c394480b7d57653fe7b472db0dc7ce3, the compilation of DisplayListPlayerSkia.cpp fails with the errors;
In file included from /src/ladybird/Userland/Libraries/LibWeb/Painting/DisplayListPlayerSkia.cpp:31:
In file included from /src/ladybird/Build/ladybird/vcpkg_installed/x64-linux/include/skia/gpu/vk/GrVkBackendContext.h:12:
In file included from /src/ladybird/Build/ladybird/vcpkg_installed/x64-linux/include/skia/include/gpu/vk/GrVkTypes.h:13:
/src/ladybird/Build/ladybird/vcpkg_installed/x64-linux/include/skia/include/gpu/vk/VulkanTypes.h:107:56: error: use of undeclared identifier 'VkDeviceFaultAddressInfoEXT'
  107 |                                      const std::vector<VkDeviceFaultAddressInfoEXT>& addressInfos,
      |                                                        ^
/src/ladybird/Build/ladybird/vcpkg_installed/x64-linux/include/skia/include/gpu/vk/VulkanTypes.h:108:56: error: use of undeclared identifier 'VkDeviceFaultVendorInfoEXT'
  108 |                                      const std::vector<VkDeviceFaultVendorInfoEXT>& vendorInfos,
      |                                                        ^

Evaluating with -E, I see vulkan_core.h get pulled in by LibCore/VulkanContext.h, and it seems to grab the system installed version in /usr/include/vulkan -- This is from the system wide package libvulkan-dev @<IP_ADDRESS>-2 -- and does not include the VkDeviceFaultAddressInfoEXT definition.
So, we probably don't want to mix and match system vulkan and skia vulkan, it seems like ideally they'd both use the same version.

@kalenikaliaksandr This looks odd. Are we sure that the Skia from vcpkg includes all the files we need, or were you accidentally also using system headers?


Dynamic placement (and additions) of handles along a node's edge

Hi,
Is there a way to dynamically add additional Handles as well as moving/placing/snapping the handles along a Node's edge?  When there are multiple connections sharing the same source or target Handle, only the last (topmost) edge's Handle is draggable; by allowing users to move the Handle and snap to predefined locations along a Node's edge, it would open up access to the desired Handles underneath to update a connection and greatly improve the UX.  I could create a custom Node that treats and dynamically renders each connection with separate Handle components; however, in order to allow users to drag and reposition the Handle along a Node's edge, I think handler.onMouseUp function needs to pass along the pointer location in the onEdgeUpdate and onConnect callbacks in order to "place" the Handle into the new position (ie update the Handle's style).  Is this feasible?

Hi,
I noticed that there is an onEdgeUpdateEnd(event, edge) callback that I can leverage; however, it appears that I need a way to "coordinate" this with onEdgeUpdate callback.  In other words:
Scenario A - Edge is updated with different source or target:

onEdgeUpdateEnd callback to calculate and register the X,Y position from the Event object.
onEdgeUpdate callback to call updateEdge() with the  newConnection and update both the old and new Nodes.  Needs to synchronize with  onEdgeUpdateEnd callback.

Scenario B - Edge is updated without changing the source or target:

onEdgeUpdateEnd callback to calculate and register the X,Y position from the Event object.
Wait for a pre-determined time to ensure onEdgeUpdate callback is absent so as to only update the Node's Handle position.

Detecting the absence of onEdgeUpdate callback by waiting for a pre-determined time could be tricky and could result in defects with slower client browser, is there an alternative way to detect the scenario without relying on checking if onEdgeUpdate has fired?

With regards to differentiating between scenarios A and B, I have created an edgeUpdateTracker ref and store the event.target as well as edge parameters provided in onEdgeUpdateStart callback.  Inside onEdgeUpdate callback, I clear (set to null) the edgeUpdateTracker ref after successfully updating the elements array with the newEdge and in onEdgeUpdateEnd check the edgeUpdateTracker ref as well as the existence of edge prarmeter provided by the callback in the latest elements array.
With regards to the dynamic placement of handles along a node's edge, I was able to use a custom node to programmatically create a "pseudo handle" for every edge connected to and from a node.  These pseudo handles are NOT connectable (ie cannot accept new connections) and are deleted once orphaned.  Users can drag and reposition these handles along the source or target edge of the node.  However, while I am able to affect these pseudo handles' position via the onEdgeUpdateEnd callback, the connected edges failed to update due to staled node.__rf.handleBounds values.

Is there a way to dynamically add additional Handles as well as moving/placing/snapping the handles along a Node's edge?

There is a PR for MultiHandleNode which does this: https://github.com/wbkd/react-flow/pull/1285

Hi @Ark-kun
Any idea if/when the MultiHandleNode PR would merged?
Also, it's not clear to me how MultiHandleNode would enable the scenario described by @datoslabs ! If I understood him correctly, he'd want to handles to be dynamically added and give total freedom to the user to "intuitively" connect nodes (at least that is my personal use case).
Among other things, this would mean (according to my limited experience and understanding of react-flow) a handle should be able to act as both source and target. For instance, I connect N1 with node N2 through handle H1 and H2 respectively. Here, H1 is the source and H2 the target. Then, I'd like to connect N2 to N3 through H2 and H3 handles. In this second connection H2 would act as a source.
Thank you in advance for any pointers!

@mehdi-cit, The MultiHandleNode PR doe not quite address the scenario I described.  Your understanding is correct in that what I needed is to allow users to drag and move the handle's position along the edge of the node in order to open up access to the overlapping edge handle underneath.   I ended up creating a custom node to make this happen; however, I maintained the distinction of source and target handles as it is more advantageous and less confusing from UX perspective.
Here is an outline of what I did:

Each edge's handles are unique (ie no 2 edges share the same handle ID), I called these pseudo-handles because they are programmatically created when an edge is created and removed when an edge is deleted/updated.  These pseudo-handles isConnectable property is set to 'false' and their position is updated (along the node's edge) when dragged.
Each node's main source and target handles work as listeners for the edge connect event; however, since each edge is physically connected to pseudo-handles, these main source and target handles do not have any edges connected to them and therefore their location remain static.  In otherwords, in onEdgeUpdate() and onEdgeUpdateEnd() methods, pseudo-handles are created replacing the static main handles before adding the new edge to the elements collection.
Since an edge update could mean either a) dragging and moving the pseudo-handle along the edge of the node or b) connecting to a new node, I created a React.useRef() tracker to delineate these 2 scenarios.  Scenario a) follows onEdgeUpdateStart() -> onEdgeUpdateEnd() whereas scenario b) follows onEdgeUpdateStart() -> onEdgeUpdate() -> onEdgeUpdateEnd().
Track each pseudo-handle's position in node.data so that the custom node can render them in the correct locations relative to the node's edges.  For example.

{
  id: "2",
  type:'customNode',
  data: {
    label: "Some label",
    sourceHandle:{ //pseudo source handle locations
      's-2-1':{offset:'50%'} //place pseudo handle in the middle of the edge
    },
    targetHandle:{ //pseudo target handle locations
      't-2-1':{offset:'25%'} //place pseudo handle 25% from reference point (left if LTR or top if TTB orientation) of the edge
    }...

After updating the elements array/state, the custom node will render the pseudo-handles placing them in the specified location using css styles and call updateNodeDimensions store action with a 100ms wait time.  The 100ms wait is necessary because the internal node state __rf.handleBounds (see #1305) is not updated in the same render cycle as the elements state update; therefore, we need to wait approximately 100-500ms (depending on the browser performance) to call updateNodeDimensions store action or otherwise the handle's position will be moved but the edge is still connected to the handle's old position.

Thank you much @datoslabs I will have a look at it when time permits.


Redo models

Attempts to implement validators for CPF and CNPJ did not work as expected.
I will look for a solution in the API serializers.


docs-bug(COMPONENT): Legacy token, and removed Tokens

Documentation Feedback
While migrating from material 18 to 19, it was a great help from the styling tab but we were not able to get tokens like for eg: pseudo-checkbox, ripple-color, some fab tokens, can you please address mappings of removed tokens or how can we handle them
some tokens have legacy keyword as we constantly upgrade our system is it possible that these legacy tokens can be depreciated if yes, then what should be the flow, will you provide replacement?
Affected documentation page
https://material.angular.io/components/checkbox/styling

--mat-full-pseudo-checkbox-selected-icon-color: #343dff;
--mat-full-pseudo-checkbox-selected-checkmark-color: #ffffff;
--mat-full-pseudo-checkbox-unselected-icon-color: #46464f;
--mat-full-pseudo-checkbox-disabled-selected-checkmark-color: #fffbff;
--mat-full-pseudo-checkbox-disabled-unselected-icon-color: rgba(27, 27, 31, 0.38);
--mat-full-pseudo-checkbox-disabled-selected-icon-color: rgba(27, 27, 31, 0.38);
--mat-minimal-pseudo-checkbox-selected-checkmark-color: #343dff;
--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: rgba(27, 27, 31, 0.38);
tokens like these are missing and we were not able to map them into new tokens, so what is the correct way to map them, also while inspecting the dom structure we still get these tokens, so how to tell which new token is responsible for which design


protoc error

Please help
Error getting -while running protoc aster/protos/.proto --python_out=.
aster/protos/.proto: No such file or directory

same error

@nbhupendra do you run this command inside aster directory?

@fink-stanislav thanks for your reply! i have solved the problem.
there are two ways to solve it
method1. if you are inside aster directory ,run the command : protoc *.proto --python_out=.
or
method2. if you are inside aster's parent directory，run the command :protoc aster/protos/.proto --python_out=.

Is it protos or proto? Because the child directory is named protos (plural). Spelling matters. Does it matter here?
Regardless , neither protos nor proto works.
Current directory:
/Users/me/aster
( I assume this is was you mean by "inside aster directory").
Aster directory looks like this:
├── LICENSE
├── README.md
├── builders
├── c_ops
├── convnets
├── core
├── data
├── data_decoders
├── demo
├── demo.py
├── eval.py
├── eval_util.py
├── evaluator.py
├── experiments
├── meta_architectures
├── overview.png
├── predictors
├── protos
├── tools
├── train.py
├── trainer.py
└── utils
I run the command: protoc *.proto --python_out=.
*.proto: No such file or directory
Maybe its the spelling:: protoc *.protos --python_out=.
*.protos: No such file or directory

If you're in the aster directory (for example, /Users/me/aster), the command should be protoc protos/*.proto --python_out=..


Go to source code of packages and open manual of packages

I wrote a few methods which will help implementing the 'Go to Source Code' action.
For example in \usepackage{tikz} when one navigates to tikz and presses CTRL+B the source file should be opened.
To get this behaviour working I wrote one method for \usepackage*{packageName} one for \documentclass*{className} and one for included filenames using \include or \input or similar.
For each of these functions it is additionally needed to first look in the same folder as the tex file if the file exists there.
I also implemented a function which opens the manual file for packageName maybe this could be implemented too.

Looks great! We will try to get this working with the IntelliJ SDK


Allow to cherry-pick commit to other branch

It would allow to backport commits to other branches more easily from UI. Of course that would work only for commits that does not have conflicts with target branch

Is there a way to help (financially) to accelerate this? I would be glad to contribute.

Unfortunately this is is unlikely to make it into 1.16 but feel free to drop me message on discord <@zeripath> or on element <@zeripath:matrix.org>, or post a message on our discord #job channel.

Or you can use https://www.bountysource.com/teams/gitea/issues?tracker_ids=47456670

I tried to contact @zeripath. Bountysource could be the way. I'm not sure how much I should offer tho. Any ideas @lunny?

Sorry, I don't know. The number of money is not equal to the value of the feature. How much do you want to donate depends on yourself.

Well, a donation is one thing and asking someone (a budget) to develop something is another thing. I guess both are welcome in this (and any) opensource project, but I'm trying to find out more about the second option, where money equals the time of the developer (kind of).


Added the blog post

Added the blog post about CNCF Cloud Native Sustainability Week 2024

@claire-fletcher can you please review to unblock merging of the PR? Thanks!


list

Rewriting sentences (and responses)
Add training data (NLP)
Verify REGEX
Double check sentences with Nareg
ReadTheDocs
Enter to submit response
Focus on the input of chat
Update ReadMe (general and sub-ReadMe)
Create a sort of To-Do list for MILA (concerns, to-do, problems encountered, what we could have done better, etc.)
Rewrite first essay with notes + write 2nd essay
Polish dashboard and add probability that the said outcome will happen
For the dashboard, fill the empty space when there are no regressors to calculate the graph plot
For the dashboard, also change “true” to checkmark, “false” to “x” and add a $ sign.
If you refresh, the progress is gone.
What is tenant_ordered_to_pay_landlord? Is it the total?
Transpose dashboard every 5 questions
Accuracy circle is behaving wrong when additional questions are given
Cursor pointer over text to not go a “Text bar cursor” when hovering over highlighted work (also possibly change highlighted color when hovering)
Change some house rental (indemnity) question to compensation.
Rename circle in dashboard to be more accurate about what it presents.
Odds of different outcomes on top of main outcome (pie chart?)
Disable the buttons of the chart in the dashboard if there is only 1 graph.

keep the left sidebar open

add an FAQ for project's features, classifiers, etc

Story was a placeholder. Closing


[rewrite] simplify array operators in stream

Use Array.prototype.some and Array.prototype.every to make code a bit easier to read (plus we get to shave off a few bytes on the way...)

@eladzlot It should also be faster, since array.some(func) doesn't create the extra array that array.filter(func).length > 0 does.

@isiahmeadows true. And it does not have to iterate over the whole array either...


Add support for XDG base directory support for configuration file

This is an XDG Base Directory Specification-compatible alternative to ~/.rspec.
~/.rspec has higher precedence in order to reduce risk in cases where users have a file like this dormant. It is unlikely, but this way the risk is lower.
If $XDG_CONFIG_HOME is not set, it will fall back to ~/.config, per the specification.
Name of the file
I chose the name rspec/options over, say rspec/config, because:

it's referred to as an "options file" in some parts of the documentation
it leaves space for the possibility of having a config file that is not based on CLI options (Ruby DSL, YAML, etc.)

It is trivial to change before merging, of course. I think you get to pick a name, so this is just a suggestion.
Other changes
The "isolated home" example tag has been extended with a create_fixture_file helper that also expands the filename and takes care to create the directory where the file resides in, if it does not already exist.
Other file creations have been migrated to this method for consistency.
The method is only available when an example is tagged with :isolated_home => true, for safety.
In case the developer running these tests have a custom $XDG_CONFIG_HOME set, it is cleared out when using an isolated home so their real files are not touched.
References

#1773 (CC @jasonkarns)
XDG Base Directory Specification
XDG Base Directory support (Arch Wiki)

I see. Thank you for the feedback. Let's see if we can come up with something better together! ❤
I based the message on the sister method that expands ~/.rspec, assuming that was the reason that expand_path could raise an ArgumentError. I really should have looked that up more, especially since I didn't consider the malformed value possibility.
I think we need to answer these questions:

Should we support a value using the tilde-as-HOME syntax (e.g. ~/foo)?
Can we tell exactly why expand_path fails if it fails and we decide to keep it? Should we abort or fall back to something or skip that file?
Some examples in the tests talk about cases where HOME is not set. I cannot remember why right now and I'm actually pretty busy today and cannot check, but I vaguely remember it being a out some versions of Ruby or some OSes, something like that. How do they relate to this feature?

My suggestion is to lean towards just failing and showing details rather than trying to guess solutions and run with it. Probably remove the expand_path call.

Should we support a value using the tilde-as-HOME syntax (e.g. ~/foo)?

I'm ambivalent on this. The XDG spec doesn't indicate this capability either way. Though anecdotally, it seems that a good majority of the XDG-compliant apps do support tilde expandsion of the XDG_CONFIG_HOME variable itself. Practically speaking, the way the code is currently written it makes this expansion automatically. (Since the ENV.fetch's fallback is using ~, the value will need expanded anyhow.) I rather like how explicit this makes the code: explicitly stating that ~/.config is the default value for XDG_CONFIG_HOME.

Can we tell exactly why expand_path fails if it fails and we decide to keep it? Should we abort or fall back to something or skip that file?

I can't imagine what kind of malformity would be possible that is somehow distinguishable from "path does not exist". So unless there is something abundantly clear in the exception, I'd probably expect any exception to be handled as if the expanded path were valid but didn't exist.

I can't imagine what kind of malformity would be possible that is somehow distinguishable from "path does not exist".

This code doesn't check for an existing path.

@Mange do you want to get this PR green before we go through a full review (since that can potentially change the code a fair bit)?

Pushed some changes:

Moved around the File.expand_path call so it is more isolated. Documented the failure condition, copied from the tests for the warning generated for ~/.rspec.
No longer emitting a warning when failing to resolve $XDG_CONFIG_HOME, or ~/.config as ~/.rspec already emits that warning.
Stopped using Pathname#write in favor of the older File.open(...) { } variant.

It looks like this will fix the build, but I don't have time to wait for the JRuby builds right now. I'll jump in and try to fix them too if they end up failing.

if XDG file is present, then the HOME file should not be loaded. XDG file should be a replacement of HOME file.
👍

If both files are present, should a warning be shown or should we save on boot time by not even looking for HOME file if we found a XDG file?

I imagine it would be quite common for people to have duplicate files for a while – specifically, while users have different projects using different versions of rspec. I could see most people making one a symlink of the other, but still. With Project A on latest rspec using XDG location, the homedir location would still be necessary for any other projects using an older version of rspec not yet supporting XDG. So I'd say XDG should take precedence and not even bother checking $HOME. Any scenarios that would be a problem with this approach?

I've pushed some additions.
Now the code will ignore the ~/.rspec file is a XDG file is present and most of the documentation has been updated to explain this fact. I tried to make the documentation focused on the fact that there are several "layers" to the files, and that each file had a specific purpose. Let me know what you think about this.

Thanks @Mange!


Feature/logging system

Logging System
Use Axe to cut Tree into big log -> Cut big log into 2x small log -> Process small logs into planks
Adds:

Axe Tool (Weapon)
Tree destruction (with Axe only)
Tree Chopping Area (Enables tree damage)
Tree destruction VFX
Small Log Item
Plank Item
Log Processor

New feature:
Forced Hand Item (Log / Plank)
-> Gadget Action (R) to drop
Known Bugs:

Can't pick up item with right click. (Vanilla Bug)

I would have probably put the player_carry into a feature sub folder regarding logging or something, but maybe we end up using this on-the-shoulder carry animation for something different as well ...

Yeah anything you carry on the shoulder can use this animation. Once we have more animations we can organize them as needed


HDFS-14770. Erasure Coding: reconstructed internal block is error

JIRA: https://issues.apache.org/jira/browse/HDFS-14770

not a problem, close it


Frontend: Set default match preferences in interview page

Currently it is still default medium python
Fetch the preferences from AppUser

i did this alr tho

Ok, I realized my user has null default preferences. But the settings and the interview page showed different preferences. Perhaps, we can change it so that if there are no user preferences, we set it to python and medium (in settings and interview page)


Clarify WEBSITE_SWAP_WARMUP_PING_PATH behaviour

Please clarify the exact conditions when the path specified in the WEBSITE_SWAP_WARMUP_PING_PATH app setting is called, i.e. slot swap operation only, not scale-out, not fresh deployment, etc. Would be great to explicitly articulate differences between WEBSITE_SWAP_WARMUP_PING_PATH and  <applicationInitialization>.

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

ID: f6e09089-1ae2-8943-5ce2-9d48f458c81f
Version Independent ID: ba780cba-f604-b0a4-a81a-23c7d2384762
Content: Set up staging environments for web apps in Azure App Service
Content Source: articles/app-service/deploy-staging-slots.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@iizotov Thanks for the feedback! We are currently investigating and will update you shortly.

@iizotov Thanks again for the feedback! I have assigned the issue to the content author to review further and update the document as appropriate.

@cephalin Are there any updates regarding this?
Thanks in advance.

@iizotov I've updated the doc and it should be published sometime today. Thank you. #please-close


IGAPP-743: Show poi detail

This pull request belongs to an issue on our bugtracker.
You can find it there by looking for an issue with the key which is mentioned in the title of this pull request.
It starts with the keyword IGAPP.
Note:
Please test on native device, too. I'm facing marker rendering problems (fade to black) only on emulator.
This happens when you click on a poi to get short information

Works nicely already 🎉 I assume text for the popup is added at a later point?

Yes only the title for now. We need further information from cms like pictures
And we need the current location if we want to show there sth like a distance. So i think this pr is fat enough and we make a separate ticket like in the web project


End Timeline is error

Trying to return an array of type "Array" where expected return type is "Array[DialogicCharacter]".
func get_joined_characters() -> Array[DialogicCharacter]:
var chars := []
for char_path in dialogic.current_state_info.get('portraits', {}).keys():
chars.append(load(char_path))
return chars

there is missing from the script so i open the same directory and fix it


question about for from_png_bytes, why this function only for linux?

from_png_bytes  can this function work on macos?  macos only accept rgba

First of all, icons aren't implemented for MacOS yet, because I got kinda burnt out for several reasons:

I don't own a Mac, so I had to develop in a barely working VM.
I found Apple's documentation really bad
Rust support for MacOS APIs is mostly an immature community effort

In general I kinda followed winit for the icon API.
The from_png_data function in particular exists for Linux because the icons must be written to the disc as png before they can be used. So the function essentially exists to eliminate an unnecessary decode->encode step if your icons are already encoded as pngs.

i know, thanks.


Provide module for treating functions as test values.

  The repeated functionality should be provided by a module.
Maybe:

Test.Speculate.Function with:
Test.Speculate.Function.T100 and;
Test.Speculate.Function.T1000.

Done.  See 887d0573d85d952f8924369429d437f4617cad71 and cf81453a6e8d0175f3ec603083a54c95505b4c4d.


Bug: shacDateOfBirth can't handle T-numbers

This is for Swedish users only!
shacDateOfBirth should be able to handle T_numbers and other types of Swedish personal numbers

Fixed by #183


Cant change song on mobile

I cant change song of a level and idk why it works for others
https://github.com/Fleeym/jukebox/assets/130930743/0bcbfcaf-0e3f-478f-b0ec-048497db7910

This should be fixed now, closing


Update needed

New  territories makes app crush
And old territories got new power requirements
`    public static readonly IReadOnlyList TerritoryPowerRequirements = new List()
{
0,
5,
20,
50,
100,
250,
600,
900,
1250,
2000,
3000,
4500,
6500,
9000,
13250,
17000,
25000,
45000,
75000,
110000
};
public static readonly IReadOnlyList<string> TerritoryNames = new List<string>
{
    "Grasslands",
    "Jungle",
    "Encroaching Forest",
    "Tree Interior",
    "Stinky Sewers",
    "Desert Oasis",
    "Beach Docks",
    "Coarse Mountains",
    "Twilight Desert",
    "The Crypt",
    "Frosty Peaks",
    "Tundra Outback",
    "Crystal Caverns",
    "Pristalle Lake",
    "Nebulon Mantle",
    "Starfield Skies",
    "Shores of Eternity",
    "Molten Bay",
    "Smokey Lake",
    "Wurm Catacombs"

};`

Feel free to open a PR. I haven't played in a bit and don't really have time to update.

https://github.com/Drise13/PetsOptimizer/pull/5


Optimize build times

Build times can be optimised by not rebuilding unchanged containers. Maybe we can use git diff or something to only deploy changed containers
Not sure if this is well fit to be a part of ctfup tho, maybe ctfup can just take another option, like --build-only=<challenge names>, to filter only some challenges to be built/deployed.

--diff

Optimization of build times.

Build times have been optimized with the help of the --diff or -d flag. You can pass a commit hash to the --diff flag in the following manner:
ctfup -c ctfup.yml -d <commit-hash> .

This will only deploy the challenges that have been modified since that commit hash, and not all the challenges, optimizing build times to a huge extent.
Sample usage in github actions
...
      - name: Deploy
        run: |
          echo ${{ env.COMMITHASH }}
          ctfup -c ctfup.yml -d ${{ env.COMMITHASH }} .
        env:
          COMMITHASH: $(git rev-list -n 1 latest)

      - run: |
          git config --global user.email<EMAIL_ADDRESS>          git config --global user.name "roerohan"
          git tag -fa latest -m "feat:Update latest tag"
          git push -f origin latest


use_stamped_vel parameter is missed in Diff_drive_controller in Jazzy

In current master (Jazzy) branch use_stamped_vel parameter is missed
https://github.com/ros-controls/ros2_controllers/blob/master/diff_drive_controller/src/diff_drive_controller_parameter.yaml
It present in iron branch
https://github.com/ros-controls/ros2_controllers/blob/iron/diff_drive_controller/src/diff_drive_controller_parameter.yaml#L109
Therefore it is imposible to use use_stamped_vel in Jazzy. I tested it in Iron and Jazzy.
Is it bug or feature cut?

Hello @drfenixion,
From Jazzy on, the default message type is TwistStamped.
https://github.com/ros-controls/ros2_controllers/blob/f23b7d833a41bff6e2125ff5243e0ed95133e6d8/diff_drive_controller/src/diff_drive_controller.cpp#L405-L424
What is the exact issue that you are facing?

@saikishor , issue is - i cant switch to cmd_vel_unstamped topic because there is not present "use_stamped_vel" parameter in ros2_controllers master branch. I can use only cmd_vel (stamped).
In Iron branch i can switch between "unstamped" and "stamped" cmd_vel topics by "use_stamped_vel" parameter.

Hello @drfenixion!
This is a breaking change from Iron to Jazzy. It is already specified in the migration notes : https://github.com/ros-controls/ros2_controllers/blob/master/doc/migration.rst#diff_drive_controller. From Jazzy on, the diff_drive_controller only supports TwistStamped type. You will need to migrate parts of your node to work with this new message type.
Thank you.

For reference, nav2 also uses TwistStamped
https://discourse.ros.org/t/notice-nav2-migrated-to-twiststamped-to-replace-twist-for-cmd-vel-topics/40944


Fix follow button on browse testimony page

Issue: #1621
The changes I made were:

Added an event prevent default so it would no longer navigate to the next page
I had to add a context to the follow button so I can bring state up.
I also changed the queryResult of the useEffect in FollowButton.tsx  to an object instead of a string. This way it can house all of the orgs I'm following and not following.

Checklist

[ x] On the frontend, I've made my strings translate-able.

Screenshots

#Known Issues
N/A
#Steps to test/reproduce

Go to the home page
Click on Browse Testimony
Click on a follow button for an organization like Pythagorean Pizza society

@kiminkim724 Hi Kimin! Thanks so much for the feedback. I made the changes to the PR.


Add support for not-hardcoded flags

Following our discussion in https://github.com/JohnnyMorganz/luau-analyze-rojo/pull/12 this PR adds support for flags that are not hardcoded into luau-analyze-rojo.

Any flag can be specified using --flag:FlagName=value now.
bool and int flags are supported. I think these are the only flag types.
By default luau-analyze-rojo will check for and fail if you use an invalid flag. This can be disabled particularly for automated workflows since flags may change often and a flag being removed typically won't cause problems. For users it's typically a better experience to warn when an invalid flag has been entered.
Flags can be shown by running luau-analyze-rojo --show-flags

Can you fix the luau submodule conflict? It seems that your PR is changing the submodule commit

Should be fixed now!


[BUG]:

Version
6.4.3
What platforms are you having the problem on?
Android
System Version
Android
On what device are you experiencing the issue?
Real device, Simulator
Architecture
Old architecture
What happened?
When the full-screen view is activated, the default controls are shown, and the mobile bottom navigation bar remains visible, even in full-screen mode. To address this issue, consider upgrading the FullScreenPlayerView found under com => brentvatne => exoplayer.
Code Implementation
To enable immersive mode and hide the navigation bar, override the onAttachedToWindow method:
override fun onAttachedToWindow() {
super.onAttachedToWindow()
// Enable immersive mode to hide the navigation bar
window.decorView.systemUiVisibility = (
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
or View.SYSTEM_UI_FLAG_FULLSCREEN
or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_LAYOUT_STABLE
)
if (reactExoplayerView.preventsDisplaySleepDuringVideoPlayback) {
    mKeepScreenOnHandler.post(mKeepScreenOnUpdater)
}

}
Resetting UI Visibility
To reset the UI visibility to default, override the onDetachedFromWindow method:
override fun onDetachedFromWindow() {
super.onDetachedFromWindow()
// Reset UI visibility to default
window.decorView.systemUiVisibility = (
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
)
}
Reproduction
repository link
Reproduction
Step to reproduce this bug are: When the full-screen view is activated

@BilalHadid I don’t think this issue is a bug. Also, I think it’s better to keep the navigation bar visible so users can access functionalities like the back button, minimize, and other features available through the navigation bar.
WDYT? @freeboub @KrzysztofMoch

This is a design choice... RNV should give the flexibility to users (i mean the app) to decide!
So you are both right :)

@freeboub
We can remove the bug label from this issue. I can add a new prop to handle it. What is your opinion?

@seyedmostafahasani @freeboub Thanks, everyone! Could you please check one more thing? When we set fullScreen={true}, the default controls should be hidden. Even though I used the controls prop and set it to false, the default controls are still appearing. Could you look into this?

@BilalHadid, you cannot show custom controllers in full-screen mode. You can only display them in normal mode because the controls for full-screen mode are handled on the native side.
I have a suggestion for implementing a custom controller layout in full-screen mode. Instead of using the setFullScreen or other methods when the user presses the full-screen button, you can handle full-screen on the JS side. Specifically, you can create a new screen, and upon pressing the full-screen button, you can navigate to this new screen. This way, you can have your custom controller in full-screen mode.

I noticed that if you use fullscreen={true} on Android, the status bar becomes black and does not return to its original color after closing the video. This looks like a mistake

I noticed that if you use fullscreen={true} on Android, the status bar becomes black and does not return to its original color after closing the video. This looks like a mistake

It will be fixed in this PR(3914).


Chrome-facilitated testing

Thank you for providing more info about how to access the Chrome-facilitated test labels.

For the duration of Mode A and Mode B we will be introducing a temporary Cookie-Deprecation value ... which will provide the label for the browser's applicable Mode A or B experiment group ... if it falls into one. We will remove this value when the experiment ends.

How far in advance will you label a Chrome instance prior to its cookies being suppressed in the 1% Mode B cohort?
Sec-Cookie-Deprecation: example_label_1
Do we need to monitor the testing page for revisions, such as details of the labels themselves, or will notification come via blink-dev Intent updates?

Requiring all testers to set a Partitioned cookie on every site interaction or to invoke the temporary Promise-based Javascript API seems needlessly complex and wasteful. Just send the labels. Why add impediments to testing?

I appreciate there's some implementation effort on the site side, but it's necessary to ensure sites have control on whether or not they are receiving that data as per: https://developer.chrome.com/docs/privacy-sandbox/chrome-testing/#cookie-deprecation-value:~:text=Accessing labels involves,applies to you.

Yes. Ok.
Your label access via partitioned cookie implementation appears to be complete. The proposed Navigator API to follow soon, presumably.
How about some color regarding the labels themselves. Can you kindly please share a bit beyond example_label_1? Or is this implicitly saying that the labels will be self-evident and trivially parsed?

We now have the details for the label names and percentages available:
https://developer.chrome.com/docs/privacy-sandbox/chrome-testing/#mode-a

Thank you @rowan-m for the follow up. I will review.


Support old GemConnect column mapping arrays

In old GemConnect, tuple class methods like #rdbColumnMapping and #rdbPrimaryKeyMap were expected to answer Arrays of arrays to specify the column to inst var mapping. These column maps objects should really be first class objects with instance variables rather than arrays relying on hard-coded offsets. To address this I added GsPostgresColumnMapEntry, which has inst vars, but does not work with old GemConnect.
To fix this I will make GsPostgresColumnMapEntry a subclass of Array so that the old accessing mechanisms of #at: and #at:put: will still work.

Change code to work with old column map arrays. Add test cases that use the old array style.


I cant select the "Column To Predict"

Hi, I am trying to test and learn ml.net so a followed the tutorial on MS website
A problem encountered on https://dotnet.microsoft.com/learn/ml-dotnet/get-started-tutorial/data
Operating System: windows 10
Visual Studio Version: Community 2019 16.2.3
I am using the example from the link above
It ordered me to download that .tsv file
When I enter the link provided I go to a page with special text format
I save it as .tsv file into the project folder
I choose the right scenario and then I choose File as a source of input
When selecting the file I can't browse to it,
so I tried copying file name, and selecting column didn't work, I tried copying the full directory link of the file, the same problem
I wish you fix the problem or show me a way to do that.
This is the link I used
https://raw.githubusercontent.com/dotnet/machinelearning/master/test/data/wikipedia-detox-250-line-data.tsv
and Thanks!

@dakyion closing this issue due to lack of response. If you're still running into this issue with the latest model builder version please re-open!


Make HttpRequest and Response serializable

This PR makes HTTP requests and responses serializable.
I had a hard time with deserialization because of the host attribute that is never initialized, I removed it. Let's see what is crashing.

ping @xymus

+1


Adds documentation for browser API

Adding some documentation around the browser API since it was missing before.
@ljharb

LGTM


Request for weights

Hello,
Thank you for your work! Could you also upload the weights of your final pre-trained model?
the ones you refer as med_pretrain_29.pth in the readme.
NOTE: CLEF22 is not available anymore since the challenge is complete. It is not possible to easily replicate your experiments.

Sure, you can access it at https://pan.baidu.com/s/11RSXOfHV-EX8EyKF006qog using the code '4blx'. Afterwards, we welcome you to follow our work (https://github.com/pengfeiliHEU/MUMC) that will be presented at MICCAI 2023 this year.

Thanks a lot and congrats for your publication!


[Sugestion] //help?

Is it possible to move all commands from /help and move it to //help ?
It may be kinda stupid but whenever i want to use help it dumps all BuilderTools commands at first and its a bit annoying. If all commands starts as // then maby you could add //help for only BuilderTools ?

Commands //help and //? are client side, so I can't set them. However you can use //commands to display all BT commands.