Logging system tests are hanging on CircleCI

Four builds all hung:

https://circleci.com/gh/GoogleCloudPlatform/google-cloud-python/1413 (after ......... == 9)
https://circleci.com/gh/GoogleCloudPlatform/google-cloud-python/1415 (after ............. == 13)
https://circleci.com/gh/GoogleCloudPlatform/google-cloud-python/1418 (after ........... == 11)
https://circleci.com/gh/GoogleCloudPlatform/google-cloud-python/1426 (after ...... == 6)

I have run these tests 8+ times locally since the original failure (and using the same Cloud Console project) and they run without issue.
@waprin Any ideas?

Note this is "blocking" the release of error_reporting == 0.23.3 /cc @DizzeePascall

Running py.test tests/system.py -vv (under the logging directory) the (deterministic) order of test cases is:
01 tests/system.py::TestLogging::test_create_metric PASSED
02 tests/system.py::TestLogging::test_create_sink_bigquery_dataset PASSED
03 tests/system.py::TestLogging::test_create_sink_pubsub_topic PASSED
04 tests/system.py::TestLogging::test_create_sink_storage_bucket PASSED
05 tests/system.py::TestLogging::test_list_metrics PASSED
06 tests/system.py::TestLogging::test_list_sinks PASSED
07 tests/system.py::TestLogging::test_log_handler_async PASSED
08 tests/system.py::TestLogging::test_log_handler_sync PASSED
09 tests/system.py::TestLogging::test_log_root_handler PASSED
10 tests/system.py::TestLogging::test_log_struct PASSED
11 tests/system.py::TestLogging::test_log_struct_w_metadata PASSED
12 tests/system.py::TestLogging::test_log_text PASSED
13 tests/system.py::TestLogging::test_log_text_w_metadata PASSED
14 tests/system.py::TestLogging::test_log_text_with_timestamp PASSED
15 tests/system.py::TestLogging::test_reload_metric PASSED
16 tests/system.py::TestLogging::test_reload_sink PASSED
17 tests/system.py::TestLogging::test_update_metric PASSED
18 tests/system.py::TestLogging::test_update_sink PASSED

(with numbers added by me).

I'm a bit confused as to under what circumstances these tests are failing? Is it with those error reporting changes or is it just sporadically failing everywhere (sorry Circle interface isn't obviously answering this question to me).
test_log_root_handler(self) is the most complex test and worth commenting out to see if it fixes anything.

The logging environment is completely isolated from the error_reporting changes, so they are unrelated. (Though logging is a dependency of error_reporting, so we want to make sure logging is good before doing a downstream release.)
Every CI run since the first failure has failed, i.e. it doesn't seem sporadic. To replicate we'd want to use the same env. vars. locally?

@waprin We've now got a fourth instance.

Adding an issue-3237 branch with -vvv so that we can see it more easily.

Closing, but merging #3244 to help us watch.

This issue has come back (and here and here)

@waprin @jonparrott This is somewhat concerning. Do you guys have any ideas what could be causing this?

I really have no idea - what's our gRPC deadline?

Whatever the default is? It consistently hangs though. A "bad" deadline wouldn't happen twice a day?

If the RPC itself is hanging and our deadline is ~10 minutes, I can see how
this occurs.
Has anyone been able to reproduce locally?
On Thu, May 11, 2017 at 12:08 PM Danny Hermes<EMAIL_ADDRESS>wrote:

Whatever the default is? It consistently hangs though. A "bad" deadline
wouldn't happen twice a day?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-python/issues/3237#issuecomment-300887823,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAPUc-sAb9UBExSAn-ExSK8FaNcuy72Gks5r41y2gaJpZM4Mtrav
.

While I'd like to imagine my code is bug-free, and I have no specific idea of where a bug might be, the piece of code I'd be by far most suspicious of causing a deadlock is the async background_thread.py logging handler transport since it starts a new thread, and both the main thread and background thread acquire locks. I had to fix a few deadlocks when I first wrote it.
I would suggest commenting out test_log_handler_async and test_log_root_handler and see if these deadlocks still happen. If not, we've narrowed it down quite a bit. We could also switch the default transport to the synchronous option until bugs are ironed out.
I think the log handlers are important and a backgrounded writer is important but it is always tricky to get multi-threaded code right, probably should have marked those in some sort of contrib package in first place. We had discussed moving it out of this repo altogether but I think standard logging handlers prob do belong in here, in either case it seems like @duggelz and @liyanhui1228 are building on top of it and taking ownership of some of these sort of features, so maybe they can take a look and help iron out any kinks?
Again, this is pure speculation because I don't actually have any reason to think there are bugs in that code other than its an easy piece of code to have subtle hard-to-find, hard-to-repro bugs in.

What locking is even needed by the background transport? It's just a queue,
right?
On Thu, May 11, 2017 at 12:57 PM Bill Prin<EMAIL_ADDRESS>wrote:

While I'd like to imagine my code is bug-free, and I have no specific idea
of where a bug might be, the piece of code I'd be by far most suspicious of
causing a deadlock is the async background_thread.py logging handler
transport since it starts a new thread, and both the main thread and
background thread acquire locks. I had to fix a few deadlocks when I first
wrote it.
I would suggest commenting out test_log_handler_async and
test_log_root_handler and see if these deadlocks still happen. If not,
we've narrowed it down quite a bit. We could also switch the default
transport to the synchronous option until bugs are ironed out.
I think the log handlers are important and a backgrounded writer is
important but it is always tricky to get multi-threaded code right,
probably should have marked those in some sort of contrib package in
first place. We had discussed moving it out of this repo altogether but I
think standard logging handlers prob do belong in here, in either case it
seems like @duggelz https://github.com/duggelz and @liyanhui1228
https://github.com/liyanhui1228 are building on top of it and taking
ownership of some of these sort of features, so maybe they can take a look
and help iron out any kinks?
Again, this is pure speculation because I don't actually have any reason
to think there are bugs in that code other than its an easy piece of code
to have subtle hard-to-find, hard-to-repro bugs in.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-python/issues/3237#issuecomment-300899965,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAPUc_ihishijnbihAcWRUqIr6RRnUE4ks5r42gqgaJpZM4Mtrav
.

Pretty much but Queue isn't quite what we want since you need to commit all the items at once rather than pick them off one a time. You also need some locks to gracefully shutdown regardless.

Looks like the background transport could use some love, I'm not sure the conditions are the best way to accomplish what we want.
Even still, it seems we're still kind of guessing at what's going on. Again, has anyone reproduced this locally?

It might be helpful to add 'faulthandler.enable()' or '.register()' in our system test harness to get a multi-thread traceback when the test is killed.  We'll have to figure out what signals CircleCI uses to kill jobs (and hopefully it's something reasonable).

@waprin Regarding your last comment, I have annotated my previous comment to show exactly which methods are / were hanging.

I'm going to take a stab here and add some print statements (I'm worried about using Python logging since this code hooks into it).

faulthandler prints to standard error directly, so it should be safe.  It's only available in Python 3 though (there is a backport to 2.7).

I'm able to reproduce some logging test errors in the internal Jenkins builds for the python-runtime repo, but nothing when running locally.

Just FYI, faulthandler does have some deadlock problems after all: https://bugs.python.org/issue30165

Just got a build that seems to shed some light on the issue. The issue seems to be in the tear down:
    def tearDown(self):
        retry = RetryErrors(NotFound, max_tries=10)
        for doomed in self.to_delete:
            retry(doomed.delete)()
        logging.getLogger().handlers = self._handlers_cache[:]

Using max_tries=10 means we can have a total sleep of
1 + 2 + ... + 256 + 512 = 1024 - 1

This exceeds the CircleCI threshold of 600 seconds (10 minutes) without any output.

@jonparrott Do you feel OK if I change this back to closed?

Close it!
On Wed, May 17, 2017, 2:02 PM Danny Hermes<EMAIL_ADDRESS>wrote:

@jonparrott https://github.com/jonparrott Do you feel OK if I change
this back to closed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-python/issues/3237#issuecomment-302230861,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAPUc6bu7ICHlbKaUrykF1sHkbRG-p2Zks5r62B-gaJpZM4Mtrav
.

Blerg. I just saw another one

And another one

@lukesneeringer This is still a huge problem.


bump planet to 7.0.55-11709

Code looks straightforward. Can you link to the changes this introduced in the description?

This is one of those tough things about gravity, the changes are really just changing the version of a dependency (planet). If this were a third party component, like etcd, we wouldn't be linking to the individual changes.

Also: the commit message is incorrect, it says 7.1.20-11709 instead of 7.0.55-11709. I presume this will be fixed in the squash.

Correct,


Update scalafmt-core to 3.7.17

About this PR
📦 Updates org.scalameta:scalafmt-core from 3.6.1 to 3.7.17
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "scalafmt-core" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.scalameta", artifactId = "scalafmt-core" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #152.


Add Motivation chapter

@marvinroger I felt this was missing and I've written something similar a few days ago.

Great, thanks!


v1.8: bpf: Skip policy enforcements for service loopback case

Temporary backport PR for https://github.com/cilium/cilium/pull/15321, to run e2e tests.

test-backport-1.8

test-backport-1.8


Creation of temporary voice channels

Is your feature request related to a problem? Please describe.
Aligning with our goals to reduce the number of bots within the server as shown in our status page, we are replacing the functionality of a temporary voice channel into this bot.
Describe the solution you'd like
For our use case, the concept only requires 3 fundamental features:

A creator channel for the user to connect to
An interface to make changes to your own voice channel, saving it in a database.
Creating a temporary channel and savings its settings
Deleting the channel when no members exist
Use the saved configuration used from the previous session when a new session is made from the same user.

Some slash commands we want to add:
These are all commands that will be grouped with the group being named 'voice'.

Blacklisting users that cannot connect to the channel/see the channel (block)
Changing the privacy of a temporary voice channel (lock and/or hide and/or disable chat) (privacy)
Rename the channel (rename)
Changing the maximum number of users that can connect (limit)
Getting information about a voice channel (creation, owner, blacklist, privacy setting) (info)
Claim the channel, gaining ownership of the channel itself (when the original owner leaves) (claim)
Delete your temporary channel (delete) (event)
Kick a user from the voice channel but do not block them (kick)

For now, we are considering this system created using slash commands only using an SQLite database. It should be noted that the number of features that other bots implement have been implemented have made the process more confusing, features like temporary text channels alongside the temporary voice channel or implementing a waiting room is completely unnecessary given the number of end-users we're dealing with here.
By default, it should also be possible for the user to have complete control of the channel as well. They should be given permissions required to manage their voice channel like moving or disconnecting members.
There should also be ratelimits set. For example, suppose the user joins the creator channel, leaves and rejoins again. There should be an internal cooldown for this case to avoid being API ratelimited. Though this is incredibly unlikely, it might be worth implementing. But this will be considered as the development process nears it's end.
This is all that is needed in our use case.
Describe alternatives you've considered
Provide a general interface which is available to use regardless of whether or not the voice channel is created yet. This may mean more checks are required but it is fixed and a message does not have to be created each time the user joins.
Additional context
Temporary voice channels are used to connect to a voice channel when you need it only. This reduces the need for building up multiple voice channels and instead using a single voice channel and customizing it's settings. The owner of the voice channel is also empowered by having control over what is allowed or denied withint their channel.

We are going to create a new file (cog) for these top-level commands that wouldn't fit in any other category.

Not sure at the moment what how the on_voice_state_update function should work since there is so much situations to consider, so we will be delaying this.
We plan on taking inspiration from other bots on how they do this by digging deeper into their 'way' of handling the channels. There are code examples and a few bots we can take a closer look at before we begin designing it ourselves.
This specific event dispatched by the websocket is a big part of what makes temporary voice channels temporary. We need to decompose each of the individual steps that need to take place when the event is dispatched in order for our own implementation to be a success. Therefore, this will take a very long while to implement (potentially indefinite time period).
In the meantime, we'll be placing tasks that are easier to implement higher on our todo list as a priority.

We've been working on this for quite some time now. Most of the features we've outlined here have been implemented, but there are quite a few bugs. Here's some of them we've found:

A user that joins a temporary voice channel owned by another user can delete the voice channel when they leave. This causes the owner to also disconnect and raises an error when trying to delete the owner's data from the dictionary.
Cooldowns aren't implemented when creating channels. That means joining a channel and leaving, and joining again could cause the bot to be ratelimited. Cooldowns need to be in place.
You need to be connected in a voice channel to use the /voice setup command, which is just an inconvenience that should be dealt with.
Bitrate is displayed to the user incorrectly (this should be fixed by now though)

There are a lot more bugs that we may not have uncovered and dealt with yet, so I'll leave this issue open for the time being.

Most of the issues/bugs mentioned in the above comment have been addressed and resolved.
The only issue we will not be implementing is a cooldown system, the reason behind our decision is: it's not needed.
It will rarely be used as an exploit for us, since we are aware of the ratelimits and we (amongst a few others) are just a handful of people that are using this bot. As mentioned in the repo's README, this code should not be used in production.
This feature has now been fully implemented in the latest commits.


Widevine CDM Library removal issue

Issue Description:
We are encountering a persistent issue with the Widevine CDM library in castLabs Electron releases. Initially, we were using version 16 and observed that the Widevine CDM library was being removed unexpectedly on macos and windows. Following the advice on your status page, which indicates potential issues with versions below 21, we upgraded to version 25. Unfortunately, the problem persists even after the upgrade.
Steps to Reproduce:

Start with castLabs Electron version 16, where Widevine CDM is expected to function.
Remove content of the CDM folder ~/Library/Application Support/%appname%/WidevineCdm (macOS)
Protected content doesn't play anymore
Upgrade to version 25, anticipating resolution of the issue based on the official status page guidelines.
Find that the issue persists with version 25, where the ~/Library/Application Support/%appname%/WidevineCdm folder  remains empty.

Expected Behavior:
We expect that upgrading to a version within the supported range (version 25) would resolve the issue, redownloading the Widevine CDM library.
Actual Behavior:
Despite upgrading to version 25, the Widevine CDM library continues to be removed for some users, with no success in redownloading or restoring the DRM files.
Additional Information:
This issue does not affect all users, but it is significant for those it does and it increases each day.
Questions and Assistance Required:

Are there any known issues regarding Widevine CDM that might explain this behavior?
Could you provide guidance or a workaround for manually reinstalling or restoring the Widevine CDM library in these cases?

Thank you for your report. There are no currently known issues that could explain this behavior, and a few initial tests on our side can't reproduce what you are describing using the latest build of ECS v25.
After Google started more strictly observing this policy, we made some improvements to the Components API to try and catch some of these problems and report them as errors to the application. These changes are available in the most recent builds of ECS v28-v25, but I don't know exactly which version you are on so I can't say for sure if you have the updates or not.
When these updates are available a failed installation would result in a promise rejection from components.whenReady(), which could at least help detect when these errors happen instead of just silently failing. We also provide more detailed error information in the promise rejection Error, which can hopefully help to figure out what is going on.
Are you able to reproduce this issue yourselves? If so, there is also some logging that can be enable which could provide hints as to what is going on. Here is an example command line I have been using to test this issue locally:
$ Electron.app/Contents/MacOS/Electron --enable-logging "--vmodule=*install*=3,*crx*=3,*update*=3,*widevine*=3,*cdm*=3,*request_sender*=3" wip-uat-player.js

wip-uat-player.js is simply a small script that executes await components.whenReady() prior to opening a window with the WIP UAT player.

I tried to put a catch, but we don't fall in it
Additional Information
Blocked Requests: It appears Google is blocking our requests when we attempt to access the CDM.
Inconsistent Update Responses: The response indicates the availability of an update, but this varies across different computers.
API Call Analysis: Utilizing Charles to monitor the API call to https://update.googleapis.com/service/update2/json, we have observed two distinct types of responses.
Observed Responses
Here are the examples of the responses we've captured:

user with noupdate body set in post:

	"request": {
		"@os": "mac",
		"@updater": "chromium",
		"acceptformat": "crx2,crx3",
		"app": [{
			"appid": "oimompecagnajdejgnnjijobebaeigek",
			"cohort": "1::",
			"cohortname": "Chrome 106+",
			"enabled": true,
			"installsource": "ondemand",
			"ping": {
				"ping_freshness": "{uuid}",
				"rd": 6170
			},
			"updatecheck": {},
			"version": "<IP_ADDRESS>"
		}],
		"arch": "arm64",
		"dedup": "cr",
		"domainjoined": true,
		"hw": {
			"physmemory": 16
		},
		"ismachine": false,
		"lang": "en-GB",
		"nacl_arch": "arm64",
		"os": {
			"arch": "arm64",
			"platform": "Mac OS X",
			"version": "14.1.0"
		},
		"prodversion": "96.0.4664.45",
		"protocol": "3.1",
		"requestid": "{uuid}",
		"sessionid": "{uuid}",
		"updaterversion": "96.0.4664.45"
	}
}

and the response here
)]}'
{
	"response": {
		"server":"prod",
		"protocol":"3.1",
		"daystart":{
			"elapsed_seconds":20690,
			"elapsed_days":6171
		},
		"app":[
			{
				"appid":"oimompecagnajdejgnnjijobebaeigek",
				"cohort":"1::",
				"status":"ok",
				"cohortname":"",
				"ping":{"status":"ok"},
				"updatecheck":{"status":"noupdate"}
			}
		]
	}
}

user that gets the update

{
	"request": {
		"@os": "mac",
		"@updater": "chromium",
		"acceptformat": "crx3",
		"app": [{
			"appid": "oimompecagnajdejgnnjijobebaeigek",
			"enabled": true,
			"installsource": "ondemand",
			"lang": "fr",
			"ping": {
				"r": -2
			},
			"updatecheck": {},
			"version": "<IP_ADDRESS>"
		}],
		"arch": "arm64",
		"dedup": "cr",
		"domainjoined": true,
		"hw": {
			"avx": false,
			"physmemory": 16,
			"sse": false,
			"sse2": false,
			"sse3": false,
			"sse41": false,
			"sse42": false,
			"ssse3": false
		},
		"ismachine": false,
		"nacl_arch": "arm",
		"os": {
			"arch": "arm64",
			"platform": "Mac OS X",
			"version": "14.1.1"
		},
		"prodversion": "114.0.5735.289",
		"protocol": "3.1",
		"requestid": "{uuid}",
		"sessionid": "{uuid}",
		"updaterversion": "114.0.5735.289"
	}
}

Notably, in the 'no update' response, we have the "cohort": "1::" field set. But it might not be related
If you know how we can force the update, that would be awesome

Ok, that does actually explain it. The request that is not getting an update has "prodversion": "96.0.4664.45". That corresponds to ECS v16, which is way outside of the window of supported versions.
Any idea why that would be?

Just a quick update: we've identified an error on our end. One of our recent builds mistakenly didn't include the latest version of Electron, which explains the observed differences in behavior. It does fix the issue for the impacted users. Thanks to @khwaaj — your comments helped us solve this problem.


[FEATURE] Allow +2 more missing N-term residues

Please see PR: https://github.com/brennanaba/ImmuneBuilder/pull/41

Hi David,
I have answered you there. Will close this for now.
All the best,
Brennan


Fix passing string variable to an external application.

I was a bit hasty with my previous PR (#398).
Do you guys know of any other type that implements IEnumerable but isn't really a collection of items?

We have a test failure:
TestHost.FileSystemTests.ShellExecutionTest.WinFileShouldBeExecutedFromSystemPath("file.bat","123","file")
     Expected string length 3 but was 0. Strings differ at index 0.
  Expected: "123"
  But was:  <string.Empty>

I don't know context of this change (will check later), but I fear that you may now have some StringConstant instead of string after my recent changes in parameter passing (see #397). If that is the case, then please notify me, and I'll take a closer look at these changes and how we could change either my or yours code to mitigate the issue.

As far as I can tell your changes are not related to the failing test.
Locally the test executes fine. Maybe its something on the CI server?

Well, that's interesting. This test was written by me and I can confirm that it executes in my local environment after applying this pull request. Could someone of the project owners restart the build on AppVeyor?
cc @JayBazuzi

Restarted.
-J
On Sat, Dec 12, 2015 at 9:25 PM, Friedrich von Never <
<EMAIL_ADDRESS>wrote:

Well, that's interesting. This test was written by me and I can confirm
that it executes in my local environment after applying this pull request.
Could someone of the project owners restart the build on AppVeyor?
cc @JayBazuzi https://github.com/JayBazuzi
—
Reply to this email directly or view it on GitHub
https://github.com/Pash-Project/Pash/pull/404#issuecomment-164228207.

Still fails. I'll add Appveyor to my personal repo and make some experiments later. We need to fix that. I think that may be related to changes in CatchCommandResult method but still cannot reproduce that.

It seems to me that it's appveyor local problem. Currently our naster branch fails at my Appveyor instance: https://ci.appveyor.com/project/ForNeVeR/pash/build/1.0.2
It means that there's something wrong with Appveyor or with our test.

My guess is we resolve file incorrectly in CommandManager.ResolveAbsolutePath. Its possible we find a file.exe before the intended file.bat.

Thanks for your investigation!


Command Alias / Name not returning the correct result

I have a code like this

        [Group("debug")]
        [Name(SubModuleName)]
        public class DebugModule : ModuleBase
        {
            private readonly CommandService _commands;
            private const string SubModuleName = "DebugModule";

            public DebugModule(CommandService commands) => _commands = commands;

            [Command("test")]
            [Alias("iamatest", "alpha")]
            [Summary("Test command")]
            public Task DebugAlias()
            {
                var selfModule = _commands.Modules.Where(x => x.Name == SubModuleName).FirstOrDefault();
                foreach (var command in selfModule.Commands)
                {
                    Console.WriteLine($"Alias (FirstOrDefault): {command.Aliases.FirstOrDefault()}");
                    Console.WriteLine($"Name: {command.Name}");
                }
                return Task.CompletedTask;
            }

            [Alias("anothertest", "beta")]
            [Command("testtwo")]
            [Summary("Test command")]
            public Task DebugAliasTwo()
            {
                Console.WriteLine("dummy");
                return Task.CompletedTask;
            }
        }

The difference between the two code is that the order between the Alias and the Command attribute has been swapped.
Calling the test command returns
Alias (FirstOrDefault): debug test
Name: test
Alias (FirstOrDefault): debug anothertest
Name: testtwo

The Name property did not include the group command name; as for the Aliases.FirstOrDefault(), the first command returned the group name with the primary command alias; however, the other returned the group name with alias name unlike the first command.

The Name property doesn't propagate from the group and commands doesn't include the group name like the alias. Alias include the group, probably, to make easier when searching the results.
Since you didn't set a name to the command and it does't propagate, it'll be like this:
NameAttribute, CommandName, MethodName
For you: nothing, testtwo, DebugAliasTwo
So it'll return testtwo
The only case that I know that CommandName will be nothing as well is [Command] (Group only).

In the second case dealing with the Alias list, the command name is in the aliases, however since it was called second, it was added last. More than likely you'll find the command name for testtwo at the last index of the Aliases list.

Looks like there's been no activity here for a while, nor does this look like an issue. Closing for now.


[release/1.6] update to go 1.21.8, 1.22.1

Similar to:

https://github.com/containerd/containerd/pull/9932

Carry #9934

Looks like the changes were dropped again in the push.


how to set the traced image

Hello, I want to use the decoding library to decode the packets. ptxed uses the information from perf (perf script -D) to reconstruct the control flow. What if I use perf_event_open() to get the perf events to decode so that I do not need to dump out the data? I have no idea how to set the traced image for the decoder in this case. By the way, if someone could explain what traced image is, I would appreciate it. Thanks a lot.

Hello Shiyou Huang,
The scripts extract the DATA and AUX buffers per cpu/thread from the perf.data file.  When using the perf_event_open syscall, you would use the returned file descriptor to mmap() those buffers.  See doc/howto_capture.md.
You can then create a PT decoder to work on an AUX buffer and a family of sideband decoders, one for each DATA buffer.  The latter will take care of adjusting the memory image for the former.  See doc/howto_libipt.md and ptxed/src/ptxed.c.
The term traced image refers to the memory image of the binaries that were traced; the executable and shared libraries loaded at particular offsets into the process address space.  The image changes over time as libraries are loaded and unloaded and, in the case of per-cpu trace, as processes are scheduled in and out.  Sideband decoders take care of reflecting those changes at the correct point in time during decode.
For decoding  PT packets, you don't need sideband decoders and you don't need to map the DATA buffer.  You would just map the AUX buffer and create a pt_packet_decoder to work on it.
regards,
markus.

Thanks for your detailed reply.

The scripts extract the DATA and AUX buffers per cpu/thread from the perf.data file. When using the perf_event_open syscall, you would use the returned file descriptor to mmap() those buffers. See doc/howto_capture.md.

Can I assume that the data captured from mmap() is the same as that in perf.data? If so, does that mean I can use 'perf script -D' and the script perf-read-aux.bash provided by libipt to extract the AUX data and sideband information?

The term traced image refers to the memory image of the binaries that were traced; the executable and shared libraries loaded at particular offsets into the process address space.

Is the traced image stored in the raw trace (perf.data)? I can still decode the raw trace even if the binary is not presented.
Thanks for your time on my questions!

Can I assume that the data captured from mmap() is the same as that in perf.data?

More or less.  Perf adds a few artificial records but the actual data is the same.

If so, does that mean I can use 'perf script -D' and the script perf-read-aux.bash provided by libipt to extract the AUX data and sideband information?

The perf-read-aux.bash script will copy the AUX data into one file per buffer.  To copy the sideband data (from DATA buffer) you would use the perf-read-sideband.bash script.

Is the traced image stored in the raw trace (perf.data)? I can still decode the raw trace even if the binary is not presented.

The sideband records (in perf.data) contain references to binary files on disk and information about context switches.  See script/perf-copy-mapped-files.bash for details.  The script copies all files referenced in a perf.data file to allow decoding at a later time or on a different system.
You only need the image for control-flow reconstruction.  You can decode the trace (into packets) from just the AUX sections.

Hello Shiyou Huang,
Do you have further questions on this topic?  If not, would you be OK to close the issue?
thanks,
markus.


could some one creat a mod that add minifigures

id love to see a mod that add like classic medieval knight and stuff with preset poses and interchangeable weapons'/tools because the builds iv made feel empty and lifeless without and minifigs ik i could make blocky guys but it looks awkward

I would totally add this, im currently working on another project at the moment, so I cant actually work on this.


Adding codegen for Kotlin using OkHttp

Tell us about the task you want to perform and are unable to do so because the feature is not available
Generate HTTP API Request code in Kotlin using the code generator feature.
Describe the solution/feature you'd like us to add
Add Kotlin Code Generation using the OkHttp package.
Any other feedback you would like to provide regarding the site
No
Below is a roadmap on how I plan to approach this. Please drop in your suggestions.
Roadmap

Deciding on Language Switching in the Code Pane - Decide on what should be the UI/UX to switch between languages and libraries.

Implementing Kotlin Code Generation - Exploring OkHttp Package and adding the support for code generation using the same.

Testing and Validation - Write tests for enhanced code coverage.

Documentation - Making it easier for future contributors to add more languages and libraries.

Also, I have made a POC for the same and I would love to work on this issue. I have attached a screenshot showcasing the same.

Also adding this dropdown and adding Kotlin support are related but two separate features (one is required to implement the other). You should also open up a new issue for adding the language (library) selection dropdown.


[FLOC-1988] flocker-ca create-control-certificate output

Fixes FLOC-1988 https://clusterhq.atlassian.net/browse/FLOC-1988

May as well fix the other missing trailing newlines here too. Eg:
$ flocker-ca initialize mycluster
Created cluster.key and cluster.crt. Please keep cluster.key secret, as anyone who can access it will be able to control your cluster.(1988)(flocker-ca-output-FLOC-1988 ? =)[~/.../HybridLogic/flocker]$

https://clusterhq.atlassian.net/browse/FLOC-1930

I notice that flocker-ca create-control-certificate synopsis doesn't document the expected positional arguments.
$ flocker-ca create-control-certificate
Usage: flocker-ca <command> [options]
Options:
  -i, --inputpath=   Path to directory containing root certificate. Defaults to
                     current working directory.
  -o, --outputpath=  Path to directory to write control service certificate.
                     Defaults to current working directory.
      --version      Print the program's version and exit.
      --help         Display this help and exit.
  -v, --verbose      Turn on verbose logging.
flocker-ca is used to create TLS certificates.

The certificates are used to identify the control service, nodes and
API clients within a Flocker cluster.
ERROR: Wrong number of arguments.

Fix it here or create a followup issue.

The new output looks ok
$ flocker-ca create-control-certificate control.example.com
Created control-control.example.com.crt and control-control.example.com.key.
Copy these files to the directory /etc/flocker on your control service machine. Rename the files to control-service.crt and control-service.key and set the correct permissions by running chmod 0600 on both files.

But maybe it'd be more readable with some added newlines

Thanks @dwgebler
Please:

address or answer the inline comments above
Fix other missing newlines and close https://clusterhq.atlassian.net/browse/FLOC-1930
Create followup issue for fixing and testing synopsis of flocker-ca subcommands (I think our other functional script tests already check that the supplied command is present in the synopsis)

Then merge.


importer/twitter: update longpoller, as user stream will soon be deprecated

https://blog.twitter.com/developer/en_us/topics/tools/2017/announcing-more-functionality-to-improve-customer-engagements-on-twitter.html

yes, it does. we're using the user stream (https://userstream.twitter.com/1.1/user.json) to do the long polling.

They plan to deprecate user stream on the 16th of august:
https://developer.twitter.com/en/docs/accounts-and-users/subscribe-account-activity/api-reference/user-stream

https://developer.twitter.com/en/docs/accounts-and-users/subscribe-account-activity/migration/us-ss-migration-guide

From what i gather in https://developer.twitter.com/en/docs/accounts-and-users/subscribe-account-activity/guides/getting-started-with-webhooks users might need to have a developer or premium/enterprise account in order for their importer app to use webhooks, which is probably a no-go. But I'll keep on exploring that migration.

I have started on this. Some parts are doable, but in addition to the hindrance that a user would have to register a dev account, the users would also have to be aware that their Perkeep instance has a public (i.e. unauthenticated) access point, that is to say, the webhook through which twitter feeds them events. (It is also annoying to implement (adding an unauthenticated webhook to the importer), but that is irrelevant to my point.)
I don't think this is all worth doing just for the "real time updates" feature. I suppose it all boils down to the fact that our "each user their own importer (== their own twitter app)" does not match twitter's business model, where they rather expect us (perkeep.org) to run one app for all of the Perkeep users.
So I'll move on to other things unless/until someone disagrees.
@bradfitz WDYT?

reopening, because I suppose as part of this issue, which should now remove the longpoller code anyway. I'll do that before closing.

https://perkeep-review.googlesource.com/c/perkeep/+/18546


Vickel: Watch striveenterprise.com

Vickel requests the watch of the watch_keyword striveenterprise\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

striveenterprise\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ


Possible integration with AWS Parameter Store

Hello,
is there anything programmed about an integration between Spring Cloud Config and AWS Parameter Store?
Since it looks like AWS tool for storing configurations, I thought it would be nice having some integration between that and Spring Cloud Config.

No we don't support AWS Parameter Store as a configuration backend.  However there is nothing preventing you for implementing your own support.

This is something I'm interested in too.

Just had a quick look at the AWS API for the parameter store. Newer versions actually support path-based lookups: https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html.
That means that instead of only directly implementing PropertySource and being forced to do a single lookup for each property name, the implementation could instead extend EnumerablePropertySource and also support multiple lookups to support shared application properties, overrides for active profiles, etc. Thus it should be possible to do something similar to the Consul support: calculate a bunch of paths based on the application name, active profiles, configured prefix etc. and then, using a PropertySourceLocator, create a CompositePropertySource containing an ordered list of AwsParamStorePropertySource instances, each containing the result of a path-based lookup.
Not sure if supporting various value formats would also make sense here: single key/value instead of whole YAML/Properties-based payloads don't really seem like a good fit for the Parameter Store.
I was looking into this because my team is thinking about starting to use the Parameter Store. If we go that way I'll see what I can contribute for this issue.

+1

@peruzzo please plus one the original comment using reactions, not a comment.

I've implemented something that seems to work quite well, based on what I described.  I will at least blog about it and publish the code. A pull request would require some more work to separate the code into an impl and separate starter probably, but I'll see what I can do.

Initial code can be found here: https://gitlab8.trifork.nl/jorisk/spring-cloud-aws-param-store

@jkuipers if you would like to contribute this to Spring Cloud Config, you will need to open a PR against this repo.

Glancing at it, it is not an EnvironmentRepository for config server, but a property source locator, like consul and zookeeper. It does not belong in this project.

@spencergibb  It would be great if we can make it easier for developers to use it out-of-the-box and if the code is maintained. Any ideas how to go about this?

as it is, it would make more sense as a module in spring-cloud-aws

Oh, totally agree: I stumbled upon this issue when I was searching for AWS Parameter Store support in Spring Cloud, and didn't realize that this issue tracker is specifically for the Config Server. I'll see if there's an open issue there already to request AWS Parameter Store support.

I'll follow up on this here: https://github.com/spring-cloud/spring-cloud-aws/issues/207

Hi, I am trying to find a way to integrate Spring Config Server with AWS Secrets Manager so that the client applications need to talk to only Spring Config Server to load all the properties (with normal properties loaded from Git backend, and secrets from AWS Secrets Manager). However, I am not sure how to achieve this. Could someone please point me in the right direction? Thanks!

Pretty sure this issue can be closed now, the feature has been included with Spring Cloud 2.x
spring-cloud-starter-aws-parameter-store-config
https://cloud.spring.io/spring-cloud-static/spring-cloud-aws/2.0.0.RELEASE/multi/multi__cloud_environment.html#_integrating_your_spring_cloud_application_with_the_aws_parameter_store

I don't think so. This is for integration with config server (ie an EnvironmentRepository). What is there is direct without config server.

If no one is actively working on it, I'd be happy to take a stab at implementing this.

@Walliee same here. I actually need this for some prototypes at work and can start/or help out if you haven't started yet. Been looking into the internals already to figure out how things are tied together.

@rshnaper I haven't started yet; so please go ahead. We can possibly collaborate once you have a PR open?
Here is what I had in mind:

Potentially reuse AWS Parameter Store support from spring-cloud-aws.
It would be nice to be able to support something like spring.cloud.config.token, so that config server can authenticate with AWS Parameter Store on client's behalf.

@spencergibb thoughts? any additional pointers?

@Walliee I agree, I was thinking of trying to re-use as much as possible from AWS Parameter Store Support but conform to the search path standards of config-server.
As for authorization, I was thinking of exposing a configuration parameter for a role that the config server can optionally assume before retrieving data from AWS ParameterStore. That way the actual authentication is left to the underlying AWS SDK with its default authentication chain but we can piggy back on it by assuming a specific role.

So the way it works for Vault today is that the Spring Cloud Config Client passes a Vault token (X-Config-Token header) to the Config Server and the server then uses this on the requests it sends to Vault.
This is so that Config Server doesn't need explicit access to secrets in Vault. You could have multiple apps connecting to Config Server that pass in their own tokens and thus can only access secrets that they have access to.
Since AWS Parameter Store supports storing secrets, I imagine we’d like to preserve the same semantics as Vault.

Hmm I can now see why the AWS Parameter Store Support module wasn't merged right away into the Config Server. The way AWS authorization works the config server will need to have access to Parameter Store in order to read specific entries.
This is normally done via custom roles thus either the config server is allowed to read all the entries or the client can pass the name of the role that config server will have to assume in order to retrieve specific entries. The problem with the roles is that they're not exactly the same as a client's secret (I'm assuming that is what being passed in X-Config-Token header?).
So if one wants to be super secure then the only option is for the client to fetch the properties directly from AWS Parameter Store just like it's done in AWS Parameter Store Support module. This is because authentication and authorization is done on the client and is not delegated to the config server.
Any thoughts on how to make it more secure apart from passing the name of the role that config server will temporarily assume for fetching specific entries from Parameter Store?

I wonder if Session Token is more appropriate in this case.

Actually both work on the same principle where temporary credentials are returned that a service or user will use to interact with AWS. According to the documentation get-session-token is used only by IAM users to generate temporary credentials while assume-role can be done by any service or user that has a role.
Initially I thought the client may just pass the name of the role to config-server to assume but the more I think about it the more it makes sense for the client to ask for temporary credentials via assume-role (or get-session-token) and pass the temporary credentials off to config server to use for retrieving the items.
I am thinking of making the following implementation:

If config server did not receive X-Config-Token header with the request then the default authentication chain will be invoked in order to fetch requested entries. This is assuming config server was set-up to access AWS, otherwise request will fail.
If X-Config-Token header is sent with the request then it will contain (Base64 encoded?) temporary credentials that config server will use to retrieve the requested items from Parameter Store

I'm still pondering whether sending temporary credentials over the wire is a good idea. I'll have to look into this a bit more.

What you are suggesting sounds good to me.

I'm still pondering whether sending temporary credentials over the wire is a good idea.

This is a valid concern/risk but one that is easily mitigated by using TLS.

I think the X-Config-Token approach should be good. Its basically what the Vault implementation for Config Server is doing.
I have a need for this as well, so if there is a repo I can look at and possibly contribute with, I'd be willing to help.


Drag and drop rows/columns

I'm not sure if this would be a feature request, since I have looked in the documentation but couldn't immediately find a reference to it: is there a possibility to drag and drop rows (or columns)?

Yes, this example shows how to enable those features.
https://bossanova.uk/jexcel/v3/examples/events


Bond checks are not removed when lacp_bonds config is changed

This was tested on cs:nrpe-70.
On a particular environment, all bonds were changed away from LACP to other bonding modes due to hardware incompatibility.  The bond checks were failing previously because of aggregator ID mismatches.  Now, they fail because the bonds are no longer LACP bonds - which is true and intentional.
I ran "juju config  --reset lacp_bonds", and the hooks quickly fired - however the bond checks remain on the system, requiring manual cleanup.

Imported from Launchpad using lp2gh.

date created: 2021-04-14T23:13:53Z

owner: vultaire

assignee: None

the launchpad url

(by eric-chen)
Close this issue because of no update of this issue over 1 year.
Please consider using the new Canonical Observability Stack instead.
(https://charmhub.io/topics/canonical-observability-stack)


PDF stamping of invoices

[x] Add approved by staff to the approved invoice pdfs
[x] Add inovice approver and date

closes: https://github.com/HyphaApp/hypha/issues/3539

@sandeepsajan0 @frjo Are you good with denormalizing and add the approved_at and approved_by to the invoice model?
The code to update them will go in here:
https://github.com/HyphaApp/hypha/blob/1b401334914f013b7d30e9bf4c2838361ee7c8f7/hypha/apply/projects/views/payment.py#L81-L87

Added the logic to store the approver and date at https://github.com/HyphaApp/hypha/pull/3698/commits/3b727c0b8b971685fe0ae514c2f8c1912f4c557f
Let me know if this something that need to be improved upon? e.g. displaying both finance1 and finance2 info etc.

@sandeepsajan0 thanks for feedback. I would like wait for the feedback on the content sample itself and then tackle both at once.

https://github.com/HyphaApp/hypha/issues/3539#issuecomment-1860480909


Python3.9 support

Has anyone tried to build tensorflow for Python3.9? For the assembly, everything seems to go fine, except for troubles with installing some pypi packages (Maybe there is a problem in Windows, installing using .wheel passes). Almost all the necessary packages are present except for grpcio. It turns out, we just need to wait until it appears.

We need to wait until official release of Python 3.9 and then we need to have our dependencies (numpy, pybind, grpcio, etc.) also update.

@skaldek
Please update as per above comment.

We need to wait until official release of Python 3.9 and then we need to have our dependencies (numpy, pybind, grpcio, etc.) also update.

Python 3.9 is officially released, so when do you plan to add 3.9 support to TensorFlow?

As mentioned in the quote, when all of our dependencies support py3.9

I may be wrong, but I believe this is the case:
python3.8 -m pipdeptree -p tensorflow | grep "^  -" | sed "s/  - //" | sed "s/ \[.*]//" | xargs python3.9 -m pip install

which is essentially
python3.9 -m pip install absl-py astunparse flatbuffers gast google-pasta grpcio h5py keras-preprocessing numpy opt-einsum protobuf six tensorboard tensorflow-estimator termcolor typing-extensions wheel wrapt

works fine for me. Am I missing anything?

Anyone interested in updates, best follow https://github.com/tensorflow/tensorflow/issues/44485


Write tests for Plan

Mainly need to decide what to do with the unreachable CloneNotSupportedException branch.
https://codecov.io/gh/material-motion/material-motion-runtime-android/src/fa7251b4067660da3ce47057e0b97e6a2690acd0/library/src/main/java/com/google/android/material/motion/runtime/Plan.java
To generate coverage report locally, first run gradle check then open library/build/reports/jacoco/debug/index.html in browser.

🎊 My diff is ready for review at http://codereview.cc/D2071


metadata_to_file is striping characters out of metadata filename

When exporting to CSV is was noticing that the g was missing from the filename of the metadata text file created with the CSV file.
Looking at the code the strip function is used which will remove any occurance of ANY of the characters included.
https://github.com/cal-adapt/climakitae/blob/7f58d849d1199108170f2b202ab220d80360f161/climakitae/data_export.py#L269
So in this case .csv.gz removes all ., c, s, v, g, and z characters from the string.

Here is the solution I thing we desire:
def rchop(s, suffix):
    if suffix and s.endswith(suffix):
        return s[:-len(suffix)]
    return s

somestring = 'this is some string rec'
rchop(somestring, ' rec')  # returns 'this is some string'

Making PR...

yes, this is an issue I noticed Friday and attempted to fix in PR #101 - looks like your fix is much more sophisticated, though. I'll be going over everything, thank you!

yes, this is an issue I noticed Friday and attempted to fix in PR #101 - looks like your fix is much more sophisticated, though. I'll be going over everything, thank you!

OMG I totally forgot about that change in #101 lol. That way works too. I did notice that the txt file ended up in a directory above where I was. You could just look over #103 and glean what I think is needed and then I can delete it.


lanetix/issues#2421 - Increase body size limit from 100k to 50MB

@lanetix/engineers CR Please.  Thanks
lanetix/issues#2421

Damir reviewed and could not emoji because of internet issues...

:fire:


PathFollow2D unit test

part of #43440
Adds a unit test for PathFollow2D node.
Tests the following :

[x] Sampling with unit offset
[x] Sampling with offset
[x] Behavior on removal of point from curve
[x] Behavior on setting up an h_offset and a v_offset
[x] Behavior when unit offset is below 0 and above 1
[x] Behavior when offset is below 0 and above the max value

Haven't run the tests yet. Will squash the commits when I run the tests and all the checks pass.

Squashed the commits

Thanks!


⚠ GitLab Server has degraded performance

In f7e6c4a, GitLab Server (https://gitlab01.its-telekom.eu) experienced degraded performance:

HTTP code: 200
Response time: 11508 ms

Resolved: GitLab Server performance has improved in acc3e0a.


Use kotlin+buildSrc to manage dependencies

more kotlin, better IDE integration

I see value in strings extraction, but in the same time I see problem in having mixed Groovy-Kotlin Gradle configuration. It would make sense if all Gradle configurations would be moved to Kotlin

It would make sense if all Gradle configurations would be moved to Kotlin

yes, that would be an interesting experiment
I don't have time right now to do that, but I would like to try someday

I see value in strings extraction, but in the same time I see problem in having mixed Groovy-Kotlin Gradle configuration.

I would ask: problem for who?
Not for gradle, it offers a java api and does not care wether you configure it with java or groovy or kotlin or a mix.
Not for the developer. If is interested by this project, we can assume he knows kotlin. The buildSrc+kotlin solution is super focused on a well known pain point around managing dependencies, the IDE integration makes it a superior alternative. Nothing else changes.

@MarcinMoskala
Are you still interested in having all gradle configuration files migrated to Kotlin?
I would like to give it a try to see how that goes.

I will submit a better pull request


bug(conda_exec): non-JSON output is returned

See also sci-bots/microdrop#249
This is caused by non-JSON output being written by conda install command, even though --json argument is used.
Steps to reproduce

conda install -c sci-bots-prerelease "microdrop.dropbot-plugin<0.21.1"
conda install -y --json -c sci-bots-prerelease microdrop.dropbot-plugin==0.21.1

Observed behaviour
The output from the steps above is:
Linked `dropbot_plugin` into MicroDrop activated plugins directory.
Configured MicroDrop to load `dropbot_plugin` by default.

{
  "actions": {
    "LINK": [
      "microdrop-plugins::microdrop.dropbot-plugin-0.21.1-0"
    ],
    "PREFIX": "C:\\Users\\chris\\Miniconda2-x86\\envs\\md-i247",
    "SYMLINK_CONDA": [
      "C:\\Users\\chris\\Miniconda2-x86"
    ],
    "UNLINK": [
      "microdrop-plugins::microdrop.dropbot-plugin-0.16.1-0"
    ],
    "op_order": [
      "CHECK_FETCH",
      "RM_FETCHED",
      "FETCH",
      "CHECK_EXTRACT",
      "RM_EXTRACTED",
      "EXTRACT",
      "UNLINK",
      "LINK",
      "SYMLINK_CONDA"
    ]
  },
  "success": true
}

Note that the first 3 lines are not valid JSON.
See how microdrop-launcher strips invalid JSON.

This issue also occurs on Conda Python 3.6 on Windows 32-bit with Visual Studio 2014 Community edition installed.
The extraneous non-JSON lines are:
ERROR: The system was unable to find the specified registry key or value.
"Found VS2014 at C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\"


Configurable window.on('blur') behaviour

BrowserWindow supports the always-on-top option but menubar calls hideWindow when focus is lost.
This behaviour makes it kinda hard to use the built-in developer tools.

Closing. Fixed with https://github.com/maxogden/menubar/pull/27.

we can always add fancier stuff in the future if people end up needing it https://github.com/maxogden/menubar/pull/27#issuecomment-113281702


Added tracking of XML comments via Roslyn (#542)

Solves #542.
Only enabled when XML document generation is requested to avoid FxCop warnings. Should work for both csproj and project.json (tested locally on project.json).
Still needs unit-tests if you guys like the methodology.

Changes look good to me.  If it's possible to get a decent Unit Test in there, that would be great.
cc @troydai @DustinCampbell

I need to learn a bit about XUnit and using different project files with Roslyn, but it should be doable and I definitely want it with the code.

After a lot of reading I figured out that the compilation options are read deep within the ProjectSystem initialization code. As such I did not find any simple way to test that code. I could look into refactoring the code to make it easier to test, but only if you guys are ok with the idea. The new design would have a static method in the ProjectSystem to infer the compilation and parsing option from the project file with a minimum number of dependencies.

If it's going to be too complicated, I wouldn't worry to much about it.  Most of the changes are just settings for Roslyn, so we should be comfortable that they have some of these scenarios tested.

I'm good with these changes, lets get them in.  :+1:


fix: :bug: cca activity comment count fix

PSQL SCRIPT
UPDATE  public.activity_feed
SET activity_type = REPLACE(activity_type,'Data comment','Added a comment')
WHERE activity_type = 'Data comment'


footer-html not rendered on production

Hi, I'm having some issues with the general footer that I set through the footer-html option.
On my localhost is working fine but on our production server is not rendered at all.
What I have already tried and checked:

insert the < ! DOCTYPE html >,  and  tags in the page html and in the footer html
tried to change the page margins to 0 or 20, but the footer is not shown in any case
tried to write the footer html as simplest as possible, also inline instead of loading it from the file
the css file has no width: 100% and no height: 100% for body and html selectors
no errors are shown, and also ignoreWarnings set to false doesn't help

That's the code, I don't know if it can help:

        $pdf_options = [
            'no-outline',         // Make Chrome not complain
            'margin-top' => 20,
            'margin-right' => 20,
            'margin-bottom' => 20,
            'margin-left' => 20,
            //'dpi' => 380,

            'footer-html' => '<!DOCTYPE html>Footer test',
            // Default page options
            //'disable-smart-shrinking',

            'binary' => $this->config->item('wkhtmltopdf_path')
        ];

        $pdf = new Pdf($pdf_options);

        $pdf->addPage($pdf_data['html']);

        if ( ! $pdf->saveAs($pdf_data['filename_with_path'])) {
            die($pdf->getError());
        }

Any help?
Thanks a lot in advance!

Any error?

Sorry, missed that you mentioned "no errors".
Hmm, I don't know then. Must be something with wkhtmltopdf itself. Maybe you have different version in production?
Actually there's not much we can do here. So I have to close this for now. If you feel something must be fixed, please provide a full example to reliably reproduce the issue.


Strange output behaviour on Quaternion when using rotation from 6 DOF input hardware

I used your implementation of the 1€ Filter to filter the orientation of the HTC Vive controller.
I noticed that when pointing the controller in certain direction, the object that rotate with the controller behave strangely when using the filter.
I had to learn the internal functioning of a quaternion to understand the bug. Here is an explanation of what I understood and a commit that fix this issue for all kind of input hardware that have the same problem.
We know that a quaternion (x, y, z, w) represent the same rotation that (-x, -y, -z, -w).
So an input device has to send only one of the two quaternion to the software (assuming that we use only normalized quaternions).
For example, hardware like HTC Vive decided to send only quaternions with a positive y value.
This cause the w, x and z variables to jump to an opposite value when y reach 0, making the input quaternion non-continuous, even if the rotation is visually continuous. However, the filtered rotation become visually not continuous (we can see a quick 360 degree rotation of the object that use the filtered quaternion).
This pull request adds a workaround that make the output of the filter consistent even if the input is not.

Thanks for your contribution @marcbal !


Upgrade Parallels Tools to 13.3.0-43321

Parallels Desktop v13.3.0 has been recently released. Guest tools for boot2docker were published too.
@romankulikov Can the fix from https://github.com/boot2docker/boot2docker/pull/1294 be reverted, after merging this Pull-Request?

ping @romankulikov :heart: :pray:

I've rebased this branch onto v18.03.0-ce tag.

Yep. This looks ok. But I suggest to drop fix of #1294 here as well.
P. S. Sorry for a long delay with the answer.

@romankulikov Thanks! I've appended the commit reverting #1294.
@tianon Please, merge it. Looking forward for a next release now :)

Thanks folks! :heart: :heart:


Add docker daemon to bash completion

This amends #13771. It assumes that the changes to bash completion in that PR are removed.
ping @tianon @jfrazelle for review
ping @tiborvass @thaJeztah
Also renamed $main_options_with_args to $global_options_with_args to make its intent clearer.
Got rid of $global_options_with_args_glob by inlining.
Will add the zfs storage driver in another PR.

you're awesome, @albers! I'm not very well at these scripts to review, just :heart:

Thanks @albers would you mind closing this PR until the other one is merged? You can then reopen it before pushing to the branch. We don't like to have dependencies among PRs :) Thanks for your work though, really appreciated.

Temporarily closed as requested by @tiborvass.

Reopening as #13771 is merged.

Will take care of the conflicts in about a week.

I added this to the 1.8 milestone, because it's part of https://github.com/docker/docker/pull/13771
ping @calavera for https://github.com/docker/docker/pull/13934#issuecomment-124369968, because I don't know when code-freeze is for 1.8 (but I assume we can get this in during the release-candidates as well)

There was a discussion recently that the completions are sort of tooling and therefore should not be strictly impacted by code freeze, see here.
I hope others share this view. Changes to completion always come in late.

@albers Needs rebase, sorry!

No problem, rebase is mostly due to changes of my own.

@albers sorry need a rebase :)
Also, the "global flags" (-D, --tls, ...) are now valid after the daemon command. And having them before the daemon command is invalid, even though we can't really help the user in the autocompletion..

@albers did you have time to look into this? I'd :heart: to have it ready for the RC2.

@calavera I will do it on friday. Sorry, can't get to it earlier.

@albers no problem I'll carry it. Thanks for your help so far!

Carried in #15166


Unexpected reserved word - import

Trying to use brush.getHtml in Node, 'brush-base' throws an error because of lack of support for es6 'import'.

This is meant to be run with Babel, add this before your require:
require("babel-register");

Curious, what are you trying to do?

Ah okay, I'll give that a shot and let you know how it works. I'm looking for a way to syntax-highlight Javascript and print its highlighted form into a console. Probably going to have to write a new renderer that returns JSON or something.

Awesome! Thanks for the push in the right direction. I'll see what I can do and update you here.

Hey man, I ended up making a little helper function with Cheerio to process the html string that brush.getHtml() produces. Figured this would be easier than tinkering with your dependency. It's here if you're interested: https://github.com/eldino/terminal-hackertyper/blob/master/src/syntax-highlight-json-wrap.js


[MIG-588] Emit events at decision points and when problems detected in migrations.

Is your feature request related to a problem? Please describe.
SSIA

Per MIG-588, we have put a mass addition of events on hold for now until there's a clear need for it.


.Net: Bug: ChatCompletionAgent.InvokeStreamingAsync(...) method when called with data source fails when Instructions not empty

Describe the bug
When InvokeStreamingAsync(...) is called on ChatCompletionAgent  who has AzureSearchChatDataSource connected to it fails with 400 BadRequest

To Reproduce
Steps to reproduce the behavior:
Setup
csproj
<Project Sdk="Microsoft.NET.Sdk">

	<PropertyGroup>
		<OutputType>Exe</OutputType>
		<TargetFramework>net8.0</TargetFramework>
		<ImplicitUsings>enable</ImplicitUsings>
		<Nullable>enable</Nullable>
	</PropertyGroup>

	<ItemGroup>
		<PackageReference Include="Azure.Identity" Version="1.13.1" />
		<PackageReference Include="Azure.Search.Documents" Version="11.6.0" />
		<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
		<PackageReference Include="Microsoft.Extensions.Hosting.Abstractions" Version="8.0.1" />
		<PackageReference Include="Microsoft.SemanticKernel.Agents.Core" Version="1.29.0-alpha" />
		<PackageReference Include="Microsoft.SemanticKernel" Version="1.29.0" />
		<PackageReference Include="Microsoft.SemanticKernel.Abstractions" Version="1.29.0" />
		<PackageReference Include="Microsoft.SemanticKernel.Connectors.OpenAI" Version="1.29.0" />
	</ItemGroup>

	<ItemGroup>
		<ProjectReference Include="..\HeiDi.Sandbox.Utils\HeiDi.Sandbox.Utils.csproj" />
	</ItemGroup>

</Project>

failing code snippet
#pragma warning disable SKEXP0001
#pragma warning disable SKEXP0010
#pragma warning disable SKEXP0110
#pragma warning disable SKEXP0020
#pragma warning disable AOAI001

using Azure.AI.OpenAI.Chat;
using Azure.Search.Documents;
using HeiDi.Sandbox.Utils.Providers;
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.Agents;
using Microsoft.SemanticKernel.ChatCompletion;
using Microsoft.SemanticKernel.Connectors.AzureOpenAI;
using System.Text.Json;

var configurationProvider = ConfigurationsProvider.CreateNew();

var aiSearchConfigration = configurationProvider.AiSearchConfiguration;
var openAiConfigration = configurationProvider.OpenAiConfigration;

var datasource = new AzureSearchChatDataSource
{
    Endpoint = new Uri(aiSearchConfigration.Endpoint),
    Authentication = DataSourceAuthentication.FromApiKey(aiSearchConfigration.ApiKey),
    IndexName = "contracts-index",
    Filter = SearchFilter.Create($"source_id eq 'generalknowledge'"),
};

var kernel = Kernel.CreateBuilder()
      .AddAzureOpenAIChatCompletion(
          openAiConfigration.ModelDelpoymentName,
         openAiConfigration.Endpoint,
         openAiConfigration.ApiKey)
      .Build();

var chatHistory = new ChatHistory();

var question = "Could you describe the change request process including all steps?";

Console.WriteLine($"User > {question}");

chatHistory.AddUserMessage(question);

var agent = new ChatCompletionAgent()
{
    Description = "You are a frendly assisant for user",
    // fail when Instructions has value
    Instructions = "Use in your answers the same language than the user has used in the question",
    // it will not fail with
    /*

    Instructions = "",

     */
    Name = "open_ai",
    Kernel = kernel,
    Arguments = new KernelArguments(new AzureOpenAIPromptExecutionSettings()
    {
        TopP = 0.5,
        Temperature = 0.5,
        MaxTokens = 1000,
        AzureChatDataSource = datasource,
    }),
};

var citations = new List<ChatCitation>();

await foreach (var content in agent.InvokeStreamingAsync(chatHistory))
{
    var contentReult = content.Content ?? string.Empty;
    if (!string.IsNullOrEmpty(contentReult))
        Console.WriteLine($"Asistatnt > {contentReult}");

    var update = content.InnerContent as OpenAI.Chat.StreamingChatCompletionUpdate;
    var messageContext = update?.GetMessageContext();

    if (messageContext?.Citations is not null)
    {
        citations.AddRange(messageContext?.Citations);
    }
}

var options = new JsonSerializerOptions { WriteIndented = true };
var json = JsonSerializer.Serialize(citations.Select(x => new Citation(x.Title, x.FilePath, x.Content)).Distinct(), options);

Console.WriteLine($"Tool > Citations: {Environment.NewLine}{json}");
Console.WriteLine("end of the line");
Console.ReadKey();

public record Citation(string Titile, string FileSource, string Content);

Expected behavior
InvokeStreamingAsync(...) method should start stream
Screenshots
If applicable, add screenshots to help explain your problem.
Platform

OS: windows
IDE: Visual Studio
Language: C#
Source: sources are given in setup in to reproduce step

Additional context
Add any other context about the problem here.

@PanClifton Thanks for creating this issue. Unfortunately, HTTP error message is not included in the exception, so I had to add HTTP logging handler to see what an actual response was. Here is an example of such logging handler, so you can use it for your own purposes in the future:
https://github.com/microsoft/semantic-kernel/blob/f5facce9ec0dc86e97a13dad0ac4c2476f218bb7/dotnet/src/InternalUtilities/samples/InternalUtilities/BaseTest.cs#L150
Based on logging, there is a following error message in response: Validation error at #/messages/0/name: Extra inputs are not permitted.
I removed Name = "open_ai", from ChatCompletionAgent in your code example and it worked as expected. There could be a case that Azure OpenAI Chat Completion with data service doesn't support additional parameters in messages such as agent name.
Please let us know if that works for you. Thanks!


"badge" action is outdated

Hello,
I've seen that the badge action is missing some parameter (that are available through badge command line tool). Those parameters are shield_scale and shield_geometry.
Digging more, I've found there is also a plugin called badge. It is the same tool as the action from fastlane itself but the plugin one is actually up to date and contains the 2 parameters.
I don't know what's the best to do:

update the badge action
or remove/deprecate the badge action in favour of using the badge plugin?

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Environment
Please run fastlane env and copy the output below. This will help us help you :+1:
If you used --capture_output option please remove this block - as it is already included there.
🚫 fastlane environment 🚫
Stack

Key
Value

OS
10.12.6

Ruby
2.3.2

Bundler?
true

Git
git version 2.13.3 (Apple Git-91)

Installation Source
~/.rbenv/versions/2.3.2/bin/fastlane

Host
Mac OS X 10.12.6 (16G29)

Ruby Lib Dir
~/.rbenv/versions/2.3.2/lib

OpenSSL Version
OpenSSL 1.0.2j  26 Sep 2016

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
~/Downloads/Xcode-beta.app/Contents/Developer/

Xcode Version
9.0

System Locale

Error

No Locale with UTF8 found 🚫

fastlane gems

Gem
Version
Update-Status

fastlane
2.51.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.0.0

bundler
1.13.6

io-console
0.4.5

CFPropertyList
2.3.5

i18n
0.8.6

minitest
5.10.3

thread_safe
0.3.6

tzinfo
1.2.3

activesupport
4.2.9

public_suffix
2.0.5

addressable
2.5.1

babosa
1.0.2

curb
0.9.3

fastimage
2.1.0

colored
1.2

highline
1.7.8

commander-fastlane
4.4.5

dotenv
2.2.1

excon
0.58.0

multipart-post
2.0.0

faraday
0.12.2

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

faraday_middleware
0.12.2

gh_inspector
1.0.3

jwt
1.5.6

little-plugger
1.1.4

multi_json
1.12.1

logging
2.2.2

memoist
0.16.0

os
0.9.6

signet
0.7.3

googleauth
0.5.3

httpclient
2.8.3

mime-types-data
3.2016.0521

mime-types
3.1

declarative
0.0.9

declarative-option
0.1.0

uber
0.1.0

representable
3.0.4

retriable
3.1.1

google-api-client
0.12.0

json
2.1.0

mini_magick
4.5.1

multi_xml
0.6.0

plist
3.3.0

rubyzip
1.2.1

security
0.1.3

slack-notifier
1.5.1

terminal-notifier
1.8.0

unicode-display_width
1.3.0

terminal-table
1.8.0

tty-screen
0.5.0

word_wrap
1.0.0

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.3

xcodeproj
1.5.1

rouge
2.0.7

xcpretty
0.2.8

xcpretty-travis-formatter
0.0.4

badge
0.8.4

fuzzy_match
2.0.4

nap
1.1.0

cocoapods-core
1.3.1

cocoapods-deintegrate
1.0.1

cocoapods-downloader
1.1.3

cocoapods-plugins
1.0.0

cocoapods-search
1.0.0

cocoapods-stats
1.0.0

netrc
0.7.8

cocoapods-trunk
1.2.0

cocoapods-try
1.1.0

escape
0.0.4

fourflusher
2.0.1

molinillo
0.5.7

ruby-macho
1.1.0

cocoapods
1.3.1

generated on: 2017-08-09

I'm looking into replacing the action with the plugin but I think I'm missing something… I read #10127 about the deprecation of the action but adding the plugin and removing the gem still seems to use the action.
On running fastlane I get this
[23:11:22]: Plugin 'Badge' overwrites already loaded action 'badge'
[…]
[23:11:25]: -------------------
[23:11:25]: --- Step: badge ---
[23:11:25]: -------------------
This action (badge) is deprecated
I think this is because they have the same name, and the plugin depends on the badge gem…
Is there something that can be done here or is just waiting for the action to be removed from fastlane itself?

I have the same issue

I am also facing the issue where it's writing in console:
[23:11:22]: Plugin 'Badge' overwrites already loaded action 'badge'
[…]
[23:11:25]: -------------------
[23:11:25]: --- Step: badge ---
[23:11:25]: -------------------
==========================================
This action (badge) is deprecated
==========================================

But the badge action that is used is the badge plugin.

Hey, I've just released version 1.0.0 which renames the plugin action to add_badge, this should resolve the conflict you guys are having with the old badge action.
Please upgrade and use add_badge then everything should work fine :)

Wohooo, awesome, thanks @HazAT ❤

🎉  thank you


Update particle_life.html

added more notes
enhanced some variables names
added atom radius in settings & GUI
atoms now are drown as circles (atoms now are centered around its coordinates)

we can draw in squares as before and use the radius value to center it. (eg. x-radius, y-radius)

added a function that will draw lines between atoms that are effecting each other (can be activated on GUI)
added a black background for canvas

Great Job, thanks

Hi, drawing the atoms as circles does create a performance penalty, it drops down to 25 fps for me with the default settings. Could I suggest that you parameterise it? (As you did perfectly with the drawLines).
I would dare say that if the default settings fall below 30 fps, it's probably not a great idea without a flag. I could have a look, two options are to use three.js and dedicated shaders as they are much performant when using webgl. Additionally, using web workers or gpu.js to execute the positions through applyRules would give us a lot more choice

Ok, I'll make a new folder in the GUI for drawing customization and add them there as options


Fix packaging on NPM

This one turned out tougher than I was expected. I managed to get a distribution that works with the render methods, but note one that allows you to use the React components


Consider using unreachable for conversions that always succeed

https://github.com/microsoft/winrt-rs/pull/354#discussion_r526196123

I had a look at this but couldn't see an obvious way to apply. Feel free to reopen if you think there's still value here.


autocomplete for setting the flower color has an extra semicolon in it (in Javascript)

The autocomplete for setFlowerColor (in Javascript) has an extra semicolon and shows up like this:
this.setFlowerColor("red");;

It should work as intended now.


Move dump functions to debuglib

Resolves #1455

I was thinking of something more like
#ifdef LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE
void LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE(const uint8_t *data, size_t size);
#define LIBSPDM_INTERNAL_DUMP_HEX_STR(data, size) LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE(data, size)
#else
void libspdm_internal_dump_hex_str(const uint8_t *data, size_t size);
#define LIBSPDM_INTERNAL_DUMP_HEX_STR(data, size) libspdm_internal_dump_hex_str(data, size)
#endif /* LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE */

I was thinking of something more like
#ifdef LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE
void LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE(const uint8_t *data, size_t size);
#define LIBSPDM_INTERNAL_DUMP_HEX_STR(data, size) LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE(data, size)
#else
void libspdm_internal_dump_hex_str(const uint8_t *data, size_t size);
#define LIBSPDM_INTERNAL_DUMP_HEX_STR(data, size) libspdm_internal_dump_hex_str(data, size)
#endif /* LIBSPDM_INTERNAL_DUMP_HEX_STR_OVERRIDE */

That's less work to do, but I was wondering why dump functions were "internal".
Understood that integrators who use their own debug lib would have to implement dump functions after dump functions get moved to debug lib. Is there other reason we should keep these functions internal?

The include/hal/ functions are mainly for functionality that the core libspdm library can't provide itself. In this case the core library can do that, and I think what is there now would be the default implementation for most Integrators of the library. The override macros would allow the small percentage of folks who need it the ability to customize those functions without burdening others with providing ``include/hal/` implementations. If you're concerned about the API stability of those functions, we can make a provision that overridable internal functions have the same API guarantees as publicly available functions.

Got it, thanks for the clarification.
Okay, I will change it to the default-override style.


use vue slot syntax

As opposed to using a 'text' prop to allow users to change the displayed text, it would be nice to write it as a child of the  component. If you would like I can go ahead and make a PR with this functionality implemented using Vue's slot syntax (which has been recently updated).
This allows the component to be used as follows with a syntax inspired by the W3C Web Components spec draft:
<template>
  <div id="app">

    <vue-skip-to to="#main-content">
      Custom skip text
    </vue-skip-to>

    [...]

  </div>
</template>

Awesome @shwilliam
I'd be grateful for the contribution with a PR

Added in new version v1.0.6
Thanks


Move to Github Actions

Is your feature request related to a problem? Please describe.
In a process of modernizing CI/CD, we are going to move from Jenkins + Travis (for checks), to Github Actions.
Describe the solution you'd like
What should be done in Github Actions:

PR cannot be merged until checks pass, checks should run test and license validation via RAT
after the merge, CI workflow should trigger a build and generate code coverage
release workflow should be implemented:

updating AET changelog
bumping version
uploading artifacts to AET Release page
creating PR with changelog changes

We should be able to trigger the workflow manually and have control over the version number we are going to release.
Describe alternatives you've considered
N/A
Additional context
N/A

This is finished developer-wise. The next steps are:

take care of internal environment issue in relation to https://github.com/wttech/aet/issues/624
deploy the release and test it

You can see the details of the release process here (note: you won't see that unless you can login to our confluence space)

@devzbysiu Automatic PR failed to trigger check.

@pilarskie it's fixed now. The issue was related to the github bot creating a PR. Github actions have a safety net for infinite loop triggered by bots. Because of that, the PR which is created by the bot does not trigger the workflow. The workaround for that is to use an existing user to create a PR.
From the functional perspective, nothing changed. The release is created the same way. After it finishes, the PR should have triggered PR check.

Tested and accepted.


Always install the latest version of a pip package

When re-running playbooks, if a version of the pip package was changed,
the playbooks would just ignore the package change because the package
is already installed. This change forces to use the latest package
available.
Connects rcbops/u-suk-dev#218
Signed-off-by: Jean-Philippe Evrard<EMAIL_ADDRESS>

Not tested on my AIO, will let jenkinks do its job.

👍

:+1:


Made all base classes abstract to ensure correct usage

Codecov Report

Merging #84 (80a9c3f) into main (412e1db) will not change coverage.
The diff coverage is 0.00%.

:exclamation: Current head 80a9c3f differs from pull request most recent head 1465ce9. Consider uploading reports for the commit 1465ce9 to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##             main      #84   +/-   ##
=======================================
  Coverage   58.11%   58.11%
=======================================
  Files          38       38
  Lines         616      616
=======================================
  Hits          358      358
  Misses        258      258

Impacted Files
Coverage Δ

...IncrementalGenerators/DataStoreServiceGenerator.cs
100.00% <ø> (ø)

...rator/IncrementalGenerators/RepositoryGenerator.cs
82.85% <ø> (ø)

...ncrementalGenerators/RestApiControllerGenerator.cs
100.00% <ø> (ø)

...ataMesh.DataProduct/Apis/Rest/RestApiController.cs
0.00% <0.00%> (ø)

...DataProduct/DataStore/Services/DataStoreService.cs
0.00% <0.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Serializing optimization results

Currently, to de/serialize cupyx.optimizing.optimize results, we need to write as follows:
with cupyx.optimizing.optimize(...) as ctx:
   ctx.load(path)
    ...
   ctx.save(path)

I think it is better to pass it as an argument like this:
with cupyx.optimizing.optimize(..., path, readonly=False):
    ...

Behavior: deserialize optimization cache from the path if it exists (raise an error if it does not exist when readonly=True), run cupy code with optimization, serialize the cache if readonly=False and the cache has been modified within the context.
Moreover, I think it's better if we can provide a command line option to quickly test existing cupy code:
# Run cupy_script.py under optimize context using cache, update the cache on exit
python -m cupyx.optimizing.optimize -f cache.pkl cupy_script.py

# Run cupy_script.py under optimize context using cache, do not update the cache
python -m cupyx.optimizing.optimize -f cache.pkl -r cupy_script.py

Implemented via #3845


Bold Text Formatting.

 It's been a game changer for me.
I've been using it for a while now and noticed something. When the AI uses double asterisks to mark text as bold (markdown style), the plugin doesn't actually show the text in bold.
For instance, if the AI spits out a list like:

Item 1
Item 2
Item 3

The items don't pop out in bold in Vim. they just show the double asterisks instead. - ** Item 1 **
It'd be super cool if the plugin could support bold text formatting when double asterisks are used (and double underscores __ text __ in case AI decides to use them instead, and maybe italic with single * text * and _ text _ too?). I think it'd make the AI's output easier to read, especially for titles and lists.
I get that this might not be a quick fix, but I wanted to throw the idea out there. Thanks for considering it, and keep up the awesome work on the plugin!
Edit: A workaround is to create a file in ~/.vim/syntax/aichat.vim and populate it with the follwoing:
syntax region markdownItalic matchgroup=ItalicDelimiter start="\*" end="\*" concealends
highlight ItalicDelimiter cterm=italic gui=italic
highlight markdownItalic cterm=italic gui=italic

syntax region markdownBold matchgroup=BoldDelimiter start="\*\*" end="\*\*" concealends
highlight BoldDelimiter cterm=bold gui=bold
highlight markdownBold cterm=bold gui=bold

make sure to have set conceallevel=2 in your .vimrc

Hi
yes you can give specific command as you proposed.
More in general, if your LLM output is formatted with markdown markups as it seems from your example, in vim you can just say:
:set syntax=markdown
the true visualization depends on how markdown is managed in vim.
Probably you want to use some markdown plugin to enhance visualization.

BTW, if you want LLM completions in markdown format, just instruct the LLM to produce a completion in markdown (or any other text-based format, JSON, CSV, YAML, etc.).
Your vim editor will manage the corresponding visualization enhancements setting/forcing a corresponding syntax with or without a specific plugin.
Also, in case of markdown maybe an idea is to build your prompt in markdown and you probably will have a completion in markdown ;-).
I propose to close the issue.


make ConfigServerBootstrapOverridesLifecycle to package access

https://github.com/spring-cloud/spring-cloud-config/issues/2211

@walnut-tom Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@walnut-tom Thank you for signing the Contributor License Agreement!


Fix CI for Pushing E2E Images to Docker

Closes: #XXX
What is the purpose of the change
CI for pushing e2e images to docker have been failing recently on main. (cref:https://github.com/osmosis-labs/osmosis/actions/runs/6740991117/job/18324888461)
Digging down the root cause, I have saw a log in our CI failure saying: "scripts/makefiles/build.mk: No such file or directory".  This led me to thinking that maybe docker can't access the Makefiles under scripts/Makefile, and confirmed this was the case after noticing scripts folder under docker ignore.
This PR removes scripts from docker ignore
Testing and Verifying
This change is a trivial rework / code cleanup without any test coverage.
Documentation and Release Note

[ ] Does this pull request introduce a new feature or user-facing behavior changes?
[ ] Changelog entry added to Unreleased section of CHANGELOG.md?

Where is the change documented?

[ ] Specification (x/{module}/README.md)
[ ] Osmosis documentation site
[ ] Code comments?
[ ] N/A

LGTM


[firebase_auth] How I get new credential in SignIn with Apple flow?

Is your feature request related to a problem? Please describe.
Hi flutterfire team.
I tried to link multiple auth provider to an account.
And I tried to link Sign in with Apple credential to existing account refer to firebase-ios-sdk document.
But I got error PlatformException(ERROR_MISSING_OR_INVALID_NONCE, Duplicate credential received. Please try again with a new credential., null) and I want to solve it.
This document describes how to resolve this kind of error as follows:

If you want to link a Sign in with Apple credential to another account, you must first attempt to link the accounts using the old Sign in with Apple credential and then examine the error returned to find a new credential. The new credential will be located in the error's userInfo dictionary and can be accessed via the FIRAuthErrorUserInfoUpdatedCredentialKey key.

I want to get new credential from error.userInfo[FIRAuthErrorUserInfoUpdatedCredentialKey] for solve that error.
However, can not refer to error.userInfo from flutter side.
Describe the solution you'd like
I want get new credential when ERROR_MISSING_OR_INVALID_NONCE error occurred in Sign in with Apple flow.
Additional context
none.
Thank you.

Is Sign in with Apple feature being worked on? Apps are now getting rejected for not providing "Sign in with Apple" We would have to remove other social logins and email only. Please upvote and make this high priority.

Hi @yuichirokato
I see there's an open issue addressing the case you described.
Please follow up on that issue,
I'm closing the current one as duplicate.
If you disagree please write in the comments
and I will reopen it.
Thank you

Lets consolidate under #1456 - we'll be looking at parsing native error messages & codes and bubbling these up to the Dart layer in a consistent cross-platform format.


fix(client): handle sse ping

:tada: This PR is included in version 0.2.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


How to convert time to normal view ?

When I use:
for forecast in weather.forecasts:
for hourly in forecast.hourly:
resp_msg += f'Time: {hourly.time}\n'
f'Temperature: {round((hourly.temperature - 32) / 1.8)}°C\n'
f'Description: {hourly.description}\n'
f'Type: {hourly.type}\n\n'
My bot returns:
Time: 0
Temperature: 17°C
Description: Partly cloudy
Type: Partly Cloudy
Time: 300
Temperature: 17°C
Description: Partly cloudy
Type: Partly Cloudy
Time: 600
Temperature: 16°C
Description: Partly cloudy
Type: Partly Cloudy
Time: 900
Temperature: 19°C
Description: Patchy rain possible
Type: Light Showers
How can I transform "Time" from 600 to 6:00?

this looks like a genuine misinterpretation of the API's response on my end, i should've turned this to a python time object instead of a raw int. i'll change this in a future update, thanks!

Fixed in version 0.4.3.


No version for ARM architecture

Can we please have a compiled version for the Raspberry Pi and other ARM based architecture? Or at least allow us to build our own.

YES!!!!!!!!!!!!!
That would be great.

we don't have plan to support ARM based architecture for the moment.  Will consider if there is strong business requirement.


WIP: refactor resolution sync

Description of the change:
An attempt to simplify resolution syncing.

Closing out for now. Will try again at some point.


missing date for absent students

if a student is not in the csv, then it is marked for verbalization but without date!

Yes I saw that one too. The date can be fixed quickly in upper right part

script updated to fix the issue


issue 400.5: limit the number of async threads to be less than the number of cores

http://jenkins01.arangodb.biz:8080/job/arangodb-matrix-pr/388/


Added new JS project

Pull Request for WebMasterLog 💡
Issue Title: #153 Web Music Player

Name of the project : Web music player
Category:  Vanilla-JS-Projects
Name: Anshul Soni
GitHub ID: @anshulsoni4
Idenitfy yourself: GSSOC

Closes: #153
Describe the add-ons or changes you've made 📃
Added new JS project
Type of change ☑

What sort of change have you made:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Code style update (formatting, local variables)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested? ⚙

Checklist: ☑

[ ] My code follows the Contributing Guidelines & Code of Conduct of this project.
[x] This PR does not contain plagiarized content.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly wherever it was hard to understand.
[x] My changes generate no new warnings.

Screenshots 📷

Note to reviewers 📄
pls review

@Avdhesh-Varshney pls review


[WIP] Add dotaplus xp

Closes #1864

The dotaplus object from the parsed replay doesn't seem to appear in insertMatch function, can anyone spot what I'm missing?

I'm going to add the data to more endpoints that requires more research on the codebase.


fix(java_common): allow analyzers to throw InterruptedExceptions

Can you say more what you mean by "allow", and why it matters?

Can you say more what you mean by "allow", and why it matters?

I added more to the description.


Could not build Objective-C module 'sentry_flutter'

Platform
Flutter Mobile
Obfuscation
Disabled
Debug Info
Enabled
Doctor
puro flutter doctor -v
[!] Flutter (Channel stable, 3.24.3, on macOS 14.7 23H124 darwin-arm64, locale en-US)
• Flutter version 3.24.3 on channel stable at /Users/simone/.puro/envs/app_ios18/flutter
! Warning: flutter on your path resolves to /Users/simone/.puro/envs/stable/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at
/Users/simone/.puro/envs/app_ios18/flutter. Consider adding /Users/simone/.puro/envs/app_ios18/flutter/bin to the front of your path.
! Warning: dart on your path resolves to /Users/simone/.puro/envs/stable/flutter/bin/dart, which is not inside your current Flutter SDK checkout at
/Users/simone/.puro/envs/app_ios18/flutter. Consider adding /Users/simone/.puro/envs/app_ios18/flutter/bin to the front of your path.
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 2663184aa7 (3 weeks ago), 2024-09-11 16:27:48 -0500
• Engine revision 36335019a8
• Dart version 3.5.3
• DevTools version 2.37.3
• If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.
[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
• Android SDK at /Users/simone/Library/Android/sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/to/macos-android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 16.0)
• Xcode at /Applications/Xcode-16.0.0.app/Contents/Developer
• Build 16A242d
• CocoaPods version 1.15.2
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2023.3)
• Android Studio at /Users/simone/Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 17.0.10+0-17.0.10b1087.21-11572160)
[✓] Connected device (6 available)
• SM T580 (mobile)                • 52037cf346ee143b                     • android-arm    • Android 8.1.0 (API 27)
• sdk gphone64 arm64 (mobile)     • emulator-5554                        • android-arm64  • Android 14 (API 34) (emulator)
• iPhone 15 (mobile)              • 64A8AFA6-397E-483C-BEE9-054EB1636B78 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-17-4 (simulator)
• macOS (desktop)                 • macos                                • darwin-arm64   • macOS 14.7 23H124 darwin-arm64
• Mac Designed for iPad (desktop) • mac-designed-for-ipad                • darwin         • macOS 14.7 23H124 darwin-arm64
• Chrome (web)                    • chrome                               • web-javascript • Google Chrome 129.0.6668.70
! Error: Browsing on the local area network for Simone’s iPhone. Ensure the device is unlocked and attached with a cable or associated with the same local area network as
this Mac.
The device must be opted into Developer Mode to connect wirelessly. (code -27)
[✓] Network resources
• All expected network resources are available.
! Doctor found issues in 2 categories.
Version
8.9.0
Steps to Reproduce
When I launch puro flutter build ios from the terminal the build has success.
When launched from Xcode 16, i get an error.
Please mind that I've already tried with:

deleting Derived Data
updating Pods
cleaning Flutter project
updating pubspec
cleaning Xcode build folder (with  xcodebuild clean or directly in Xcode)

Expected Result
The project should build from both terminal and Xcode.
Actual Result
I receive this error from Xcode 16 build:
/Users/simone/.puro/shared/pub_cache/hosted/pub.dev/sentry_flutter-8.9.0/ios/Classes/SentryFlutterReplayBreadcrumbConverter.h:1:9: note: while building module 'Sentry' imported from /Users/simone/.puro/shared/pub_cache/hosted/pub.dev/sentry_flutter-8.9.0/ios/Classes/SentryFlutterReplayBreadcrumbConverter.h:1:
@import Sentry;
^
:2:9: note: in file included from :2:
#import "Headers/Sentry-Swift.h"
^
/Users/simone/Library/Developer/Xcode/DerivedData/Runner-fjiefktzvsnoasawfjrslgcvjuvm/Build/Products/Release-iphonesimulator/Sentry/Sentry.framework/Headers/Sentry-Swift.h:1028:2: error: unsupported Swift architecture
#error unsupported Swift architecture
^
:1:9: note: in file included from :1:
#import "Headers/sentry_flutter-umbrella.h"
^
/Users/simone/Sites/apps/app_io18/app_io18/app_io18/ios/Pods/Target Support Files/sentry_flutter/sentry_flutter-umbrella.h:14:9: note: in file included from /Users/simone/Sites/apps/app_io18/app_io18/app_io18/ios/Pods/Target Support Files/sentry_flutter/sentry_flutter-umbrella.h:14:
#import "SentryFlutterReplayBreadcrumbConverter.h"
^
/Users/simone/.puro/shared/pub_cache/hosted/pub.dev/sentry_flutter-8.9.0/ios/Classes/SentryFlutterReplayBreadcrumbConverter.h:1:9: error: could not build module 'Sentry'
@import Sentry;
^
:0: error: could not build Objective-C module 'sentry_flutter'
Are you willing to submit a PR?
None

thanks for the report, we'll have a look

Have you tried this? #2303 (comment)

Hi, yes. I mentioned it in the "Steps to reproduce".

In the terminal which xcode version is used? e.g with xcode-select is it also using xcode16?

Thanks.
This is the output of the xcode-select command:
xcode-select -p
/Applications/Xcode-16.0.0.app/Contents/Developer
So I suppose it's using Xcode 16 even in the terminal.
I just noticed that if i try to run the application from Xcode or Android Studio directly on an iOS device it works without any issue and also if I archive from Xcode.
It seems something related just to build / run with simulators.

is this happening as well if you remove the flutter sdk?

I'll have a look

So I also had the same issues, here's what I did to reolve them:

Delete contens of Xcode DerivedData folder
Delete Pods folder
Delete Podfile.lock
Delete .xcworkspace file
Run pod install in the terminal
Run flutter build ios
Open iOS Simulator
Run flutter run
Quit flutter run

After the last two steps, I could also run the app in the iOS Simulator directly from Xcode, without terminal. Seems like some kind of caching issue. The only differences i could see were, that @UIApplicationMain annotation was replaced with @main and some workspace settings were deleted.

@sfolador Please try this and report your results, thank you!

This is fixed since Sentry Flutter 8.9.0, please refer to the comment above to fix any pending caching issues


All of the T’au except mechs have been replaced with Green Dummies

The same goes for the Orks and Combine Overwatch mods.

Fixed by adding the line AddToGroup = Actors - Light to every actor in all of these mods.

Fixed by adding the line AddToGroup = Actors - Light to every actor in all of these mods.