Set-Cookie response headers lose semantics

Description
When a server returns more than one set-cookie response headers, the response.headers.get('set-cookie') will return one value, where all values are concatenated by commas.
To Reproduce
Steps to reproduce the behavior:

Fetch a URL from a server that returns multiple set-cookie headers, e.g. https://www.dropbox.com
Look at the value of response.headers.get('set-cookie')
When the response looks like this in curl:

set-cookie:  gvc=MjM0MDU4MTU5Nzg3MzE0MzE2Nzk4NTk1MDA0NDkxMTk5NTEzNTc2; expires=Sun, 10 Oct 2027 13:36:25 GMT; HttpOnly; Path=/; SameSite=None; Secure
set-cookie:  t=lTCMMujd5gvO17wv9zPLRrvC; Domain=dropbox.com; expires=Fri, 10 Oct 2025 13:36:24 GMT; HttpOnly; Path=/; SameSite=None; Secure
set-cookie:  __Host-js_csrf=lTCMMujd5gvO17wv9zPLRrvC; expires=Fri, 10 Oct 2025 13:36:24 GMT; Path=/; SameSite=None; Secure
set-cookie:  __Host-ss=jtJon8XHjQ; expires=Fri, 10 Oct 2025 13:36:24 GMT; HttpOnly; Path=/; SameSite=Strict; Secure
set-cookie:  locale=en; Domain=dropbox.com; expires=Sun, 10 Oct 2027 13:36:25 GMT; Path=/; SameSite=None; Secure

you'll notice that response.headers.get('set-cookie') looks like this (line feeds added for readibility):
gvc=MjM0MDU4MTU5Nzg3MzE0MzE2Nzk4NTk1MDA0NDkxMTk5NTEzNTc2;
expires=Sun, 10 Oct 2027 13:36:25 GMT; HttpOnly; Path=/; SameSite=None;
Secure,t=lTCMMujd5gvO17wv9zPLRrvC; ... (rest omitted)

Using a standard cookie parser, it will report that there's a Secure,t cookie, because it is unable to determine that the former is a flag for the first gvc cookie.
Expected behavior
It should be possible to parse the cookies received, either by getting the initial N values for that header or by using a different delimiter.

Doing some debugging reveals that the concatenation happens in https://github.com/adobe/fetch/blob/c55384f2bc26b38dc7d352f3c3f758f53341704b/src/fetch/headers.js#L104-L109
namely in normalizeValue:
https://github.com/adobe/fetch/blob/c55384f2bc26b38dc7d352f3c3f758f53341704b/src/fetch/headers.js#L40-L41
The explicit String cast turns the [5] array in the description above into a string concatenated with commas.

Note that the fetch living standard says the following:

headers . get(name)
Returns as a string the values of all headers whose name is name, separated by a comma and a space.

https://fetch.spec.whatwg.org/#ref-for-dom-headers-get①

I think it would be better / useful to receive the headers list of all values of a multi-header header. eg:
response.headers.getAll(name) -> string[]

or entries() could return the header multiple times`
response.headers.entries() -> [ ['set-cookie', 'a'], ['set-cookie', 'b'] ]

or exposing https://fetch.spec.whatwg.org/#concept-header-list
response.headerList -> ?

Known issue with Fetch implementations, see e.g.
https://github.com/node-fetch/node-fetch/issues/251
https://github.com/node-fetch/node-fetch/issues/582

as far as I understand, https://github.com/node-fetch/node-fetch/pull/253/files adds multi-headers as array for headers.raw(). so this could be done here as well for headers.plain() ?

so this could be done here as well for headers.plain() ?

yes, that's the plan. need to change the internal representation though.

BTW

The explicit String cast turns the [5] array in the example above into a string concatenated with commas.

That's in fact exactly what the browser (Chrome) does:
const h = new Headers()
undefined
h.append('x-cookie', ['foo=1', 'bar=2'])
undefined
h.get('x-cookie')
'foo=1,bar=2'


[WIP] Support nested mutations when auto generated numeric ids are used

superseded by https://github.com/prismagraphql/prisma/pull/2647


377 variability mode nao

Work in progress for merging the modes variability code to the master. Please do not merge yet. The PR is not ready for merging until told by myself.

Pull Request Test Coverage Report for Build 1372

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

Totals

Change from base Build 1348:
0.0%

Covered Lines:
3256

Relevant Lines:
4242

💛  - Coveralls

@muryanto1 I think the code is ready for merging, could you please take a look when you have time? Thank you very much!

@muryanto1 thank you for reviewing the PR.

doc directory is for parameter files that serve as a namelist example, collecting user given options such as directory to find input data. Thoes parameter codes are not running by themselves but always working with *py in scripts directory.
I agree directory name could be better name than 'doc'. But at the moment what I need to be done is placing code in the master branch for PCMDI SFA proposal, so I will think about it later.

@gleckler1  MoV code is in master now. As we discussed earlier we will need to work on documentation, usage example, and test suites.


Handle policy merges when directives do not inherit from default-src

Previously, non default source values would be merged with the default-src value which makes no sense. This was especially confusing if your default-src was * or 'none'
I'm going to wait until I confirm that plugin-types is a non-default source directive. The spec does not mention it explicitly, and I've submitted https://github.com/w3c/webappsec/pull/510 in case my hunch is correct.

Confirmed, plugin-types is a non-default-src directive. More clearly, default-src only applies to things governed by fetch.


Interstate 75 Pixel Mapping

Is there a way to map pixels to the LED panel?
I've used pixelmatrix's SmartMartix with the Teensy and there is a Matrix Panel Map Definitions file that's used to remap pixels.  The LED board that I'm using starts at 0, 8 when addressing 0, 0.
{0, 8,  8}, {0, 24, 8}, {0, 40, 8}, {0, 56, 8}, {4, 0,  8}, {4, 16, 8}, {4, 32, 8}, {4, 48, 8},
I just wanted to know if there would be a place to add this rather than having to program my own mapping.
*Or if there is already a way to do this and missed it.
Thanks

Pixel mapping is currently not supported, but does happen implicitly in set_color so it might be possible to expand upon this: https://github.com/pimoroni/pimoroni-pico/blob/9fafa3edb1e6721a8e3c727e27033220c6697711/drivers/hub75/hub75.cpp#L79-L90
Right now pixels are laid out in memory in the right order for the panel, so rows from the top and bottom half are interleaved:
1, 2, 3, 4, 5, 6, 7, 8
becomes:
1, 5, 2, 6, 3, 7, 4, 8
Passing mappings in from Python and dealing with SmartMatrix's weird (but admittedly very nicely compressed for the job) mapping format would both be quite complicated and potentially hurt draw performance. This library was written with two goals: support the panels we sell, and be fast, and I'd ideally want to avoid compromising on those.
As such I'm biased toward making the assumption that there can't be that many unique panel types and mappings, and think using PanelType to change to the appropriate mapping would make sense.
In fact it looks like SmartMatix has been around in one form or another since 2014 and only collected a handful of panel types - https://github.com/pixelmatix/SmartMatrix/blob/master/src/MatrixPanelMaps.cpp
So the linked code might become something like:
void Hub75::set_color(uint x, uint y, Pixel c) {
    int offset = 0;
    if(panel_type == PANEL_SOME_GOOD_NAME_FOR_PLATINUM_FUSIONS_PANEL) {
        // remap x/y here
    }
    if(x >= width || y >= height) return;
    if(y >= height / 2) {
        y -= height / 2;
        offset = (y * width + x) * 2;
        offset += 1;
    } else {
        offset = (y * width + x) * 2;
    }
    front_buffer[offset] = c;
}

And for your particular panel, you'd pass in the right Panel Type to have it mapped correctly.
Looks like your mapping is this?:
const PanelMappingEntry panelMap32x16Mod4V3[] =
{
    {0, 8, 8},
    {0, 24, 8},
    {0, 40, 8},
    {0, 56, 8},
    {4, 0, 8},
    {4, 16, 8},
    {4, 32, 8},
    {4, 48, 8},
    {0, 0, 0} // last entry is all zeros
};

It's not clear to me how this mapping actually works, and the more I look at the documentation - https://github.com/pixelmatix/SmartMatrix/wiki/Multi-Row-Panels -  the less I understand. It's clearly Monday!
It looks like this mapping format is fairly fundamental to how SmartMatrix works and pretty antithetical to how Interstate75 works, so we'd have to come up with our own approach that just fudges the pixel X and Y coordinates before they are turned into a buffer offset. I'd also like to add double-buffering into the Interstate 75 library, too, so this may help or hinder mapping efforts or possibly give us an opportunity to be somewhat compatible with the SmartMatrix approach and format.
I don't think we're likely to support this soon so if you do write your own high level mapping in the interim, please let me know how you get on!

https://github.com/hzeller's library https://github.com/hzeller/rpi-rgb-led-matrix got some pixel mappers in https://github.com/hzeller/rpi-rgb-led-matrix/blob/master/lib/pixel-mapper.cc. The're also quite compact and versatile, especially when is use with multiple boards chained. Maybe that helps?


dggrid 8.3

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Reset the build number to 0 (if the version changed)
[x] Ensured the license file is being packaged.
new package version

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.


Feature Request: Enhance Deserialization Error Messages with Document Path

We have recently migrated one of our services to Rust and integrated it with your library. I must say, we are very pleased with the structure and usability it provides, especially adding the id and created_at into the document itself.
However, we have encountered a challenge that we believe could significantly improve the developer experience if the firestore is already field with bunch of production data. We are spending a considerable amount of time tracking down documents with missing fields, as the current error messages lack context about the document id.
Current Error Message
Error: DeserializeError(FirestoreSerializationError {
    public: FirestoreErrorPublicGenericDetails { code: "SerializationError" },
    message: "missing field `apiKey`"
})

Proposed Enhancement
Could the deserialization errors include the document path or ID? This additional information would be incredibly useful in quickly identifying and addressing problematic documents.
I can see that the document ID is parsed from the initial proto structure before the document data reaches the deserialization function. Therefore, could you consider adding the document ID or path as a parameter in the error logs?
Benefits

Improved debugging and monitoring capabilities.
Enhanced developer experience by reducing time spent on error tracing.
Easier migration the existing services to Rust :)

Hey,
I improved the serialization messages with additional document path in
https://github.com/abdolence/firestore-rs/releases/tag/v0.42.0
Let me know if it doesn't work or you have other issues with it.


The One With Hooks

I finally did it.

My understanding is setting mode to production achieves that result, not externals. See the last paragraph here.

Production mode is definitely required, but I don't think it will do anything to externals since externals are not included in the outputted bundle. They are unprocessed by Webpack.
 See #2292 which uses this branch as a base.


Fix/cs 28220

okay @netrajpatel, let me check that

Hi @netrajpatel, I have added the sonarlint fix

@abhinav-from-contentstack , lets connect on this PR
CC: @netrajpatel

@abhinav-from-contentstack Can you please run sonar scan and resolve sonar issues if any?

Hi @netrajpatel, I have added the sonarlint fix


Unable to run unit tests from folder with space in path

I'm trying to run some unit tests for a package library project in IntelliJ, but the test suite fails due to the test folder being in a location that has a space in it's path.
IntelliJ IDEA 2018.1.4 (Community Edition)
Build #IC-181.5087.20, built on May 17, 2018
JRE: 1.8.0_152-release-1136-b39 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.13.2
Dart plugin Version: 181.4892.1
Dart VM version: 2.0.0-dev.60.0 (Mon Jun 4 22:09:13 2018 +0200) on "macos_x64"
Starting the test runner fails with the following error:
Testing started at 12:22 ...
/usr/local/opt/dart/libexec/bin/dart --enable-vm-service:50925 /usr/local/opt/dart/libexec/bin/snapshots/pub.dart.snapshot run test -r json /Users/.../Library/Mobile Documents/com~apple~CloudDocs/_projekt/_experiments/optional/test/optional_test.dart
Observatory listening on http://<IP_ADDRESS>:50925/
Failed to load "/Users/.../Library/Mobile": Does not exist.
Note the space in the "Mobile Documents" folder name.
Thanks!

I suppose this is an IDE issue. Posted the issue also to JetBrains issue tracker.

@weenzeel can you please cross-link the GitHub and Youtrack issues?

This is also tracked in JetBrains WEB-33251.

This is noted to be fixed in the IntelliJ plugin by this commit. Haven't tested though.

Closing as it is fixed in the Dart Plugin master branch.


VarianceScaling fails to handle Dimension() contained in Conv layer initializer shape

I'm running a basic Inception module on MNIST data, and running into an incompatibility in the shape parameter that is built in order to pass to the initializer of a Conv2d layer.
I'm not sure if something in my usage is incorrect, or if this is genuinely a bug.
TL;DR
initializers.py, line 204, in __call__
    scale /= max(1., float(fan_in + fan_out) / 2)
TypeError: float() argument must be a string or a number, not 'Dimension'

Summary

My input is defined Tensor("input_1:0", shape=(?, 28, 28, 1), dtype=float32)
Layer.__call__() uses the _keras_shape attribute of the tensor to form input_shapes = [(None, Dimension(28), Dimension(28), Dimension(1))], i.e. wrapping the integer dimensionalities with a Dimension :heavy_check_mark:
Then _Conv.build() creates kernel_shape = (1, 1, Dimension(1), 64) :question:
Finally VarianceScaling.__call__() tries to use this shape in doing scale /= max(1., float(fan_in + fan_out) / 2), and fails :x:

Setup
Keras 2.0.8
Backend: Tensorflow 1.3.0
Traceback
Using TensorFlow backend.
DEBUG:root:x_train[0].shape = (28, 28), y_train[0].shape = ()
Backend TkAgg is interactive backend. Turning interactive mode on.
Traceback (most recent call last):
  ...
  File "...\testKerasFunctional.py", line 70, in run
    inception = inception_module(input_img)
  File "...\testKerasFunctional.py", line 47, in inception_module
    return concatenate([tower_1(input_img), tower_2(input_img), tower_3(input_img)], axis=1)
  File "...\testKerasFunctional.py", line 30, in conv_tower
    first_layer = conv2d_of(1)(input_img)
  File "...\keras\engine\topology.py", line 575, in __call__
    self.build(input_shapes[0])
  File "...\keras\layers\convolutional.py", line 134, in build
    constraint=self.kernel_constraint)
  File "...\keras\legacy\interfaces.py", line 87, in wrapper
    return func(*args, **kwargs)
  File "...\keras\engine\topology.py", line 396, in add_weight
    weight = K.variable(initializer(shape),
  File "...\keras\initializers.py", line 204, in __call__
    scale /= max(1., float(fan_in + fan_out) / 2)
TypeError: float() argument must be a string or a number, not 'Dimension'

Possibly related
#7687

Could you give a minimal reproduced test case?

@facaiy please take a look at https://github.com/InonS/Open-GPGPU-ANN/blob/sub-packages/testKerasFunctionalMinimal.py

Thanks, @InonS .
Since tensorflow uses Dimension to represent its shape, which is unsupported in keras now. You can cast it explicitly like:
    img_width, img_heigth, n_channels = x_train[0].shape.as_list()

Does it solve your problem? Or, the issue is a feature request?

Both, I guess. I've already read somewhere of a need to use as_list(), but I think ideally, Keras should discern the shape from the backend without need for additional transformations, right?


Reorganized structure and filled in examples to use Aiven for M3

What changed, and why it matters

Reorganized and reworded structure of the overview (as suggested here: https://docs.google.com/document/d/10rKMD3Y-eSU55FtxH53LzONbAgm5UdwQP3XXbX8SxcU/edit)
Added concrete examples of implementations
Standardized the naming (product name Aiven for M3).

Fixes #77


Add OpenSSL as an alternative TLS implementation

This PR adds OpenSSL to the supported TLS implementations one may choose when building seastar. To enable this use the compile time switch Seastar_WITH_OSSL. This in turn compiles in the implementation file ossl.cc instead of tls.cc. The latter being the original implementation with GnuTLS, the former being all of the new code within the PR.
The PR is constructed to not have modified any code in tls.hh. This means that any consumers of the existing TLS interfaces will not need to make any modifications when the OSSL switch is enabled. Also some common code that would be shared between both implementations has been moved to tls-impl.hh within the source directory.
Not having both implementations compiled in was a design choice, most notably for the FIPS project, where it is stated that there can be no non-cyptographic approved methods that may be used by redpanda. A notable exemption is that GnuTLS is still compiled in because of one small use in a tls header. A separate PR to change this and completely surround the build/link of GnuTLS will be in a separate PR

Opening as a draft as I have left in some logging statements for testing temporarily

Changes in force-push

Fixed compilation error that is observed when OSSL switch is off

do the existing seastar tls tests now work with both openssl and gnutls?

There are some holes that need to be filled, mainly around completing the certificate_credentials::impl class.

@dotnwat @michael-redpanda So I opened the PR as a draft because there are quite a few "holes" in the implementation. Notably whatever wasn't immediately needed to get a quick demo up and running wasn't implemented, but the method implementations needed to exist to get the code to compile.
I'm wondering if it would be better to just remove the bits of code that aren't relevant to the core objective of this ticket (phase 1, getting simple SSL server working in seastar) even if that means the code won't compile when the OSSL switch is enabled. The project will still compile because by default this switch is off.
The idea is that later on we can open more frequent smaller PRs for the missing work.

I'm wondering if it would be better to just remove the bits of code that aren't relevant to the core objective of this ticket (phase 1, getting simple SSL server working in seastar) even if that means the code won't compile when the OSSL switch is enabled. The project will still compile because by default this switch is off.
The idea is that later on we can open more frequent smaller PRs for the missing work.

I think that's ok as long as it's annotated as such, e.g. a comment either in the PR or in the CMakeLists.txt that says "dont' touch this big red button yet".

Is the target branch here intended to be 23.3? I would have expected 24.2?

After looking at the tests one other thing is standing out preventing them from passing, they all instantiate a TLS client, which is unimplemented at this phase. It is slated for completion in phase 3: redpanda-data/core-internal#1092

What code in this PR (other than the existing TLS code that was moved) is expected to be "live" and how would one use Seastar or Redpanda in a way that exercised it?

@michael-redpanda do you know the answer to this question

What code in this PR (other than the existing TLS code that was moved) is expected to be "live" and how would one use Seastar or Redpanda in a way that exercised it?


[Vaults] Restrict access to conversations and messages

Description
Fixes https://github.com/dust-tt/dust/issues/6903
Left a few comments on the PR for reviewers to check.
Now that agents have ACLs, conversations and messages should be restricted to users that have access to the related assistants.
Restriction is implemented on conversations by:

checking if any of its agent messages shouldn't be accessed by the user. ACLs are naturally present on agent messages via their attached agent configuration's groupIds.
in cases where we don't have access to all the messages of a conversation, checking conversation access via a new function canAccessConversation,  relying on conversation participants---that will now return an error if one of the agents or more is not accessible to the user;

Summary:

checked all references to AgentMessage and Message models (details below) and acted where needed
changed getConversation to a Result with ConversationPermissionError / ConversationNotFoundError

wrapped conversation api errors in a dedicated function, drying quite a bit

did the same with getConversationWithoutContent, further drying
double-check: all endpoints, and references to Conversation

Risk
Latency
Some calls become more heavy due to the addition of a canAccessConversation call relying on fetchConversationParticipants and as such making 2 additional database queries. The calls are indexed and query results are ~small volume, but still worth monitoring. This is the cost of checking per-conversation in addition to per-messages.
Testing
Test scenarios:

with allowed agents, all below should work

UX

start a convo :heavy_check_mark:
read a convo :heavy_check_mark:
post a message to a convo :heavy_check_mark:
destroy a convo :heavy_check_mark:

API v1

start a convo,
read a convo,
post a message to a convo,
destroy a convo

with unallowed agents, all below should fail

start a convo (only API v1)
read a convo (both UX and v1) :heavy_check_mark:
post a message to a convo (only v1)
destroy a convo (only v1)

Deploy Plan
test on front-edge
front

Left a few comments, but thinking more about it I think we want to bite the bullet and bubble up groups on the conversation object.

Good points, but would like to discuss. I had been unclear and this helped me clear my mind, see below.

The code to compute the new groups in postUserMessage would be 3 lines. We have a transaction ready to receive that mutate on the conversation object that we can do in parallel of creating the messages/agent_messages/user_messages/mentions
Why?
You introduce 2 ways here to decide if we can see a conversation to optimize. This is a weakness as 2 flows to enforce a critical security feature is a foot gun.

2 flows for the same purpose would be an issue, especially if it's solely to optimize, I agree. But here there are two separate, arguably unrelated flows:

checking for access on messages;
checking for access on converations.

What I wrote in my PR description was unclear and misguided, leaving to believe that messages check was a way of optimizing conversation check. I apologize for the lack of clarity. I think we should in any case do both checks, independently of each others.
In particular, we should enforce auth on messages, via message-related functions that take auth as arg. Removing this would be a footgun too; future us will reuse those functions, ACLs on messages are very clearly defined, more than on conversations.
Regarding the fact that one flow is used to optimize the other:
The only situation in which messages are used to optimize conversation check is on getConversation. It could be avoided and we could use the regular canAccessConversation to do that instead, to completely separate the two flows. It would not be an issue because getConversation is already heavy since it grabs all content.
If we did this the flows would become completely separate. I reckon I did the optimization because it was here right under my nose, but it's not really needed and i'm fine to discard it for the purpose of clarity.

Checking if a conversation is accessible should be trivial

I think it is already trivial, it's calling a function named as described

and ideally instantaneous so that we never ever hesitate checking it.

I reckon it's a good point; it is true that here we add a db read when grabbing a conversation. But the converse, adding a DB write when we post a message, does not seem better to me since more messages are posted than conversations grabbed. IMO it's not that much of a heavy call, but let's say it was: if  parallelization could be done too on the db read, e.g. with @flvndvd proposal of wrapping, would that help the current solution?
In ~all actual cases, we did have to check it so we wouldn't hesitate anyway. The call is not that heavy.

Downside:

1 more write at message creation but done concurrently (security benefits trump this IMHO)

Risk of getting out of sync (~impossible if placed in transaction)

Personally scared of the out of sync risk, the transaction locally prevents some issues but in our wide complex system other problems can arise; needing sync can result in compounded complexity hard to anticipate.

Upside:

Trivial to use and non block canAccessConversation improving our safety

IMO canAccessConversation is already trivial to use. I agree the blocking part is a tradeoff that we can discuss

Given all that I feel like this is highly desirable to bubble up.

Let's have a quick final chat IRL to decide

Fairly surprise that we need to update that many different places. They all seem to have in common the Conversation.findOne(). Any chance we could have a wrapper around this and check the permissions there?
Having to add the canAccessConversation check in 8+ different places does not seem very robust.

Interesting, TBD IRL along with @spolu 's points

Checking if a conversation is accessible should be trivial

I think it is already trivial, it's calling a function named as described

Sorry by trivial I meant costless so that there is no friction.

getConversation is already heavy since it grabs all content.

We thrive to make it lighter not heavier the fact that it's already heavy is not a good reason IMHO to make it heavier :)

In ~all actual cases, we did have to check it so we wouldn't hesitate anyway. The call is not that heavy.

In the current implementation I would hesitate using it give the added cost of the call.

Personally scared of the out of sync risk, the transaction locally prevents some issues but in our wide complex system other problems can arise; needing sync can result in compounded complexity hard to anticipate.

Can you unpack your FUD because this is just FUD here. The only place that impacts the groups is the addition of a UserMessage no?
On the two flows:
It's not clear to me that we want to build right away a message level ACL. This might be desirable defense in depth in the future but right now everything flows through a conversation (messages are not shareable etc..). Less code is more with security IMHO.

We thrive to make it lighter not heavier the fact that it's already heavy is not a good reason IMHO to make it heavier :)

If it was a lot heavier I'd agree. Here, it's marginally heavier only VS the size of the call, fetching the whole convo. And when we want a light call there's getConvoWOContent

In ~all actual cases, we did have to check it so we wouldn't hesitate anyway. The call is not that heavy.

In the current implementation I would hesitate using it give the added cost of the call.

We can make the call lighter an parallelize. The DB write in postUserMessage has a cost too, and is more frequent than the conversation check

Personally scared of the out of sync risk, the transaction locally prevents some issues but in our wide complex system other problems can arise; needing sync can result in compounded complexity hard to anticipate.

Can you unpack your FUD because this is just FUD here. The only place that impacts the groups is the addition of a UserMessage no?

It is indeed admittedly fud: compounded complexity hard to anticipate so tough to unpack; if you disagree on the fact that this kind of sync is bad long term for our codebase, I trust your judgment since mine is at this time only intuition

On the two flows:
It's not clear to me that we want to build right away a message level ACL. This might be desirable defense in depth in the future but right now everything flows through a conversation (messages are not shareable etc..). Less code is more with security IMHO.

Let's discuss, IMO it's a simple  costless natural check, and avoids a footgun for every coder that will decide to use the xxxMessage(auth,yyy) function

Let's continue the discussion IRL tomorrow morning :+1: :+1:

Related decision: https://github.com/dust-tt/decisions/issues/250
As per IRL discussion at 16:30, we move towards denormalization : conversations will get a groupIds
PR to be adapted accordingly

Closing, adapted PR with follow-up work is on  #7746


“Kestrel doesn't support HTTP/2 with TLS on macOS”

Perhaps this information is out of date?
The page says
   “Kestrel doesn't support HTTP/2 with TLS on macOS” ...
   “You'll see the following error message when you attempt to start the gRPC server:”
On
   macOS Ventura 13.1,
I just created a new project (in Rider) from the template
   ASP.NET Core Web Application
of type
   gRPC Service
Then I ran it in the debugger and there seemed to be no problem.  Here is the console output:
info: Microsoft.Hosting.Lifetime[14]
      Now listening on: http://localhost:5000
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
      Content root path: /Users/yost/Desktop/fs/csharp/ASPGrpcService

Also, the code created by the template says this:
// Additional configuration is required to successfully run gRPC on macOS.
// For instructions on how to configure Kestrel and gRPC clients on macOS, visit https://go.microsoft.com/fwlink/?linkid=2099682

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

ID: c730b5f9-031e-beab-b838-6e2f8befde30
Version Independent ID: 84ddcb67-03be-655c-470a-f43a5152606f
Content: Troubleshoot gRPC on .NET Core
Content Source: aspnetcore/grpc/troubleshoot.md
Product: aspnet-core
Technology: aspnetcore-grpc
GitHub Login: @JamesNK
Microsoft Alias: jamesnk

@daveyostcom thanks for bringing this to our attention.

Kestrel doesn't support HTTP/2 with TLS on macOS

This is still true. @daveyostcom your app started without TLS.


Provide better hang diagnostics in service tests

Is your feature request related to a problem? Please describe.
The check_transcripts tests, and other similar tests, use a Buffer to wrap their state and verifier services.
Since we use Buffers with a bound of 1, if a caller issues a poll_ready, but delays issuing the corresponding call, the service can hang. But there is no explanation for these hangs in the test code.
Describe the solution you'd like
Document what to do if the tests hang - check that the calling services correctly use poll_ready/call:

[ ] zebra_consensus::block::tests::check_transcripts
[ ] zebra_consensus::chain::tests::* - use a module-level doc comment
[ ] zebra_consensus::checkpoint::tests::* - use a module-level doc comment
[ ] zebra_consensus::primitives::redjubjub::tests::* - use a module-level doc comment
[ ] zebra_test::transcript - use a module-level doc comment

Call services using ServiceExt::oneshot, rather than ready_and:

[ ] zebra_consensus::block::tests::check_transcripts
[ ] zebra_consensus::chain::tests::*
[ ] zebra_consensus::checkpoint::tests::*
[ ] zebra_consensus::primitives::redjubjub::tests::* - if possible
[ ] zebra_test::transcript::Transcript::check - if possible

See #1593 for details.
Add a TimeoutLayer to all the services in:

[ ] zebra_consensus::block::tests::check_transcripts
[ ] zebra_consensus::chain::tests::*
[ ] zebra_consensus::checkpoint::tests::*
[ ] zebra_test::transcript::Transcript - if possible

See:
https://docs.rs/tower/0.4.4/tower/builder/struct.ServiceBuilder.html#method.timeout
Create all services in a function at the top of the test file, using a ServiceBuilder:

[ ] zebra_consensus::block::tests::check_transcripts
[ ] zebra_consensus::chain::tests::*
[ ] zebra_consensus::checkpoint::tests::*

For an example, see:
https://github.com/ZcashFoundation/zebra/blob/4c960c4e6df05a7ecbc4fb0c5e9f2f0c2a531459/zebra-consensus/src/chain/tests.rs#L66-L68
Add tests:

[ ] zebra-test/tests/transcript.rs - test a Buffered service with a small bound, but a large number of transcript messages

Describe alternatives you've considered
Do nothing. Hangs in these tests will be more difficult to diagnose.
Additional context
See #1593 for the overall Buffer hang issue, analysis, and design patterns.

We should make these diagnostic changes as needed to the tests.
The underlying issues seem to have been fixed.


Column series with no spacing between columns

I am trying to use Live-Charts to make a histogram using a column series. I can't figure out how or if it is even possible to remove the spacing between columns. I am just using the example code a basic column chart. The chart works fine, but how can I remove the padding between the columns? Thanks!

Not possible for now, this is the result I got:

for now you can increase the columns with using the MaxColWidth property:
            new ColumnSeries
            {
                Values = //...
                MaxColumnWidth = double.PositiveInfinity
            }

I will fix the padding issue in next release

Thanks for the quick feedback!
Next release sounds good. Looking through the code, I found
const double padding = 5;
at https://github.com/beto-rodriguez/Live-Charts/blob/master/Core/SeriesAlgorithms/ColumnAlgorithm.cs
Maybe that's the culprit.

yeah, that is what is wrong, adding  new property ColumnPadding
       new ColumnSeries
        {
            Values = //...
            MaxColumnWidth = double.PositiveInfinity,
            ColumnPadding = 0
        }

then replacing the line you pointed with:
double padding = ColumnWidth;

should solve the issue

The previous commit f fixes this for the 4 cases, Columns, Rows, StackedColumns and StackedRows series
Columens and StackedColumns
new ColumnSeries
    {
        MaxColumnWidth = double.PositiveInfinity,
        ColumnPadding = 0
    }

Rows and StackedRows
new RowSeries
    {
        Values = //...
        MaxRowHeight = double.PositiveInfinity,
        RowPadding = 0
    }


fix: broken links

after the docs site was updated, some links were broken. Updated those links.

LGTM Merging.
Thanks @devvaannsh


Removing a Slice not beautiful

Now when I need to remove a slice I got a short duration for white before the slice behind the removed slice run to the place.
So I should make a progress for this issue! :P

@GeneralZYQ  did you have the same issue lke this below?
https://github.com/xyfeng/XYPieChart/issues/80


feat(i18n): Setup ngx-translate in rxjs-docs

Setup ngx-translate with English and Russian languages
Add language service
Create language menu
Add unit tests

Codecov Report

Merging #267 into master will increase coverage by 2.76%.
The diff coverage is 90.69%.

@@            Coverage Diff            @@
##           master    #267      +/-   ##
=========================================
+ Coverage   77.14%   79.9%   +2.76%
=========================================
  Files          15      17       +2
  Lines         175     214      +39
  Branches        7       9       +2
=========================================
+ Hits          135     171      +36
- Misses         40      41       +1
- Partials        0       2       +2

Impacted Files
Coverage Δ

src/app/core/data/language.data.ts
100% <100%> (ø)

...c/app/core/components/toolbar/toolbar.component.ts
92.85% <100%> (+7.14%)
:arrow_up:

src/app/app.component.ts
62.06% <83.33%> (+4.37%)
:arrow_up:

src/app/core/services/language.service.ts
89.28% <89.28%> (ø)

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 621c41d...584e008. Read the comment docs.

Looks pretty good. Thanks for the PR. Just a short question, how is this pr related to #144?

@JWO719 It's a replacement for #144

Ok get it. Thank you

🤗 y'all! this is amazing!

I'll follow up with the Chinest translation.


Improve documentation

SYS06-Documentation should include

Usecase
How to use the image with IDE
How the docker setup is current version is
Changelogs

#6 Added the documentation for initial release in this PR.


Clarify use of hugo server in Quick Start Guide (was "Does hugo work for normal hosting sites?")

Does hugo work for normal hosting sites, ie, those sites that offer static html, or dynamic php/mysql hosting? They normally will only give you (s)ftp access. hugo will not work for such home-page hosting sites right?

Hugo works especially well on these hosted platforms.

Oh, thanks. In that case, please update either of the following articles, because I only have the impression that "Hugo contains its own ... web server.
Hugo Quickstart Guide
http://gohugo.io/overview/quickstart/
Hugo Installation Guide
http://gohugo.io/overview/installing/
thanks

Hello @suntong001!
But it does mention on the very first page of the documentation, i.e. http://gohugo.io/overview/introduction/:

Technically speaking, Hugo is a static site generator.

That said, our documentation does always have room for improvement, and welcome any contributions that would improve its clarity and remove obstacles for our newcomers.  Would you like to kindly make the necessary edits and submit a Pull Request?  万分感谢！ :pray:
Welcome aboard!

More questions? http://discuss.gohugo.io/

In light of @suntong001's suggestion, as well as questions like the following popping up on our discussion forum:

http://discuss.gohugo.io/t/hugo-website-deployment/388
http://discuss.gohugo.io/t/after-using-hugo-server-do-i-need-to-run-hugo-before-deploying/601
http://discuss.gohugo.io/t/how-to-upload-my-hugo-blog-from-localhost-to-my-server/709

that are more or less related to URLs with http://localhost:1313/ not working on a public web server, perhaps some kind of clarification in our docs may help remedy the situation.
For example, perhaps adding phrases like "development server" like on http://jekyllrb.com/docs/usage/ would help.  While hugo server is certainly capable on a production server, I would say that 99% of Hugo users would prefer to use Apache, Nginx or Lighttpd to serve their static website.

I don't like the term "development server" as it connotes that it's not ready for production usage... as is the case with Jekyll.
Hugo's server is more than powerful enough for production usage and I know of a lot of people using it as such... especially when using it with more powerful needs or when using it with Docker.
I agree we need some clarification. People are just so used to wordpress and the like and are not familiar with our new approach to things where server isn't needed (it's just static files).

Good point you have there, @spf13.  We should
About a week ago, I actually answered a question at http://discuss.gohugo.io/t/hugo-website-deployment/388/11 about using hugo server as a production web server on port 80:

hugo server runs an actual built-in web server, normally on port 1313, but you may set it to anything, even port 80.  With that, you don't even need to have Apache running, and just run:
$ sudo hugo server --watch --baseUrl=http://yoursite.org/ --port=80 --appendPort=false

Note:

Run hugo server -h to see a description of all these options.
sudo alert!  Need to be root to serve at port 80.

Running hugo server this way, the links will point to "http://yoursite.org/" rather than to "http://localhost:1313/".  Yes, you must specify --baseUrl on the command-iine for this use case.  You might want to add --disableLiveReload=true too, as otherwise all your webpages will have the LiveReload JavaScript snippet attached, not only for you, but also for all visitors.

I do have a question myself: Did I give the right command?  It actually took me several minutes of reading hugo server -h as well as trial and error before I came up with that whole command line, and apparently, I need at least all three of --baseUrl, --port and --appendPort for hugo server to work properly as a "production web server".  It was not too trivial to arrive at that to get hugo server work like e.g. Nginx, especially its use was not spelled out in the official documentation.
I can't help to think: there must be an easier way to this, perhaps by adding a new option called e.g. --production which would use the baseurl setting from config.toml, and automatically set --port 80 --appendPort=false and perhaps --disableLiveReload=true too.  What do you think?

correct and I agree, we should make a shortcut to make this easier.
Steve Francia
spf13.com
@spf13

On Feb 17, 2015, at 2:54 AM, Anthony Fok<EMAIL_ADDRESS>wrote:
Good point you have there, @spf13. We should
About a week ago, I actually answered a question at http://discuss.gohugo.io/t/hugo-website-deployment/388/11 about using hugo server as a production web server on port 80:
hugo server runs an actual built-in web server, normally on port 1313, but you may set it to anything, even port 80. With that, you don't even need to have Apache running, and just run:
$ sudo hugo server --watch --baseUrl=http://yoursite.org/ --port=80 --appendPort=false
Note:

Run hugo server -h to see a description of all these options.
sudo alert! Need to be root to serve at port 80.

Running hugo server this way, the links will point to "http://yoursite.org/" rather than to "http://localhost:1313/". Yes, you must specify --baseUrl on the command-iine for this use case. You might want to add --disableLiveReload=true too, as otherwise all your webpages will have the LiveReload JavaScript snippet attached, not only for you, but also for all visitors.
I do have a question myself: Did I give the right command? It actually took me several minutes of reading hugo server -h as well as trial and error before I came up with that whole command line, and apparently, I need at least all three of --baseUrl, --port and --appendPort for hugo server to work properly as a "production web server". It was not too trivial to arrive at that to get hugo server work like e.g. Nginx, especially its use was not spelled out in the official documentation.
I can't help to think: there must be an easier way to this, perhaps by adding a new option called e.g. --production which would use the baseurl setting from config.toml, and automatically set --port 80 --appendPort=false and perhaps --disableLiveReload=true too. What do you think?
—
Reply to this email directly or view it on GitHub.

@anthonyfok @spf13 just to clarify: Is the recommendation for the time being to simply specify port 80? Or is there an elegant way to have nginx do a proxy_pass to the application running on another port and avoid printing port numbers in rendered hrefs?

I think I answered my question by giving another try: --appendPort=false works for what I'm looking to do. Thanks!

See also #937
(Hope to find time to work on the documentation in a week or two.)

But it does mention on the very first page of the documentation, i.e. http://gohugo.io/overview/introduction/:

Technically speaking, Hugo is a static site generator.

This appears to be the google juice that helped me find hugo, but it was very frustrating to then try and work out how to use hugo as just a static site generator, without the built-in webserver.
Surely I can't be the only one in this situation? I genuinely think the ability to use it as just a generator should be far more heavily emphasised in your documentation.

Would it help to add some text that describes the difference between "hugo server" and plain old "hugo"? Many of the questions that I've seen on the forums boil down to overlooking the lightly-documented hugo-with-no-command command.
Web site generators render content into HTML files. Most, like Wordpress,
Ghost, and Drupal, are "dynamic site generators." That means the HTTP
server (which is the program running on your website that the user's
browser talks to) runs the generator to create a new HTML file
each and every time a user wants to view a page.
Creating the page dynamically like this means that the computer hosting
the HTTP server has to have enough memory and CPU to effectively run
the generator around the clock. If not, then the user has to wait
in a queue for the page to be generated.
Nobody wants uses to wait longer than needed, so the dynamic site
generators programmed their systems to cache the HTML files. When
a file is cached, a copy of it is temporarily stored on the computer.
It is much faster for the HTTP server to send that copy the next time
the page is requested than it is to generate it from scratch.
Hugo takes cacheing a step further. All HTML files are rendered on your
computer and then copied to the computer hosting the HTTP server.
Since the HTML files aren't generated dynamically, we say that Hugo
is a "static site generator."
Not running a web site generator on your HTTP server has many benefits.
The most noticeable is performance - HTTP servers are very good at
sending files. So good that you can effectively serve the same number
of pages with a fraction of the memory and CPU needed for a dynamic site.
Hugo has two components to help you build and test your web site. The
one that you'll probably use most often is the built-in HTTP server.
When you run hugo server, Hugo renders all of your content into
HTML files and then runs a HTTP server on your computer so that you
can view them.
The second component is used when you're ready to publish your web
site to your HTTP server. Running Hugo without any actions will
rebuild your entire web site using the baseurl setting from your
site's configuration file. That's required to have your page links
work properly with most hosting plans.

Please add this to the docs. It's fantastic.
Steve Francia
spf13.com
@spf13

On Apr 1, 2015, at 11:33 PM, Michael Henderson<EMAIL_ADDRESS>wrote:
Would it help to add some text that describes the difference between "hugo server" and plain old "hugo"? Many of the questions that I've seen on the forums boil down to overlooking the lightly-documented hugo-with-no-command command.
Web site generators render content into HTML files. Most, like Wordpress,
Ghost, and Drupal, are "dynamic site generators." That means the HTTP
server (which is the program running on your website that the user's
browser talks to) runs the generator to create a new HTML file
each and every time a user wants to view a page.
Creating the page dynamically like this means that the computer hosting
the HTTP server has to have enough memory and CPU to effectively run
the generator around the clock. If not, then the user has to wait
in a queue for the page to be generated.
Nobody wants uses to wait longer than needed, so the dynamic site
generators programmed their systems to cache the HTML files. When
a file is cached, a copy of it is temporarily stored on the computer.
It is much faster for the HTTP server to send that copy the next time
the page is requested than it is to generate it from scratch.
Hugo takes cacheing a step further. All HTML files are rendered on your
computer and then copied to the computer hosting the HTTP server.
Since the HTML files aren't generated dynamically, we say that Hugo
is a "static site generator."
Not running a web site generator on your HTTP server has many benefits.
The most noticeable is performance - HTTP servers are very good at
sending files. So good that you can effectively serve the same number
of pages with a fraction of the memory and CPU needed for a dynamic site.
Hugo has two components to help you build and test your web site. The
one that you'll probably use most often is the built-in HTTP server.
When you run hugo server, Hugo renders all of your content into
HTML files and then runs a HTTP server on your computer so that you
can view them.
The second component is used when you're ready to publish your web
site to your HTTP server. Running Hugo without any actions will
rebuild your entire web site using the baseurl setting from your
site's configuration file. That's required to have your page links
work properly with most hosting plans.
—
Reply to this email directly or view it on GitHub.

Done. It pushes the section on "How fast" to below the fold. If that's important, then the whole overview should be reorganized with one section for serious hand-holding and the other for those that think they know the basic concepts of operations.

A lot has changed and many things have been rewritten/clarified since the original post.  I think we're good now.


Necromancer robe top & robe bottom - sprites are incorrectly switched around

Pretty much the necromancer robe top and bottom's sprites are switched, as the bottoms show as the top (in the leg slot) and the top shows the bottoms (in the chest slot).

dupe of: https://github.com/oldschoolgg/oldschoolbot/issues/4852


Create footer news letter section

What:
Create the footer newsletter section
Why:
To address: https://app.asana.com/0/1159164196409129/1189374721442724/f
How:

Create Button component
Create Input component
Create SubscribeNewsLetter component

Media:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


copy permission functions does not copies permission for extended sps e.g. xp_cmdshell or role

Is this:
Just place "x" to indicate selection (e.g. "[x]")

[ ] feature
[x ] bug:

System Details

Operating system name and version:
Output from $PSVersionTable:

Name                           Value
----                           -----
PSVersion                      4.0
WSManStackVersion              3.0
SerializationVersion           <IP_ADDRESS>
CLRVersion                     4.0.30319.42000
BuildVersion                   6.3.9600.17400
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion      2.2

Output of dbatools version:

PS C:\Windows\system32> get-module dbatools

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     0.0        dbatools                            {Backup-DbaDatabase, Clear-DbaSqlConnectionPool, Connect-AsServer, Connect-DbaSqlServer...}

SQL Server version for source 2008/2014 (target)

The function Copy-SqlSysDbUserObjects copies all the objects. It should also copy the permissions as well. None of the copy permissions functions copy permissions for extended SP or objects in master or msdb database. e.g. xp_cmdshell permission etc.
I found below script (http://stackoverflow.com/a/1862361/1387418)  that will be useful.

Well there is a separation of duties I think here to just note when the PR for this issue is submitted. In most commands we have for copying it only pertains to that item and does not include the dependent item(s). As an example: copying SQL Agent jobs. If the step in that job is for a specific database and that database does not exist on the destination then the command does not copy the database...it simply skips that agent job and moves on.
So in the same regard if  you copy an object from one database to another and want to include the permissions, then at a minimum the user must exist in that destination database. If they don't then the permissions should not be copied.
I would also note that the Export-SqlUser command does copy object level permissions for all schemas found in a database. I've tested this and it would include explicit permissions assigned to an extended stored procedure. So we would need to determine if we simply want to include a call to that function or repeat that code in the Copy function. If we want to perform a call to that function then we may need to adjust that command to include output the T-SQL instead of having to write it to a file.

@TheRockStarDBA can you name the functions you are referring to and update your PR with that information? Referring to this comment:

None of the copy permissions functions

I only find 3 functions that even reference permissions:

Get-DbaPermission (only goes to database level and not object level)
Sync-SqlLoginPermissions (does not handle database , object level)
Update-SqlPermissions (internal function but does not handle object level I believe)

@wsmelton
I agree that there is separation of duties. Allow me to provide a reason for my request :
The start-sqlmigration allows you to migrate the server in its entirety and it does an excellent job of migrating the entire server as per the options specified. For my case, I use
`$cred = Get-Credential -UserName sa -Message "Enter Your SA password"
Start-SqlMigration -Source OldServer -SourceSqlCredential $cred -Destination NewServer -DestinationSqlCredential $cred -NoDatabases -NoSpConfigure -NoCentralManagementServer -DisableJobsOnDestination -NoDataCollector `
I only want to migrate all stuff excluding databases, sp_configure settings, CMS, data collector and want to disable the jobs on the new server. When run the start-SqlMigration, it DOES NOT copy the permissions esp. the system dbs - master and msdb.
For e.g. in my case,
It does not copy the permissions for xp_cmdshell granted to different logins explicitely along with sp_OA* extended procs.
If I rely on start-sqlmigration to do the work, then it should copy the explicit permissions (it copies the logins, users, etc.)
Remember that system databases are unique since they are not copied over from one server to another. And we need to be careful to assign the permissions since it might break the app or processes who rely on the explicit permissions on variour system SPs or extended SPs for their functionality.
I even looked into Export-sqluser and it DOES NOT copy the extended SP permissions.
I am more inclined to Copy-SqlSysDbUserObjects as it is geared towards system db .. may be have a parameter like -permissions or whatever is suitable :-)
`
Synopsis
Imports all user objects found in source SQL Server''s master, msdb and model databases to the destination.
Syntax
Copy-SqlSysDbUserObjects [-Source]  [-Destination]  [[-SourceSqlCredential] ] [[-DestinationSqlCredential] ] [-Confirm ] [-WhatIf ] []
Description
Imports all user objects found in source SQL Server's master, msdb and model databases to the destination. This is useful because many DBA's store backup/maintenance procs/tables/triggers/etc (among other things) in master or msdb.
It is also useful for migrating objects within the model database.`

Please let me know if I am missing anything.
Appreciate you looking into the issue and all the hard work that you guys are doing for the sql server and powershell community !

Ok, all clear now. In that regard we just need to work on adding the commands to handle the permissions in the Start-SqlMigration.

I even looked into Export-sqluser and it DOES NOT copy the extended SP permissions.

The Export-SqlUser is fixed in the development branch where it will export the xp permissions, when Chrissy does the next merge to master that should be available to you. Sample output:
C:\WINDOWS\system32> Import-Module C:\GitHub\dbatools\dbatools.psd1
C:\WINDOWS\system32> Export-SqlUser -SqlInstance manatarms -User TestLogin
[Export-SqlUser][10:28:18] Validating users on database [dbareports]
[Export-SqlUser][10:28:18] No users found on database '[dbareports]'
[Export-SqlUser][10:28:18] Validating users on database [JustDoIt]
[Export-SqlUser][10:28:18] No users found on database '[JustDoIt]'
[Export-SqlUser][10:28:18] Validating users on database [master]
[Export-SqlUser][10:28:19] Validating users on database [model]
[Export-SqlUser][10:28:19] No users found on database '[model]'
[Export-SqlUser][10:28:19] Validating users on database [msdb]
[Export-SqlUser][10:28:19] No users found on database '[msdb]'
[Export-SqlUser][10:28:19] Validating users on database [Northwind]
[Export-SqlUser][10:28:19] No users found on database '[Northwind]'
[Export-SqlUser][10:28:19] Validating users on database [pubs]
[Export-SqlUser][10:28:19] No users found on database '[pubs]'
[Export-SqlUser][10:28:19] Validating users on database [ReportServer]
[Export-SqlUser][10:28:19] No users found on database '[ReportServer]'
[Export-SqlUser][10:28:19] Validating users on database [ReportServerTempDB]
[Export-SqlUser][10:28:19] No users found on database '[ReportServerTempDB]'
[Export-SqlUser][10:28:19] Validating users on database [SSISDB]
[Export-SqlUser][10:28:19] No users found on database '[SSISDB]'
[Export-SqlUser][10:28:19] Validating users on database [tempdb]
[Export-SqlUser][10:28:19] No users found on database '[tempdb]'
[Export-SqlUser][10:28:19] Validating users on database [Woodworking]
[Export-SqlUser][10:28:19] No users found on database '[Woodworking]'
USE [master]
GO
CREATE ROLE [RSExecRole]
GO
CREATE USER [TestLogin] FOR LOGIN [TestLogin] WITH DEFAULT_SCHEMA=[dbo]
GO
GRANT CONNECT TO [TestLogin]  AS [dbo];
GO
GRANT EXECUTE ON OBJECT::[sys].[xp_cmdshell] TO [TestLogin]  AS [dbo];
GO

Thanks @wsmelton ! Any way I can use the output generated by Export-SqlUser  and pipe the results to get executed on the destination (new) server ? I am happy to use the dev version for now.

Since the module includes Invoke-Sqlcmd2 you can do something like this if you want to get them all:
$results = Export-SqlUser -SqlInstance <server>
$results = $results.Replace("GO","") #Invoke command does not handle the GO terminator since it uses SqlClient
Invoke-Sqlcmd2 -ServerInstance <server> -Query $results

@wsmelton  I replaced the Export-SqlUser  from the dev branch in the functions folder https://github.com/sqlcollaborative/dbatools/tree/development/functions . Then I unloaded the dbatools module and then imported it again.
When I run the Export-SqlUser -SqlInstance , it does not script out the extended SPs. Any idea if I am doing anything wrong ?
Also, If you can help/guide on Copy-SqlDatabaseMail : https://gist.github.com/TheRockStarDBA/6a38d566465745a887dc93273db161f1

Agreed with @wsmelton  - I can see the requirement, but I don't think it's within scope of the command. We can, however, explore extending another permission-centric command like Sync-DbaLoginPermission if it doesn't exist already.


Update and rename docs/api/resources/endpoints.mdx to المستندات/api/م…

…وارد/endpoints.mdx

Thanks for the PR but we have no plans to change the folder naming structure at this time!


Issues in webcraft.wixonic.fr

Description
I would like to report a bug that when trying to sign up to WebCraft it's giving a couple of errors because of which I can't sign up.
Both the errors are listed below:
Error 1 (On loading the page):
POST https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=AIzaSyCryzQCfdPb5MytODPPBkwXJgJRyp1r-b8 400 (index.ts:114)
Error 2 (on entering confirm password):
dom.js:41 Uncaught TypeError: Cannot read properties of null (reading 'value')
at HTMLInputElement. (dom.js:41:23)
OS
Linux
Browser
Chrome
Code of Conduct and Contributing Guidelines

[X] I agree to follow this project's Code of Conduct and Contributing Guidelines

Hello @SuperAdilAli,
We know about this bug because the page at /connect/ isn't finished.
We now working actively on it !
Stay tuned !
@Wixonic

This issue is now fixed! Thank you for your help, @SuperAdilAli.


Fix issue with not being logged in after creating a profile

This happened in Karnage's video feedback. Need to test how to reproduce it. Creating a new profile should of course log you in and keep you logged in.

Should be addressed via #60, but need to test a bit further so leaving this open.


ArcDps documentation

Fixed and added some missing doc.

I agree with @greaka's further review.  Tackle those quickly and we should be good to merge!  🙂

Still do not sure exactly what the Ag.Team or Revision fields do and/or if the other Ev.Pad fields are also garbage such as Pad64.
Ag.Team
I know it is a unique identifier but the documentation just states a patch date of GW2 and I barely remember which september it was so I could look it up what feature this was.
Revision
I know it's a header value. Not sure exactly why we have this field exactly but yeah. It's from the logging stuff. Probably the length?
Pad fields
The official docs and mechanics plugin have only a note at the Pad64 field that this one is for internal tracking and thus garbage. Not sure about the other pad fields. Might be the case for them as well.

I am not sure exactly what the Ag.Team or Revision fields do and/or if the other Ev.Pad fields are also garbage such as Pad64.
Ag.Team
I know it is a unique identifier but the documentation just states a patch date of GW2 and I barely remember which september it was so I could look it up what feature this was.
Revision
I know it's a header value. Not sure exactly why we have this field exactly but yeah. It's from the logging stuff. Probably the length?
Pad fields
The official docs and mechanics plugin have only a note at the Pad64 field that this one is for internal tracking and thus garbage. Not sure about the other pad fields. Might be the case for them as well.

@greaka we need anything else before merge?

I have no idea anymore what revision was for.
The pad fields are fields to pad to 64 byte objects in the client, they weren't relevant at the time of writing the bridge. However, they are reserved for future use.

I have no idea anymore what revision was for.
The pad fields are fields to pad to 64 byte objects in the client, they weren't relevant at the time of writing the bridge. However, they are reserved for future use.

Oh now that I think of it. Revision may just be an indicator if the data is valid and all operations succeeded. It seems to be just a validation byte.
Here's a tiny vague note from the GW2-ArcDPS-Mechanics-Log plugin
```/* combat event logging (revision 1, when header[12] == 1) */``
at
https://github.com/MarsEdge/GW2-ArcDPS-Mechanics-Log/blob/d068f8113109893d9d9c06796a7ff04297313ac2/src/arcdps_datastructures.h#L102


Shift-click on button breaks dragging token

FoundryVTT 9.266
System: pathfinder-2e 3.8.4
Modules: drag-ruler 1.12.8 and socketlib 1.0.10
Shift-clicking a roll button on a PF2E character sheet seems to break drag-ruler. After shift-clicking, dragging a token will always result in the token not snapping to the grid (as if shift was held down). Tapping the shift button corrects the issue.
https://user-images.githubusercontent.com/7141086/162850045-533e54c3-3f35-411d-91f3-22ac9dfea37a.mp4

This seems to be happening only with Pathfinder 2e - I cannot reproduce it in other game systems. Likely pathfinder 2e is suppressing the shift key up event in some way, so it doesn't reach Drag Ruler (which in turn will never notice that you've released the key).

Yes. This is possible via Foundries "Configure Controls" settings menu.

I'm experiencing this issue in 5e Foundry as well- shift click any button, and drag ruler detaches from the grid until shift is pressed again.

I've tracked this down to a core bug: https://gitlab.com/foundrynet/foundryvtt/-/issues/6978

The upstream issue was deleted, so I can no longer track this issue properly and since it's not a bug within Drag Ruler anyway I'm going to close this.

The upstream issue was migrated to github at https://github.com/foundryvtt/foundryvtt/issues/6978
But yes agree this ticket should be closed since it's not a DragRuler issue.


buildFHSUserEnv & gcc

Basic info
To make sure that we are on the same page:

Kernel: (run uname -a)

Linux yuna 4.3.4 #1-NixOS SMP Thu Jan 1 00:00:01 UTC 1970 x86_64 GNU/Linux

System: (NixOS: nixos-version, Ubuntu/Fedora: lsb_release -a, ...)

15.09.1076.9220f03 (Dingo)

Nix version: (run nix-env --version)

nix-env (Nix) 1.10

Nixpkgs version: (run nix-instantiate --eval '<nixpkgs>' -A lib.nixpkgsVersion)

"15.09.1076.9220f03"
Describe your issue here
I'm using nix-shell to enter a buildFHSUserEnv configured for building openwrt. The targetPkgs contains ncurses, zlib and other derivations required by the build process.
The build fails due to missing headers and libraries.
Expected result
openwrt is compiled.
Actual result
error from gcc that ncurses.h and zlib.h cannot be found
Steps to reproduce
Simplified using only ncurses:

See https://gist.github.com/tokudan/93b43e98a65c950c6fcf (pass to nix-shell)
Execute: echo 'int main(int argc, char **argv) { initscr(); return 0; }' | gcc -include ncurses.h -x c -o a.out - -lncurses
When the environment variables in the profile are not set the build fails.

Possible workaround or solution
In #nixos I got quick help. Setting the environment variables
C_INCLUDE_PATH=/usr/include
LIBRARY_PATH=/lib

solves the issue for the test case, however these variables are overwritten or unset in the openwrt build process, so a suggestion on IRC was to use the variables
C_INCLUDE_PATH=/usr/include
LIBRARY_PATH=/lib
NIX_CFLAGS_COMPILE="-I/usr/include"
NIX_CFLAGS_LINK="-L/usr/lib64 -L/usr/lib32"

This solves the issue, openwrt can be built successfully when these variables are set.
On IRC the question was raised if gcc and/or buildFHSUserEnv needs to be updated, this issue is intended as a documentation and follow-up on this.

fixed by 11b6924, i guess.

Thanks, I though it would be auto-closed by Github.


Interaction between useQueryState, useEffect, and a React server action

Context
What's your version of nuqs?
^1.17.5
Next.js information (obtained by running next info):
Operating System:
  Platform: linux
  Arch: x64
  Version: #1 SMP Fri Mar 29 23:14:13 UTC 2024
  Available memory (MB): 32052
  Available CPU cores: 24
Binaries:
  Node: 18.20.4
  npm: 10.7.0
  Yarn: N/A
  pnpm: N/A
Relevant Packages:
  next: 14.2.5 // Latest available version is detected (14.2.5).
  eslint-config-next: 14.2.5
  react: 18.3.1
  react-dom: 18.3.1
  typescript: 5.5.2
Next.js Config:
  output: N/A

Are you using:

✅ The app router
❌ The pages router
❌ The basePath option in your Next.js config
❌ The experimental windowHistorySupport flag in your Next.js config

Description
I am certainly open to the idea that I'm not understanding something here, but I'm seeing normal behavior with React.useState and buggy behavior with a clean replacement using nuqs, so I'm not entirely sure where to go from here. I appreciate your hard work and am hoping you'll have a moment to take a look at this and let me know your thoughts. Thank you. :)
BoroughData.tsx is using nuqs to keep track of what borough is currently selected. I am using a custom parser in order to keep Typescript happy, but otherwise it's just a very basic use of useQueryState.
When the borough is changed in the UI and setBorough is called, resulting in a change in the value of borough, a useEffect hook is triggered, which calls getTimeframeData, a server action defined here, which is the behavior that is suggested by the next.js docs.
This works perfectly the first time a user selects a borough. The second time a user selects a borough, the application UI is set to loading, and line 68 is executed, but this console.log, which is the first line of the server action, never runs. On the third usage, everything works fine. It seems to bounce back and forth between working and not working.
This logic could instead be run in the change event handler, but it needs to be (potentially) executed on load anyway, which would be in a useEffect hook, so might as well just do it there every time. Regardless, moving the functionality out of a useEffect hook and into the event handler does not resolve the issue.
Everything works as expected when using React.useState.
There are no warnings or errors in the console at any time.
The relevant bits of BoroughData.tsx, console.logs removed for brevity:
const parseAsBorough = createParser({
  parse(queryValue) {
    return isBorough(queryValue) ? queryValue : '';
  },
  serialize(value) {
    return value;
  },
});

export default memo(function BoroughData() {
  const [borough, setBorough] = useQueryState(
    'borough',
    parseAsBorough.withDefault(''),
  );

  // ...

  React.useEffect(() => {
    let ignore = false;

    if (borough) {
      setIsLoading(true);
      setTimeframe(undefined);
      getTimeframeData({ station: { borough } })
        .then((newData) => {
          if (!ignore) {
            setTimeframe(newData);
            setIsLoading(false);
          }
        });
    }

    return () => {
      ignore = true;
    };
  }, [borough]);

  // ...

Here's some more interesting information. On the second selection, the POST request to the server has the wrong querystring. On the third selection, it posts the old querystring (the second one, that is now old), and then the new one. That's weird.
https://github.com/user-attachments/assets/e6ed8fc3-8de7-424c-b9bb-21a87c0fa9eb
Thanks again for building and maintaining such a lovely library. :)
Reproduction
The branch, deployed: https://citibike-git-querystring-everything-ravenouswombats-projects.vercel.app/
To reproduce:

Open the app to the borough view
Select a borough from the dropdown
Notice the page load, then populate with data
Select a different borough from the dropdown
Notice the page load forever
a. Expectation: the page would load, then populate
Select a different borough from the dropdown
Notice the page load, then populate with data

Thanks for the detailed report!
The main difference with useState is that useQueryState will re-render a couple more times during an update, due to the internals of nuqs (setting an internal state immediately, then defering the URL update to satisfy rate limits on the History API imposed by browsers) and that of Next.js (re-rendering every component that uses useSearchParams after the URL changes).
Could it be that multiple calls to the getTimeframeData server action with the same arguments are cached, and this messes up the ignore mechanism?

Funny enough, I hadn't implemented the ignore mechanism anywhere on the site until I was running into this issue. It was one of my attempts to resolve it.
Just for fun, I pushed all of the Nuqs logic for this component down into a new component. This new logic is not something I would want to use, and it would not correctly set the state on load, but I was curious if it solve the issue. It reduced the number of renders being experienced by BoroughData.tsx by 2-3 per borough select, but interestingly it did not solve the problem.
BoroughData.tsx:
  // ..

  const [borough, setBorough] = React.useState<Borough | ''>('');

  // ...

  return (
    <>
      <Nuqs borough={borough} />
      // ..
    </>
  );

// ..

The new Nuqs.tsx:
const parseAsBorough = createParser({
  parse(queryValue) {
    return isBorough(queryValue) ? queryValue : '';
  },
  serialize(value) {
    return value;
  },
});

export default function Nuqs({ borough }) {
  const [_, setBorough] = useQueryState(
    'borough',
    parseAsBorough.withDefault(''),
  );

  React.useEffect(() => {
    setBorough(borough);
  }, [borough, setBorough]);

  return null;
}

Is this still relevant or can this issue be closed?

Hi @franky47. Unfortunately I was not able to resolve it. With the release of v2 I was hoping to get back into it over the winter break and try it again. :) I'll update soon once I'm able to try it out. Thanks!

Unfortunately I'm seeing the same behavior with 2.2.3. :( The line just before getTimeframeData executes but a console.log in the first line of getTimeframeData is not executed. It's weird because it seems like nuqs is doing exactly what it's supposed to do. The state updates, the new state is what it's supposed to be, the effect executes because the dep changed, etc. But also the server action breaks only when nuqs is used. It's a real head scratcher.

Would you be able to try and replicate the issue in a minimal setup (create-next-app)?
I haven't had much chance to dig into how server actions change the rendering process in Next.js, only know that a lot of the app router core changes were about handling those.
Have you tried updating Next.js itself to the latest version (if possible)?

I will try both and get back to you soon. :)

(tl;dr: fixed, somehow)

I directly upgraded the app to React 19 and Next.js 15. This did not solve the problem.
I tried to build a minimal setup, but no matter how closely I tried to get it to match the failing code, it worked and I was unable to reproduce the issue.
Back to the real app, when I commented out setIsLoading(true); and setTimeframe(undefined); which were right above the failing server action call, the code worked.
I swapped out the isLoading for useTranslation and I removed the setTimeframe(undefined) (solving this elsewhere) and now it works.
I ran into the problem again, and it seemed to be caused by a child component making a call to a server action while some of the data was stale? Maybe? But there were no exceptions being thrown anywhere, and no linting errors indicating bad types, so I'm not sure what was going on there. And at this point I've upgraded React and Next, swapped in useTranslation in a bunch of places, swapped in the new React compiler, and upgraded MUI, so ... there have been a lot of changes.

Anyway, I'm sorry I wasn't able to figure out exactly what the situation was that was causing the problem, but either it was a problem with my code or I was able to work around it without too much trouble. I think being able to solve it by removing the two state setters is the biggest clue, but to what? I'm not sure.

useTranslation

Did you mean useTransition? That would indeed be the correct way to know when an action is in flight, or there is also useActionState that has a pending property.

Just deployed the updates using nuqs at https://citibikedata.nyc and it's working splendidly. Thanks for the library, it really simplified the process of getting this feature out!


Implement Cache Support

Currently, Cache support is stubbed out similar to how the Cache API behaves in the Cloudflare Workers playground. We should make it fully functional with the ability to toggle it on or off (stubbed or functional) via a CLI flag.

Done in #22?


ja: Make docs/concepts/workloads/controllers/statefulset.md follow v1.18 of the original text

This is a Feature Request

What would you like to be added
Update docs/concepts/workloads/controllers/statefulset.md to follow v1.18 of the original (English) text.
Why is this needed
content/ja/docs/concepts/workloads/controllers/statefulset.md is outdated.
Comments
/language ja
/good-first-issue
File to update
https://github.com/kubernetes/website/blob/dev-1.18-ja.1/content/ja/docs/concepts/workloads/controllers/statefulset.md
Original
https://github.com/kubernetes/website/blob/fb6364d/content/en/docs/concepts/workloads/controllers/statefulset.md
diff between translated and v1.18
https://gist.github.com/ec62e1e61c6235601fb3e2f49c874f44
Note
Currently, we use dev-1.18-ja.1 branch. Please open a PR targeting the branch.
ref
https://kubernetes.io/ja/docs/contribute/localization/
If you have a question, feel free to ask us at slack.k8s.io #kubernetes-docs-ja channel.

/assign

/milestone 1.18-ja.1

/close


Please provide a jsonl file of source documents and the summary

Hello,
Thank you for creating this amazing project! I've been trying to use it but have run into some issues, and I was hoping you could provide some assistance.
I followed the instructions in the README, but I encountered errors when preparing for the jsonl file of this part.

I input a simple jsonl file as following:
{"document": ["The quick brown fox jumps over the lazy dog. The dog, startled by the fox's sudden movement, wakes up and starts chasing the fox. The fox, being quick and agile, easily outmaneuvers the dog and escapes into the nearby forest."], "summary": ["A quick brown fox jumps over a lazy dog, waking it up. The dog chases the fox, but the fox escapes into the forest."], "topic_id": "1"} {"document": ["In a distant galaxy, there exists a planet named Zephyria. The inhabitants of Zephyria are known as Zephyrians, and they possess advanced technology that allows them to travel across the stars. One day, a group of Zephyrian explorers discovers a new planet with signs of intelligent life."], "summary": ["Zephyrians, an advanced alien race from planet Zephyria, discover a new planet with intelligent life during their space exploration."], "topic_id": "2"} {"document": ["The Eiffel Tower is an iconic landmark located in Paris, France. It was designed by Gustave Eiffel and completed in 1889. The tower stands at a height of 324 meters (1,063 feet) and consists of three levels accessible to visitors. The Eiffel Tower attracts millions of tourists every year and offers stunning views of the city."], "summary": ["The Eiffel Tower, an iconic Parisian landmark designed by Gustave Eiffel, was completed in 1889. It stands 324 meters tall, has three accessible levels, and attracts millions of visitors annually with its stunning city views."], "topic_id": "3"}
And I receive an error:
ValueError: [E866] Expected a string or 'Doc' as input, but got: <class 'list'>.
Would it be possible for you to provide a complete, runnable example of jsonl file?
If you need more information about the specific problems I've encountered, please let me know, and I'll do my best to provide more details.
Thank you again for your hard work and assistance!
Best regards

Thanks for your interests in our project.
There was a mistake in the document, the field summary is supposed to be a string and not a list (I've just fixed the README). You can also find an example file in the repo.

Thank you for your help! I've checked the updated documentation and example file.
I appreciate you for resolving my issue.

Thank you for your help! I've checked the updated documentation and example file.
I appreciate you for resolving my issue.


[3.1] Fix #11524 (#11524)

Fix issue #11524

Codecov Report

Merging #11936 (cb3111c) into 3.1 (7b1199a) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                3.1   #11936      +/-   ##
============================================
- Coverage     64.72%   64.70%   -0.02%
  Complexity       14       14
============================================
  Files          1433     1433
  Lines         60081    60076       -5
  Branches       8830     8830
============================================
- Hits          38889    38875      -14
  Misses        17128    17128
- Partials       4064     4073       +9

Impacted Files
Coverage Δ

.../metadata/ConfigurableMetadataServiceExporter.java
68.27% <ø> (-1.06%)
:arrow_down:

... and 16 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Ignore YAML Front Matter

Is there anyway to have mistune ignore YAML front matter.
eg:
---
title: My Post
publication-date: 2018-07-10
author: John Smith
---
## Part 1
My amazing post.

On second thoughts, I could filter it out before passing it to mistune. Would make a nice feature though.

Solve this by yourself. Mistune is a markdown parser.


Add the University of Prince Mugrin in Madinah/KSA

@OmarRa15 First stage of verification passed, official domain is upm.edu.sa as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@OmarRa15 Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Improve TS support

See https://github.com/jmg-duarte/oolong/commit/fa2a0f9318d3ba52129051caccfbcfd8d3d35420

Done in ce081ab15ccc0226ff3c40f0cee6d6738afe548f


Update index.html

Even zien waar dit terecht komt

[ ] Have you followed the contributing guidelines?
[ ] Have you explained what your changes do, and why they add value to the Guides?

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

help je nu toch


ERROR: Failed to copy the manifest to the app folder.

Hi There, am i missing something here from the Example ?
manifoldjs http://meteorite.azurewebsites.net -d native  -p ios -b

05/01/15 @ 3:35PM - pulkit.kathuria@Mac Pro ~/Downloads/temp sudo rm -rf native;sudo manifoldjs http://meteorite.azurewebsites.net -d native  -p ios -b
Validation warning (ios): An app icon of the following sizes is required: 76x76, 120x120, 152x152 and 180x180
Validation warning (ios): An 1024x1024 app icon for the App Store is required
Validation warning (ios): A launch image of the following sizes is required: 750x1334, 1334x750, 1242x2208, 2208x1242, 640x1136, 640x960, 1536x2048, 2048x1536, 768x1024 and 1024x768
ERROR: Failed to copy the manifest to the app folder.
WARNING: The Cordova project could not be created successfully.
WARNING: One or more errors occurred when generating the application.

permission (threw in 777)
05/01/15 @ 3:39PM - pulkit.kathuria@Mac Pro ~/Downloads ls -la
..
...
drwxrwxrwx   3 pulkit.kathuria  XXX\Domain Users   102 May  1 15:40 temp

I think the problem here is that you are missing some required images sizes.  I think we have a bug here though because with an iOS project, there should be some default images provided by Cordova, so we should probably let it continue to build.  We also have in our roadmap to add our own default images.
We'll update issue after I talk with the other devs

This is now fixed in v0.1.3

@nbellocam awesome Thanks


Back in 1995 [PCSE01343]

App summary

App name: Back in 1995
App serial: PCSE01343
App version: 1.00

Vita3K summary

Version: v0.1.8
Build number: 3271
Commit hash: https://github.com/vita3k/vita3k/commit/37e334b3
CPU backend: Dynarmic
GPU backend: Vulkan

Test environment summary
Tested by: space1
OS: Windows 11
CPU: AMD Ryzen 5 3600
GPU: Nvidia 3070
RAM: 32 GB
Issues
Screenshots

Log
PCSE01343 - [Back in 1995].log
Recommended labels
Playable

Good afternoon, this game does not work, you can hear it in the background when I press the keys, even so, the game does not provide video. Please fix it. This version is the lightest and is in Spanish. The computer version is in English.

use vulkan

Hello, good evening, it does not play video, it only listens when I press the buttons on the controller, I have played many games such as God of War or Mortal Kombat 9 and it works correctly.


A document on the current usage of Kafka project is added

Kafka is used by numerous companies and organizations, ranging from startups to large enterprises, across various industries. Some of the well-known companies that utilize Kafka for building real-time data streaming applications include:

LinkedIn: LinkedIn, a professional networking platform, uses Kafka as a key component of its data processing and data streaming infrastructure. LinkedIn uses Kafka to process and analyze massive amounts of data in real time, including user interactions, news feed updates, and activity logs.
Airbnb: Airbnb, an online marketplace for lodging and hospitality, uses Kafka to handle real-time data streams from various sources, such as user interactions, bookings, and payments. Kafka enables Airbnb to process and analyze large volumes of data in real time, enabling real-time notifications, personalized experiences, and data-driven decision making.
Uber: Uber, a ride-hailing and transportation network company, uses Kafka as a critical component of its data streaming infrastructure. Kafka is used to process and analyze real-time data from millions of drivers, riders, and trips, enabling real-time monitoring, dispatching, and analytics.
Netflix: Netflix, a leading streaming service for TV shows and movies, uses Kafka for real-time data processing and streaming. Kafka is used to handle millions of events per second, including customer interactions, content recommendations, and user behavior data, enabling personalized experiences and content recommendations in real time.
Twitter: Twitter, a social media platform, uses Kafka for handling real-time data streams, including tweets, user interactions, and trending topics. Kafka enables Twitter to process and analyze large volumes of data in real time, supporting real-time notifications, analytics, and trending topics.
Walmart: Walmart, a global retail corporation, uses Kafka for processing and analyzing real-time data from various sources, such as point-of-sale transactions, online orders, and supply chain data. Kafka enables Walmart to gain real-time insights into customer behavior, inventory management, and supply chain optimization.
Goldman Sachs: Goldman Sachs, a global investment banking and financial services company, uses Kafka for handling real-time data streams, such as market data, trade data, and risk management data. Kafka enables Goldman Sachs to process and analyze large volumes of financial data in real time, supporting real-time decision making and risk management.
These are just a few examples of the many companies that use Kafka for building real-time data streaming applications. Kafka's high throughput, fault tolerance, and scalability make it a popular choice for handling large-scale data streaming and processing requirements in diverse industries.

@SijoJoseph2002 just for my own understanding, did you intend to change this much source?

Because it's opened against the 3.5 branch, this PR is currently preventing us to add the 3.5 branch to the Apache Kafka Jenkins job. So I'll close the PR temporarily while I fix the Jenkins job.


Left sidebar is partially covering content

Ever since the interface update, the sidebar that houses the list of subscriptions partially covers the main list of headers and content.

CommaFeed version 3.5.0 (763ce1e)
Chrome (Version 114.0.5735.90)
Edge (Version 113.0.1774.57)
Both in the desktop environment.
This does not happen in Firefox.
Changes to desktop resolution, scaling and browser zoom levels do not appear to affect the Commafeed layout at all. This is happening on both my 1080p and 1440p screens

Hmm I can't reproduce :/
Do you have long category names or long subscription names maybe? It should correctly cut off though.
Or do you maybe have something in your Custom CSS settings that would interfere with the new layout?
If it affected everyone using a chromium-based browser, there would be a lot of complaints.

That's why I didn't report it right away. I assumed that if it was affecting everyone, it would get patched fairly quickly.
The longest subscription name I have is 'Blue Milk Special', and I've never messed with CSS. It's outside of my wheelhouse so I wouldn't have been playing with it.
Here's a sample of the full width of my screen:

I've installed the commafeed app, and and getting the exact same issue:

That's very strange, I have no explanation at the moment.
One thing I notice in your latest screenshots (but not the first one) is that the colors are off. Are you using a tool to change the hue of your screen or something? Could that interfere somehow?
Have you tried clearing your chrome cache to see if it fixes the issue?

I just cleared site-specific data, I completely wiped Chrome's cache, and I disabled my chrome plugin that forces dark-mode palates. Sadly none of that worked.
I also tried disabling ALL Chrome plugins I have. No luck.

In the latest version the sidebar is resizable. Does this help in any way?

It does help! But it's likely still not the behavior you want. If I make the sidebar as narrow as I can, I can read the whole title of the posts.   There appears to be an issue with the empty space between the unread number in the sidebar and the sidebar's right edge that's covering the main area. (see attached images)
What I've been doing in the meantime is to resize the browser until it's narrow enough that the sidebar hides.

What I've been doing in the meantime is to resize the browser until it's narrow enough that the sidebar hides.

You can also press "F" to hide the sidebar.
I still don't know why you're the only one with this issue though :/

Thank you for the tip!
I honestly have no idea. I wish I had a second machine to test with. I just live a cursed life sometimes. Thank you for following up, though!

Do you have the same issue here btw?

It doesn't look like it!

I have the same problem too on FF, Arch Linux, just compact and cozy views are not affected

www.commafeed.com has been updated with the latest version that includes the upgrade to mantine v7 that has a new implementation of AppShell, does it solve the issue?

Excellent! it looks like that did the trick, thank you!


initial commit of the draggan blog source code

please read the readme.md file.
the current version assumes the user will download the pkl files from nvidia.
in the C# app there is an image viewer component that is open source (MIT) license - Xiaoyan told me that is not a problem.

Is it possible to add a main README.md to guide users?


only for debugging - do not merge

What kind of PR is this?

/kind api-change
/kind bug
/kind cleanup
/kind code refactorting
/kind docs
/kind enhancement
/kind feature
/kind flake
What does does this PR do / why we need it:
Which issue(s) this PR fixes:
Fixes #?
How to test changes / Special notes to the reviewer:

/kind api-change
/kind bug
/kind cleanup
/kind code refactorting
/kind docs
/kind enhancement
/kind feature
/kind flake
What does

please mark prs only with appropriate labels


add command to help debug feed generators

Some basic checks to help find issues with feed generator deployments

app.bsky.feed.describeFeedGenerator is a required route as well that announces the feed generator's DID & available feeds
I'd add that check as well 👌


-CDTReplicator:replicatorStopped:n should set error

When this method sets the current state to CDTReplicatorStateError it should also set the error object by re-wrapping the underlying TDReplicator error.

Fix merged to master closing.


Make sure structural elements don't animate when the page is being set up

When animating structural elements in a page it can happen that they animate on load as well. To fix this a class is added to the body (gh-preload) that disables all animations. Once the page has been set up the class is removed and animations can be applied.

Coverage remained the same at 100.0% when pulling b0b9de341b3f1a95ac9f4d8ae256c09bb709f32e on bp323:stopAnimation into 29f892376eaa169635bfdc599adc40722d784120 on CUL-DigitalServices:master.


Fix entry point to be compatible with sslc

I'm just going to merge this without any reviews since it's just replicating some of the changes that took place on the platform-builds branch of sslang

Codecov Report

Merging #34 (6a58059) into main (bf1a024) will decrease coverage by 0.35%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main      #34      +/-   ##
==========================================
- Coverage   54.45%   54.09%   -0.36%
==========================================
  Files           4        4
  Lines         303      305       +2
  Branches       69       69
==========================================
  Hits          165      165
- Misses        120      122       +2
  Partials       18       18

Impacted Files
Coverage Δ

src/ssm-scheduler.c
75.81% <0.00%> (-1.01%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Fix IdentitySerde

Motivation
We need to make sure that IdentitySerde(which is the default serde for python) outputs bytes on serialization.
Modifications
Describe the modifications you've done.
Result
After your change, what will change.

@sijie @jerrypeng I've changed IdentitySerDe to StringSerDe to better reflect what it's role is. Please take a look again.
Thanks!

@srkukarni why is the StringSerDe the default though?  As I mentioned in my previous comment,  if the default is StringSerDe, it will break if the user returns a class.  Shouldn't the default be the pickle serde that transforms all objects into bytes?

@jerrypeng Pickle format is very specific to Python. My main concern about making it default is that out of the box java and python functions will become illegible to each other.

@srkukarni then we should serialize python objects to json like the JSONSchema in java. Something like:
https://stackoverflow.com/questions/10252010/serializing-class-instance-to-json

@jerrypeng since python does not support schema yet, the above won't be possible because during deserialization, we won't know what to transform into.

@srkukarni gotcha we still need one serializer that can take care of primitive types as well as classes

Using pickle might not be a bad thing for this before schema is implemented for python.  Its analogous to the java default serializer. Without schema its pointless to go between languages anyways, because you won't know the data type.

@jerrypeng I've added selective checks for IdentitySerDe. This kind of mimics the Java world as well as the very purpose of a default Serde. Please take a look again.
Thanks!


fix: add back feature flag for context switching (#18417)

Description
PR is to cherry pick commit cdcb6a00198750cac145419003590376c3da6af8.
This Cherry Pick contains code to add back context switching feature flag.

/ok-to-test sha=caaea1d


Add files via upload

school added

@SmallPlayz Please provide us with:

the school official website URL
the school street address, including city and country
an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course
a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.

@SmallPlayz You might miss my previous comment. Please react.

@SmallPlayz I am sorry, this request remains unanswered for a while. I have to close it without merging. Please reopen and comment if you have an update regarding the aforementioned issue. Thank you for your understanding!


'Update Games Lists' option returns to corrupt game list

Before submitting your issue or feature request.  DO NOT REQUEST ASSISTANTS FOR PRELOADED IMAGES.  I do not support or condone the use of preloaded ArkOS images.  Preloaded meaning images that come with copyrighted roms preincluded.  Look for support from the creator or supplier of those preloaded images, not from here!  If a ticket is submitted for assistance for such images or if there's an indiciation that a preloaded image is what the support request is for, the issue ticket will be closed with no further response.

This is not the Stock OS that comes with your device, AmberElec, JelOS, or UnOfficialOS.  ArkOS is a different distribution from those systems and will have differing features.  The only somewhat similarity is that they both use EmulationStation as a frontend.  Even with that, the versions of EmulationStation that's used in between ArkOS and these other distributions is different with different capabilities.  If there are features you prefer with the other available distributions, just use those distributions instead.  The choice is yours.

Have you reviewed the Frequently Asked Questions section available for your supported device in the wiki?
Yes

If your issue is related to being able to run certain emulators or ports, have you reviewed the Emulators and Ports section available at https://github.com/christianhaitian/arkos/wiki/ArkOS-Emulators-and-Ports-information for needed bios files and supported rom extensions?
Yes

Have you reviewed the known issues section available at https://github.com/christianhaitian/arkos/wiki/Known-issues ?
Yes

Describe the Issue (If applicable)
Using the new 'Update Games Lists' option results in a corrupt game list (black screen with only the theme button guide at the bottom of the screen on RGB30. The RG353M returns to what looks like the main menu, but is still on the game list). Backing out to the main menu and re-entering the game list will return the screen to normal.
How can the issue be reproduced? (If applicable)
Open a game list
Press 'select'
Select 'Update Games Lists'
Wait for the ES progress to complete
What device are you using?
RGB30, RG353M
What version of ArkOS are you on?

You can find this during the initial boot process right before the Emulationstation loading screen
12082023

Anything else you'd like to include that may help to review this issue or feature request?
I'm not sure if this is a theme issue. I'm using the same them on both devices (Pixel).

When I tested with the default theme and freeplay, I didn’t experience these issues.  Please try this with those themes on your end let me know your results.

While I'm not sure what the default theme is, I've tried ArkOS-Carbon and Freeplay, both devices now result with the main menu image that is actually the game list.

Ok so the issue is related to the pixel theme

Hmm...I don't get any of these issues using the pixel theme on my rgb30 or rg353m.  I can't replicate the issue.  I did make sure to set the theme configuration to 4:3.

The black screen is related to the pixel theme, but the false main menu screen happens on both devices when set to Freeplay theme. I think it's related to a UI setting. I'll poke through what I've changed to see if I can find a culprit.

Found it. The 'Transition Style' being set to 'Fade' causes this. 'Slide' and 'Instant' do not cause it.

I believe I have a resolve for this issue.  It would be helpful if you could help me test and confirm that issue is indeed resolved.

Take the attached compressed file (arkosbackup.tar.gz) and put it in your roms/backup folder. Do not uncompress the contents! Just place the file as is in your roms/backup folder. If you don't have a backup folder in the roms folder, just create it.

Then go into the Emulationstation Menu, scroll to Options, hit A, then go to Advanced, hit A, then scroll all the way down to Restore Settings, hit A.

Once completed, reboot the device.

Verify that there is no longer an issue with the fade transition enabled after doing an update games list.  Any other testing for screen corruption after doing a Update Games lists is appreciated as well.
Let me know your results.
Thank you,
arkosbackup.tar.gz

Confirmed: 'Fade' effect no longer is a problem. 'Slide' and 'instant' are still working properly.

Awesome.  Thanks for confirming.