Implement WaNet Backdoor Transform

This implements a Transform for the WaNet backdoor described in

Nguyen, T. A., & Tran, A. T. (2021). WaNet - Imperceptible Warping-based Backdoor Attack. International Conference on Learning Representations. Retrieved from https://openreview.net/forum?id=eEn8KTtJOx

Thanks, this looks really good at a first glance! (Haven't carefully read over the implementation yet, but the high-level structure is great)
I don't know whether you've decided you want to spend more time on this, no obligations obviously. If you do, two small general things:

I'm using some (not yet documented) precommit hooks for formatting, linting, etc. You can set it up by pip install pre-commit, pre-commit install (to set up git hooks) and pre-commit run --all-files to make sure it runs against changes from your past commits here. Usually any linting issues should be fixed automatically, but some (like line length in strings) need to be fixed manually.
Would be nice to have this in tests/test_pipeline.py (which basically just tests that the scripts run without errors). Easiest option would be to just use the new WaNet backdoor instead of the pixel corner one (which is simpler and I'm less likely to break it accidentally with some future change). Ideally we'd of course have a more comprehensive test suite at some point but that doesn't need to happen in this PR.

Also, did you have any way to at least informally check the implementation does what you'd expect/matches the paper? I guess the most important thing is just that networks can learn the backdoor, and that it's imperceptible to humans, though ideally we'd have some way of getting even more certainty.
Btw, for some reason I didn't get an email notification for this PR, so if I'm slow to respond to new PRs or other stuff on Github in the future, please feel free to ping me by email!

I don't know whether you've decided you want to spend more time on this

I've decided to work on this for now. We'll have to talk some more about goals at some point but this issue is probably not the right place.

A contributing instructions would probably be a good idea in the future. I'll collect what I learn and make a PR when I've got something more substantial.
I did this locally before in all places before I pushed, I'll add one of the tests upstream as well.

Also, did you have any way to at least informally check the implementation does what you'd expect/matches the paper? I guess the most important thing is just that networks can learn the backdoor, and that it's imperceptible to humans, though ideally we'd have some way of getting even more certainty.

Nothing that fancy. I looked a lot at images and how they where affected by the transform and diffs between before and after transformation. All I can tell is that the transform is mostly imperceptible, you can tell that straight lines are sometimes curved slightly if look closely and that these changes match the warping field.
I'll compare it side by side with the original paper's implementation in the future.

Btw, for some reason I didn't get an email notification for this PR, so if I'm slow to respond to new PRs or other stuff on Github in the future, please feel free to ping me by email!

Absolutely, will do so if I need a faster response.

I've decided to work on this for now. We'll have to talk some more about goals at some point but this issue is probably not the right place.

Happy to hear that of course! Feel free to email me to set up more meetings to talk about next steps.

A contributing instructions would probably be a good idea in the future. I'll collect what I learn and make a PR when I've got something more substantial.

I've added a few more instructions in the README and the docs now but it's probably still incomplete, so additions would be great!

Nothing that fancy. I looked a lot at images and how they where affected by the transform and diffs between before and after transformation. All I can tell is that the transform is mostly imperceptible, you can tell that straight lines are sometimes curved slightly if look closely and that these changes match the warping field.

Ok, that sounds good to me, don't think it really makes sense to do anything more complicated.
Looks to me like this PR is (basically?) finished. Let me know whenever you're done and I'll take a final more detailed look.

So I've compared it more in detail with the original implementation and found a few differences:

[x] With a given warping tensor x, y axes are flipped. But this doesn't matter as they are both sampled identically distributed.
[ ] I haven't implemented the grid_rescale hyperparameter other than implicitly using the default 1.0.

It should be easily done so might just as well do it.

[ ] I do not denormalize the input image. I don't see how this could impact the transform and it doesn't seem to be mentioned in the paper. On the other hand, I don't think they would have gone through the effort of doing that unless it mattered.
[ ] The warping strength differs with a factor of two. grid_sample which is used in the original implementation and BackdoorBench uses normalized coordinates in [-1, 1] instead of [0, img.shape[dim]]. However, when going from relative coordinates they divide by img.shape[dim] instead of fully changing units. Possible solutions:

Simply do what the original implementation does to be consistent. Easily done, but strange unit.
Change the default value by a factor of two and simply note how the units differ from the original implementation.

[ ] map_coordinates(order=3) and torch's interpolate/upsample("bicubic") are slightly different. RMSE is a few percent of the mean pixel value in the upsampling step for np.rand.random((4,4)) to size (28, 28).

Thanks for this list!

I do not denormalize the input image. I don't see how this could impact the transform and it doesn't seem to be mentioned in the paper. On the other hand, I don't think they would have gone through the effort of doing that unless it mattered.

Are you referring to this line in the original? https://github.com/VinAIResearch/Warping-based_Backdoor_Attack-release/blob/94453080f241053ac7c8cc4717da20806ee17e5c/train.py#L149
That looks like it's only for visualizing the images in tensorboard. I currently don't normalize images anyway (should clearly add that at some point). But even if we have normalization, denormalizing for visualization should be done elsewhere.

The warping strength differs with a factor of two. grid_sample which is used in the original implementation and BackdoorBench uses normalized coordinates in [-1, 1] instead of [0, img.shape[dim]]. However, when going from relative coordinates they divide by img.shape[dim] instead of fully changing units. Possible solutions:

Could we just add something like warping_strength *= 2 (or /= 2) somewhere and not mess with the indexing? As far as I can tell, the warping strength is on a somewhat arbitrary scale anyway (i.e. warping strength = 1 doesn't have an especially important meaning). But correct me if I'm wrong about that! Assuming that's the case, I think it makes sense to have our warping strength mean the same thing as theirs, but if possible stay with the more common [0, n] indexing.

map_coordinates(order=3) and torch's interpolate/upsample("bicubic") are slightly different. RMSE is a few percent of the mean pixel value in the upsampling step for np.random.rand((4,4)) to size (28, 28).

I would hope this kind of things doesn't matter for the method, so I think it's fine to ignore for now. Maybe just add a comment saying this is slightly different, so we know it's a thing to look into if we run into problems in the future. (Alternatively, we could just use torch's upsample here since we're relying on pytorch already---conversion to and from numpy arrays should be free IIRC. I don't have a strong take either way).

Are you referring to this line in the original? https://github.com/VinAIResearch/Warping-based_Backdoor_Attack-release/blob/94453080f241053ac7c8cc4717da20806ee17e5c/train.py#L149
That looks to me like it's only for visualizing the images in tensorboard. I currently don't normalize images anyway (should clearly add that at some point). But even if we have normalization, denormalizing for visualization should be done elsewhere.

For this comment I was probably mostly looking at this line in BackdoorBench, but noting that they did something with denormalize in the original as well. But, as long as it doesn't matter in the original it should be fine.

Could we just add something like warping_strength *= 2 (or /= 2) somewhere

Yes. I'll do that.

As far as I can tell, the warping strength is on a somewhat arbitrary scale anyway (i.e. warping strength = 1 doesn't have an especially important meaning).

That's about right. The relevant steps of the transform are

Sample a small grid from a Uniform distribution
Normalize this so that the mean absolute value is 1*warping strength
Smooth this out into the same shape as the image
Sample each pixel by the offset given from the smoothed out grid

So I believe the two different meanings of warping strength 1 would be:

absolute pixel offset is on average 1 in vertical & horizontal direction
the expected maximum absolute pixel offset is 1 in vertical & horizontal direction

Both of these are should be valid units.

I would hope this kind of things doesn't matter for the method, so I think it's fine to ignore for now. Maybe just add a comment saying this is slightly different, so we know it's a thing to look into if we run into problems in the future. (Alternatively, we could just use torch's upsample here since we're relying on pytorch already---conversion to and from numpy arrays should be free IIRC. I don't have a strong take either way).

I'll do the comment for now. I prefer not to mix frameworks in the middle of computations.

I think this should be ready to be merged now.


Arch Linux PKGBUILD failed to build on latest version

Steps to reproduce

Build Archlinux PKGBUILD with latest version 8.2.3523
Failed with: Expected 'bar' but got 'foo' Flaky test failed too often, giving up

Expected behaviour
no build errors
Operating system
Arch Linux
Version of Vim
8.2.3516 < 8.2.3523
Logs and stack traces
No response

@pheiduck wrote:

Failed with: Expected 'bar' but got 'foo' Flaky test failed too often, giving up

This ticket description is currently too short. We don't even know which test failed.
You need to copy more lines from the log in this ticket. Possibly attach the entire log when running tests.


made changes in privacy policy

🛠 Fixes Issue : ""

👨💻 Changes proposed:

✔ Check List (Check all the applicable boxes)

[ ] My code follows the code style of this project.
[ ] This PR does not contain plagiarized content.
[ ] The title of my pull request is a short description of the requested changes.
[ ] I am a participant of Hacktoberfest 2022.

📄 Note to reviewers

📷 Screenshots

Please create an issue first. Also, try to improve styling. Thank you. 😊

thank you for letting me know😊
On Mon, Oct 3, 2022 at 9:08 PM Kiran Amin Panjwani @.***>
wrote:

Closed #89 https://github.com/KiranAminPanjwani/LeatherHoard/pull/89.
—
Reply to this email directly, view it on GitHub
https://github.com/KiranAminPanjwani/LeatherHoard/pull/89#event-7508530690,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYTLFMCZEKI237M6USQAZF3WBL4YBANCNFSM6AAAAAAQ3KNT3I
.
You are receiving this because you authored the thread.Message ID:
@.***>


MBCS characters are garbled in title and list view

When a string property such as PR_DISPLAY_NAME contains MBCS characters, the characters are garbled in Dialog Title and List view.
This causes stringTowstring() and LPCSTRToWstring() do not consider MBCS.
The functions should be as follows.
std::wstring stringTowstring(const std::string& src)
{
	std::wstring dst;
	int dstLen = MultiByteToWideChar(CP_ACP, 0, src.data(), (int) src.size(), NULL, 0);
	if (dstLen > 0)
	{
		std::vector<wchar_t> dstBuf(dstLen);
		if (MultiByteToWideChar(CP_ACP, 0, src.data(), (int) src.size(), &dstBuf[0], dstBuf.size()) == dstLen)
		{
			dst.assign(&dstBuf[0], dstLen);
		}
	}
	return dst;
}

std::wstring LPCSTRToWstring(LPCSTR src)
{
	if (!src) return L"";
	std::string ansi = src;
	return stringTowstring(ansi);
}

This may not be addressable in the ansi builds  do you repro with a Unicode build of MFCMAPI? Also - can you share some sample strings I can test with?

This doesn't repro with a Unicode build of MFCMAPI, but released binaries in https://github.com/stephenegriffin/mfcmapi/releases/ seems to be ansi build.
So I hope the ansi build will be fixed.
Sample string is as follows;
Correct string:
Outlook データ ファイル
Garbled string:
Outlook ﾃfﾁ[ﾃ^ ﾃtﾃ@ﾃCﾃﾋ
The above string means "Outlook Data File" and this is default string for PST in Japanese version.

Root cause looks more like this: https://stackoverflow.com/questions/9410681/setwindowtextw-in-an-ansi-project

I think the cause of the  problem in https://stackoverflow.com/questions/9410681/setwindowtextw-in-an-ansi-project is different.
When the non-ascii character turns to ?, it is caused passing wrong codepage to WideCharToMultiByte.
But the problem I've reported, MBCS characters are split two SBCS characters.
For example, the character code of "デ" is 0x8366 in Codepage 932 (Shift-JIS, the default codepage of Japanese), and it should be 0x30c7 in Unicode.
But stringTowstring handles the MBCS character as multiple SBCS characters, and just change the type from byte to word.
So the character "デ" becomes 0x0083 (â) and 0x0066 (f) in Unicode.
This may be OK in US-ASCII world, but it's NG in other language.

I think the cause of the  problem in https://stackoverflow.com/questions/9410681/setwindowtextw-in-an-ansi-project is different.
When the non-ascii character turns to ?, it is caused passing wrong codepage to WideCharToMultiByte.
But the problem I've reported, MBCS characters are split two SBCS characters.
For example, the character code of "デ" is 0x8366 in Codepage 932 (Shift-JIS, the default codepage of Japanese), and it should be 0x30c7 in Unicode.
But stringTowstring handles the MBCS character as multiple SBCS characters, and just change the type from byte to word.
So the character "デ" becomes 0x0083 (â) and 0x0066 (f) in Unicode.
This may be OK in US-ASCII world, but it's NG in other language.

Yes - I'm familiar with the  round trip problem in conversion of MB text. That's why I overhauled the UI to keep strings Unicode native as much as possible even in the ascii builds.
However, the functions you identified aren't on the code path for setting or drawing the title here, so touching them won't fix the problem. The problem was exactly as identified in the SO article. Temp swapping in DefWindowProcW for Unicode handling of the message allows us to set the Unicode string without a round trip through ascii. Same trick in the drawing code allows us to get the native Unicode string without another round trip through ascii. So we can stay Unicode native all the way through.
Do let me know if you see any other scenarios where the UI shows ? for unicode characters. I can't fix PR_*_A strings - that conversion happens down in the MAPI layer. But I can ensure the rest of the UI uses _W props for data and avoids round trips through ascii.


DDP training problem

Hi, how to make sure the WebLoader generated batches is different data when use multi node training? Is there any up-to-date example code using webdataset for DDP training?

Based on this documentation, you should create shards of the data and the library will by default distribute the shards to different nodes and workers. However, when using DDP, all processes need to receive the same number of mini-batches or they won't be able to synchronize. The next section says that you should use ddp_equalize() for this purpose, providing the total number of mini-batches, but according to this other issue that functionality is broken and it might be better to switch to TorchData.

You can choose not to split shards but just select every nth sample on each of the n nodes.

@tmbdev in this case, unless the data size is divisible by n, some nodes may get one more batch than the other nodes. How would you make sure that the synchronization won't hang, when some processes think that the epoch has finished already?

This is what I ended up doing:
During training I cycle through the data indefinitely and set an arbitrary epoch length. The epoch length doesn't matter much, but it may affect the learning rate schedule.
During validation, I don't want to use an arbitrary epoch length, as that would mean that I either don't use the whole validation set, or some samples are tested multiple times. In this case I don't split the shards, but every GPU takes every Nth sample. Now I have the problem that if the validation set size is not divisible by N, those GPUs that receive an extra sample will be stuck waiting for the other GPUs, in the end of a validation epoch. I solved this by dropping samples from the end of the validation set to make the size divisible by world_size. This is what I used in TorchData (I didn't check how to do this using WebDataset):
dataset = dataset.batch(torch.distributed.get_world_size(), drop_last=True)
dataset = dataset.unbatch()
dataset = dataset.sharding_filter()

I'm also wondering this issue.
For a more complicated case, there's usually a tar file containing less items (say, sequences) than others when using wds.ShardWriter() with a specific maxcount.
According to my understanding, solutions @tmbdev gives above just deal with uneven data on tar file level (that means every node would iter through the same number of tar files). But I think the DDP would hang if there is a tar of small size.
e.g.
data:  # 4100 seqs in total
data-001.tar # 2000 seqs
data-002.tar # 2000 seqs
data-003.tar # 100 seqs

split to 2 nodes (with duplicated)
node 0: data-001.tar data-003.tar # 2100 seqs
node 1: data-002.tar data-001.tar # 4000 seqs

2100 != 4000

Should I just drop the small size tar or do a post-processing after sharding to ensure all sharded tars are of close size.

@maxwellzh no, the solutions work also when one tar file is smaller. If you use resampled=True, all processes will generate an infinite stream of samples, so DDP will never hang.

I did some testing with resampled=True, I was surprised to find that for the number of batches that just cover the number of total samples in my sharded dataset, only 64% of the samples were unique. For how the data is setup, I was expecting <<1% to be duplicate data in order to create even batch sizes. Why is this? Is there a way to only resample for the last samples which are needed? It appears it is randomly sampling, giving a lot of overlap (and leaving out a lot of data).

Hi @tmbdev, i'm trying to use your implementation with .repeat(2).with_epoch(n), but i'm not sure what does repeat is supposed to do. Is 2 the number of gpus per node? The number of nodes? the overall number of gpus?

Hi @tmbdev, i'm trying to use your implementation with .repeat(2).with_epoch(n), but i'm not sure what does repeat is supposed to do. Is 2 the number of gpus per node? The number of nodes? the overall number of gpus?

Iterates through the data twice, so that you won't run out of data before you've reached n samples.

ok thanks

Resampling is quite simple: it just picks shards at random within each worker. The number of unique samples you get per epoch depends on the number of shards you have and the size of your epoch. If you have few shards, there is a high probability that different workers will pick the same shard. You have many different ways of modifying this strategy. For example, you can split shards by node and worker prior to resampling. But in the end, you really need a number of shards that is much larger than the number of total workers in your dataset to avoid significant numbers of duplicate samples with resampling.
The best thing to do is to make a number of shards that is divisible by the total number of workers in your training job and have exactly the same number of samples in each shard. Then you can assign each worker the same number of shards. In that case, you get exact epochs with no resampling, no duplication, and no missing samples. But obviously that requires more setup.
You also have the option of using various forms of async training with PyTorch, so that you can do weight updates even if not all workers have data.
There is only a limited set of things we can do within the old torch data architecture, since workers cannot communicate between themselves. Torchdata will provide some workarounds.


should provide historical knesset data (as much as available from knesset)

Currently we make a datapackage once a week for last 120 days
However, people are asking us for historical data as well (e.g. last 10 years)
We should have datapackages for historical data, for example, a datapackage for every year
These datapackages could be rebuilt on the following conditions:

when datapackage logic changed (e.g. we added new services or fixed some bugs)
preiodically - because maybe the source data changed

need to determine if we really need to rebuild or not

expected output from this issue -

plan of action on how to do it
actionable issues in the relevant repos - knesset-data-(python|django|datapackage)


Consolidate steps and documentation on shinyapps.io deployment

@rrchai and @afwillia have tested the DCA w/in shinyappps.io and have reported deployment issues (e.g. issues related to PR #250).
Before moving apps in production to shinyapps.io these issues need to be resolved (or confirmed as resolved) and the deployment process documented.

Acceptance criteria - finding out what it takes to deploy a shiny app to shinyapps.io; consult with Bruce on the process. Having a README with a checklist for deployment steps.

@ychae This is done and addressed in the file data_curator/shinyapps_deploy.txt

@ychae done and addressed in this branch https://github.com/Sage-Bionetworks/dccvalidator/tree/read_schema_file_url


Video tag poster for idiod.video

Parser updated to determine image preview from idiod.video mp4 links and set preload to none:
<video  preload="none" poster="https://idiod.video/preview/8feuw2.mp4" controls="" width="500"><source src="https://idiod.video/8feuw2.mp4" type="video/mp4"></video>

Introduced versioning mechanism for the Parser. When parser version is bumped, html is re-parsed and saved (on demand), so users always see up-to-date parser results.
Allows to introduce breaking parser changes in the future (embeds, mention links, etc).

Should we make preload="none" a user preference?

Should we make preload="none" a user preference?

Why would you want it, if poster is provided?

Marking as draft for now. I'm testing two additional changes:

supporting poster for dump.video
lightweight placeholder for the youtube

The second change is super important: on the test post (p3062) it reduces page peak memory consumption from 1G+ to ≈128m.

Should we make preload="none" a user preference?

Why would you want it, if poster is provided?

Preloaded video == video starts playing faster
Videos are very engaging - we want them to play faster.
If video doesn't start playing fast - users will just scroll to next comment/post - less engagement.
I love going to "la crequetue" posts and having videos there "on the fingertips" - they start playing instantly and I will watch more of them.
Unless they are so unperformant that they detract users.
Ideally we want to estimate user's network connection, CPU load and RAM situation and preload video in a quality that will ideally match his situation and video will start playing and will continue playing without stalls. Unfortunately that's not possible currently without encoding videos in multiples resolutions.
Users with slow network connection are aware that it is slow and can make a decision to disable video preloads.

Should we make preload="none" a user preference?

Why would you want it, if poster is provided?

Preloaded video == video starts playing faster Videos are very engaging - we want them to play faster. If video doesn't start playing fast - users will just scroll to next comment/post - less engagement.

Unless they are so unperformant that they detract users.

Agreed. But currently having preload enabled for all videos creates a traffic bottleneck (specifically for idiod.video) which interferes with playback of any specific video.

Ideally we want to estimate user's network connection, CPU load and RAM situation and preload video in a quality that will ideally match his situation and video will start playing and will continue playing without stalls. Unfortunately that's not possible currently without encoding videos in multiples resolutions. Users with slow network connection are aware that it is slow and can make a decision to disable video preloads.

That's certainly nice to have, but out of the scope of current improvement.

Addressed review comments.


Investigate mysterious scheme switching bug

As I said on MS Teams:

Yesterday, I installed our extension.
I was on the scheme for selecting categories, Advertising, Analytics, ..., All Sites.
And today I am suddenly on the learning scheme.
Also, all the domain I visited in the domain list are gone, and, I think, I am only seeing the domains I visited since the switch to the new scheme.
I am not sure, did I accidentally re-install the extension?
On Firestore, I am still the same user and it says Scheme 4.

On @ekuller's question:

Did it show you the registration page again?

I believe, I left the tab open with the signup registration yesterday night (after having registered).
And then in the morning I believe it reloaded.
And so maybe I accidentally registered again (or that happened automatically).
That is my best explanation.

@chunyuema added:

It might happen if the browser previously tested with scheme 5
Which might set something in the local storage and then interfere with the new one that is installed

Me:

Ah, OK, so you are saying maybe a few weeks back I was on scheme 5.

@chunyuema:

If this is true I m decently sure that is why there is this sudden switch. It happened to me a couple of times before

Today, I am on yet another scheme, the profile scheme (high, medium, low privacy sensitivity). I am pretty sure I did not leave the settings page open when I closed the browser. Yet, it still loaded. (I am using the most recent version of Brave, for what it is worth).
Also --- very important --- it looks like the Firestore database stopped recording data the moment I switched to the learning scheme. (I still have our extension installed and everything looks normal.) So, I re-installed our extension, a new user was created on Firestore, and I am seeing my data now being received. So, the good news is that if a mysterious scheme switching occurs, the backend seems to stop recording. So, if we keep a close eye on what is going on at the backend, we will be able to identify the problem and alert the user to re-install our extension.
I have tried to reproduce the result by restarting my computer, restarting my browser, and trying on Chrome, but it was not possible.
Let's move on Tuesday and get the study started. So, if everyone can investigate by Monday the latest.

This problem is probably very difficult to reproduce. I have encountered it maybe 3 times in total in the past few months while we worked on the developed.

Also --- very important --- it looks like the Firestore database stopped recording data the moment I switched to the learning scheme. (I still have our extension installed and everything looks normal.)

It is also worth checking if a user is on scheme 5, when the scheme switch happens, does the firestore also stop recording?

It is also worth checking if a user is on scheme 5, when the scheme switch happens, does the firestore also stop recording?

For me it stopped recording. But that is with the weird behavior I encountered, i.e., switch from scheme 4 to 5. Not sure what happens if a user starts out with scheme 5 in first place. I would hope that that records.

I am very sure that this is a problem that the users will not encounter unless they were previously on our scheme 5, and later has to reinstall the extension due to some reasons. A way to replicate the same problem is as follows: set the scheme number to be 5 in the background.js, proceed with the rest of the work. Before the learning phase finish, restart the extension with another scheme, at some point using this new scheme, you will encounter the problem of scheme switching.

OK, thank you, @chunyuema! I'd say, let's leave it then. We will be alerted in the rare case where this may happen by not seeing data written to the database anymore. At that point, we can contact the participant and figure it out.


Injecting UserManager into AllowAnonymous controller causes nested properties to be null

Hey,
I'm raising this here following advice from the EF team. I'm having problems when Injecting UserManager into a razor view whereby nested relations of the ApplicationDbContext model are null, but only within an AllowAnonymous controller - I can confirm that controllers marked Authorize do pull them through. Is this expected behaviour? I'm using EF 7 with the SQL Server provider.
Thanks,
Ian.

Do you have some sample code which we can look at?

Hey @rustd,
HelpController.cs
[AllowAnonymous]
public class HelpController : BaseController
{
     private readonly UserManager<ApplicationUser> _userManager;

     public HelpController(UserManager<ApplicationUser> userManager)
        {
                    _userManager = userManager;
        }

      public IActionResult GettingStarted()
        {
            return View();
        }
}

UserImage.cs
public class UserImage
    {
        [Key]
        [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
        public int UserImageId { get; set; }

        public string DownloadUrl { get; set; }

        public bool Deleted { get; set; }

        public string ApplicationUser_Id { get; set; }

        public virtual ApplicationUser User { get; set; }

        public DateTime CreatedDate { get; set; }

        public UserImage()
        {
            CreatedDate = DateTime.Now;
        }

    }

IdentityModels.cs
public class ApplicationUser : IdentityUser
    {

//Other properties removed for simplicity

public int? UserImageId { get; set; }

public virtual UserImage ProfileImg { get; set; }
}

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
//Other relations removed for simplicity

builder.Entity<UserImage>()
       .Property(i => i.UserImageId)
       .IsRequired();

builder.Entity<UserImage>()
      .HasOne(u => u.User)
      .WithOne(u => u.ProfileImg);
}

_Layout.cshtml
@using System.Security.Claims
@inject UserManager<ApplicationUser> UserManager

@{
    ApplicationUser user = new ApplicationUser();

    user = User.Identity.IsAuthenticated ? await UserManager.FindByNameAsync(User.Identity.Name) : new ApplicationUser();

}

//This is the code that is causing me problems
@if (user.ProfileImg != null && !string.IsNullOrEmpty(user.ProfileImg.DownloadUrl))
                                    {
                                        <img<EMAIL_ADDRESS>class="profile-img img-rounded pull-left" />
                                    }
                                    else
                                    {
                                        <img src="~/images/av_user.png" class="profile-img img-rounded pull-left" />
                                    }

I've stripped a lot of stuff out just so you can easily see what I'm trying to do.
Within _Layout.cshtml, if UserImage has a record for the logged in user and the [AllowAnonymous] attribute is attached to the HelpController, user.ProfileImg is null. However, if I change the attribute to [Authorize], user.ProfileImg is populated correctly.
Can you see if there's anything I'm doing wrong here, I don't understand why it would only be populated when an Authorize attribute is attached to the controller.
Thanks,
Ian.

Please refer to the comments here for more details
https://github.com/aspnet/Identity/issues/471


csharp readme updates

Have you read the Contributing Guidelines on Pull Requests?
yes
Description
csharp updated all readme
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
#1126

@HarshCasper kindly review and merge it


feat: support taiko protocol

Remaining tasks(20 Oct)
high priority

[ ] Anchor signature verify, k=1 or k=2 // zkevm-circuits
[x] Withdraw root use the mpt root // easy
[x] Metahash algorithm // easy
[x] L1 signal root verify // hard
[x] L2 parent gas used verify // easy
[x] Check the revert of anchor transaction // easy
[x] SGX signature for evidence @pbeza
[ ] Check the max tx length from l1's txlist to 150(without anchor)

low priority

[x] Anchor gas limit gets from l1 contract
[ ] ~Configs come from contract, like: l1_signal_service, anchor_gas_limit~

@Brechtpd fixed all comments


bug-fix-issue14186

SUMMARY

UI does not retain the selection of the items (chart or dashboard) in the list view after a user changes sort parameters.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

All selected items change their state back to unselected
https://user-images.githubusercontent.com/94451692/227249842-2a121526-7f1d-4715-bd1f-96ef0a56009e.mov
Selection should persist throughout all the sort parameter changes
https://user-images.githubusercontent.com/94451692/227249929-7c32d4f1-8cd7-4e7a-b4a4-c001e98cbabc.mov
TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[x] Has associated issue: https://github.com/apache/superset/issues/14186
[ ] Required feature flags:
[x] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

I'm not sure if this is still needed (please confirm!) but I see the issue is still open, so I'll close/re-open this PR to jump-start CI and see how it goes.

Actually, looking at #14186, a fix has supposedly been merged already. I'll just close this, but feel free to reopen if you feel differently!


Exclude branches in macros from coverage reporting

Tools like LCOV report log statements as if-branches that are not executed when the log level is too low. This makes sense, however it is not useful to include in the report.
#define LOG_MAYBE(async, lvl, flg, ctx, fnct, frmt, ...) \
        do { if(lvl & flg) LOG_MACRO(async, lvl, flg, ctx, nil, fnct, frmt, ##__VA_ARGS__); } while(0)

There are markers that can be added to inform coverage exclusion: LCOV_EXCL_LINE for example.
Adding a marker to the LOG_MAYBE macro should be the only needed change:
#define LOG_MAYBE(async, lvl, flg, ctx, fnct, frmt, ...) \
        do { if(lvl & flg) LOG_MACRO(async, lvl, flg, ctx, nil, fnct, frmt, ##__VA_ARGS__); } while(0) /* LCOV_EXCL_LINE */

@Ashton-W any updates with the PR?

Embarrassing, must have been a long week. I'll dig up my experiments and get back to you - calendar reminder activated ⏰

#398 looks related in that it too might be solved by adding annotations to the logging macros.
I'm creating a simple test bed using the latest release of CocoaLumberjack, generating reports with gcovr. I'll duplicate these tests with a modified set of log macros.

I've put a repo here Ashton-W/LumberjackCoverage with a sample project. Run coverage.sh to generate the reports - where you will see the poor branch coverage.

I think those files could be included in the main repository and any coverage exclusion code as well.

@rivera-ernesto I don't intend for this to be included in the main repository as is. We'll need to figure out how to deal with the dependency on GCOVR, and how to integrate tests for this.
I've also got a problem adding the LCOV exclusion markers - they are added as comments like:
- (void)foo {
  // LCOV_EXCL_START

  // LCOV_EXCL_STOP
}

but DDLog* are macros and macros strip all comments - so they don't work there, they would work in a C function, however that is a big change.

Not sure how to continue on this matter. Closing for now as it's stale


Add clarification about squashing commits

Per discussion with @jpmcb on https://github.com/vmware-tanzu/community-edition/pull/2924, maintainers may ask contributors to squash commits manually:

But it's not a strict requirement that the contributor squash their own commits. Admittedly, it's my personal preference since I can't always anticipate and write the best commit message when squashing a number of commits using the "Squash and merge" button. For me, it's almost always easier to merge something that is one commit already with a single cohesive commit message. But that's more philosophical than anything. Feel free to ask us to just "squash and merge" when needed

NONE

ty!


sam init works on windows but not on mac

Testing sam for the first time.
Installed it on Windows ok and sam init --runtime python worked fine.
Doing the same on mac yielded the following:-
sam init --runtime python
2018-05-10 17:24:49 Command 'init' is not configured correctly. Unable to import 'samcli.commands.init'
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/samcli/cli/command.py", line 100, in get_command
mod = importlib.import_module(pkg_name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/init.py", line 37, in import_module
import(name)
File "/Library/Python/2.7/site-packages/samcli/commands/init/init.py", line 9, in
from samcli.local.init import generate_project
File "/Library/Python/2.7/site-packages/samcli/local/init/init.py", line 7, in
from cookiecutter.main import cookiecutter
File "/Library/Python/2.7/site-packages/cookiecutter/main.py", line 15, in
from .generate import generate_context, generate_files
File "/Library/Python/2.7/site-packages/cookiecutter/generate.py", line 27, in
from .hooks import run_hook
File "/Library/Python/2.7/site-packages/cookiecutter/hooks.py", line 13, in
from cookiecutter import utils
File "/Library/Python/2.7/site-packages/cookiecutter/utils.py", line 19, in
from .prompt import read_user_yes_no
File "/Library/Python/2.7/site-packages/cookiecutter/prompt.py", line 14, in
from past.builtins import basestring
File "/Library/Python/2.7/site-packages/past/init.py", line 88, in
from past.translation import install_hooks as autotranslate
File "/Library/Python/2.7/site-packages/past/translation/init.py", line 42, in
from lib2to3.refactor import RefactoringTool
ImportError: No module named refactor
mac install
pip install awscli
pip install aws-sam-cli
python --version
python 2.7.10
no errors

This was a real pain for me when i tried to get it working it was down to a legacy version of aws-sam-cli
I had to do the following to get it working - but working now:-
1. Upgrade python
2. Uninstall awscli
3. Uninstall aws-sam-cli
4. Still had 2to3 files lying about - deleted the dir as I couldn’t pip uninstall
5. Also removed them from aws/local/site_packages
6. Reinstall awscli
7. Reinstall aws-sam-cli

where does aws/local/site_packages reside usually?

I think it was under .aws - but i deleted it and it doesnt exist there now - didn't write that part down!

Hmm..Ok, I did your steps but I am getting the same error.
My last error line is: ImportError: No module named refactor instead of the one above

That error is similar to this one
https://github.com/Entware/Entware-ng/issues/268
The issue is you have python3-lib2to3 in your site packages from what i recall

I have the same problem in my mac even if I re-installed awscli & sam-cli.
Fetching lambci/lambda:python2.7 Docker container image......
2018-06-07 12:02:25 Mounting /Users/alex.ough/Projects/sam_cli/sam-app/hello_world/build as /var/task:ro inside runtime container
START RequestId: 81384622-066c-462a-a976-a29041f75caa Version: $LATEST
Unable to import module 'app': No module named app
END RequestId: 81384622-066c-462a-a976-a29041f75caa

I did a little bit of investigation and I found that the python source file (app.py) and necessary libraries (requests) are NOT deployed in 'build' folder when I run 'sam local start-api' after I created the sample project using 'sam init --runtime python'.
Should the files be deployed to 'build' folder or am I missing any commands before running 'sam local start-api' for deployment?

You need to create a deployment package and reference that from your SAM template. Have a look at these docs. https://docs.aws.amazon.com/lambda/latest/dg/deployment-package-v2.html

I know how to package the deployment files, but I thought this sam cli does it for you when it starts the container.
Anyway, it may be helpful to make this clear in the sam-cli documentation.

i just went up this learning curve so i share your pain.
I ended up with a debug build process that looks like this:-

Note i build my dependencies within a docker container which is Amazon Linux based else you end up with ELF header mismatch errors. Also copy all sources into the container. Output of the docker build is a zip which i reference in the SAM template.

I think its fine to close


[Suggestion] gluon customized block tutorial organization

I think current organization on Gluon is good since you could compare with imperative/symbolic directly. But it lacks the internal coherence.
For example, I wanted to build a customized model with Gluon. But I have to search different places.
For HybridBlock, it's located in chapter07. For simple Block, it's in Chapter03. Yet I personally think chapter07 give a better description on Gluon's Block module though both are not enough.
At least, I would suggest  add a hyperlink between Chapter03 and Chapter07 on how Gluon's Block and HybridBlock is used.

The link solution (for now) sounds good. Can you add the link and make a PR?
On Mar 4, 2018 8:49 PM, "QiXuanWang"<EMAIL_ADDRESS>wrote:

I think current organization on Gluon is good since you could compare with
imperative/symbolic directly. But it lacks the internal coherence.
For example, I wanted to build a customized model with Gluon. But I have
to search different places.
For HybridBlock, it's located in chapter07. For simple Block, it's in
Chapter03. Yet I personally think chapter07 give a better description on
Gluon's Block module though both are not enough.
At least, I would suggest add a hyperlink between Chapter03 and Chapter07
on how Gluon's Block and HybridBlock is used.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/zackchase/mxnet-the-straight-dope/issues/446, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACR4zpT9f2IHoQmxv4Tv5TbiQesDoj-pks5tbJm-gaJpZM4Sbni1
.

Thanks for the quick reply and permission for PR. May try that later.
The Chinese version on this topic is better if I could be so blunt :). I heard there is plan to merge the two versions...

There is such a plan. They've made some improvements in adapting the chinese version so we'll need to upgrade some of the code examples to reflect these.


Inline import to prevent circular imports under some toolchain combinations

Resolves issue #331.
Supercedes PR #343 .

Codecov Report

Merging #356 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff           @@
##           master    #356   +/-   ##
======================================
  Coverage    90.4%   90.4%
======================================
  Files          43      43
  Lines        2845    2845
======================================
  Hits         2572    2572
  Misses        273     273

Impacted Files
Coverage Δ

django_q/tasks.py
99.46% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Poetry dependency management & fabric as a CLI (without python fabric.py)

What this PR does

dependencies for the fabric cli are now managed via poetry.
fabric can be called directly as a CLI from the activated python virtualenv without the need to call it as python fabric.py.
updates Fabric CLI install instructions.
partially solves #27.
re-adds .gitignore to prevent unintended files from being pushed to source control.

Why so big?

Poetry.lock maintains the hashes of all actually resolved dependencies. It's generated when one installs dependencies with poetry add foo automatically.

What's in it for this project

Deterministic dependencies pull and reproducibility: Since dependencies are resolved, locked and committed to source control, collaborators of this project can work on the same exact Python environment regardless of which OS they use and when they pulled dependencies.
Isolated packages: Poetry helps avoid version conflicts in Python files and projects by isolating packages from the OS.
Single configuration file: Poetry uses a pyproject.toml file to manage all dependencies, replacing multiple files like setup.py, requirements.txt, setup.cfg, and Pipfile.
Accessible project metadata: Project metadata is easy to access and understand from the pyproject.toml file.

What will the install actually look like

What's next:
Do this for the Flask server app if accepted.

@danielmiessler
This is ready for review again. Let me know in case it gets out of sync with the main upstream and I'll resolve conflicts in case any PR's get ahead of this one.


knife vault create examples using node/client names?

I'm experimenting with chef-vault right now and do not want to use roles to limit how secrets are shared to various nodes/clients. How can I use the --search option to limit only by nodes with specific names/fqdns?
The docs say it's a solr query, but when I try to specify: --search "app1.local OR app2.local" I get a ERROR: JSON::ParserError: OR is not valid JSON!
I found that I can specify those clients with the --admins option, but I also get a warning:
WARNING: app1.local not found in users, trying clients.
WARNING: app2.local not found in users, trying clients.

Play around with knife search node to find the query that works for you.  For hostnames, use name:hostname:
> knife search node 'name:i-2f1a78d9'
1 items found

Node Name:   i-2f1a78d9

The Chef docs on how you can search are here: http://docs.chef.io/chef_search.html
I will say that we find using environments to be better than locking down to specific hostnames, though this depends on whether you're using per-app (and thus small) environments or big ones that map to deployment phases (dev/test/prod/etc.)

Ok, the problem is probably somewhere in chef. Based on the docs, this should work:
$ knife search node 'name:app1.local OR name:app2.local'
ERROR: ArgumentError: Type must be a string or a symbol!

That is strange, because the general form does work for me:
> knife search node 'name:i-2f1a78d9 OR name:i-75fd6283'
2 items found
...

I'd run that knife command with -VV to see if that sheds any light on the problem and if necessary open an issue against chef/chef

Looks like a bug in Chef 11 (which I'm stuck on for the time being). Thanks for your feedback!


HttpStateSource throws error on json response with empty body

When the remote end returns a response with a json content type, and with an empty body, an error gets thrown from the parseJSON hook. The error originates from the browsers JSON.parse function, which throws an error when called with an empty string.
The easiest way for me to deal with this would be to add a check to the isJson function in parseJSON.js. However, since an empty string is not valid json, I am not sure if this would be the right way.
I would argue that a server returning an empty string with a json content type is a scenario which is not necessarily all that uncommon, and should be dealt with in some way in the library.
If you agree it would be right to have such a check, I would be happy to submit a pull request implementing it.

Hey, sorry for the delay in replying.
Change makes sense and happy for you to send a PR :+1:
Should warn you though that we're going to be deprecating  parseJSON in v0.10 as its causing lots of issues

Alright, since parseJSON is being deprecated soon, I don't think there is any purpose to making changes.


Compiling ARC4 with CASIM

From the met office MONC wiki (https://code.metoffice.gov.uk/trac/monc/wiki/MoncDoc/RunningWithCasim):
Running MONC with CASIM

Initially, the build system won't include the CASIM (Cloud and AeroSol Interacting Microphysics) scheme. To build with CASIM, you must also include the CASIM.cfg in the fcm make step, e.g.

fcm make -f fcm-make/monc_meto.cfg -f fcm-make/casim.cfg

I can do this by running these commands from the monc main directory on install:
mkdir -p $HOME/.metomi/fcm
 sed "s|= |= ${PWD}/fcm-make|" fcm-make/keyword.cfg >> $HOME/.metomi/fcm/keyword.cfg

This imports the MOSRS paths for casim and socrates, allowing them to be downloaded at build time.
The config files, such as fcm-make/casim.cfg and fcm-make/casim_socrates.cfg have fields to allow the revision number of each package to be specified.
Using this, the above fcm-make command will work. I am running a test now to see if the bomex_casim.mcf file will run with this setup.


Rotation invariant features

Good day, I am currently researching a dataset of UAV images and I am wondering. Is it possible to add support for computing rotation invariant features to the DINO model and how?

this is outside of our expertise


Adminlte 2 Suggestion by @lukacavic

There is a suggestion by @lukacavic that i find quite interesting. However it would have been better if he had opened a new issue for it
https://github.com/almasaeed2010/AdminLTE/issues/209#issuecomment-75554189
Please @almasaeed2010  can we have that riight panel added to the 2.0  ?
@lenamtl , you are good with css, can you help with this please ?

Hi,
I have almost complete my project with the v1.
I have't found the time to test the v2 yet.
About the right side this is more than just CSS it's need to be a container in the layout.

@lenamtl thanks a lotand wow please when u complete the project send me a link to check it out :D. I am still working on mine too and hope to finish it soon.
I guess @almasaeed2010 can help with the layou

I will add that to the todo list. I will also publish the todo list on Github soon.

@lenamtl we can certainly create the right sidebar and make it completely optional so that we keep backwards compatibility with v2.0.0.

:+1:

+1

thanks for adding to todo list :)

I want to have a sass version. Can you @almasaeed2010 add this task to the todo list?

+1 for the right panel with consideration for working with small screens especially mobile phones. Probably providing the options of making it float over the content from the right edge when expanded, and another to make it a column in the page like the left panel can provide good alternatives that suit different project situations.

+1

Let this right side also hold a place of small advertisement like we see on facebook for example. And since many people seems to be interested in this i think i have to re-open this, unless @almasaeed2010 has already added it to the to do list

Hello,
You can view the todo list here https://github.com/almasaeed2010/AdminLTE#todo-list
This sidebar should be available in version 2.1.

@almasaeed2010 do you have an expected time version 2.1?

Right now we are working on the main website. The relaunch should be within a couple of days. Then we will start working on 2.1.0 which should have the minisidbar, right sidebar and a light sidebar color option. I can't promise a specific time, but I hope the pre-release will be out soon.

You are doing a great work, congratulations.

By the way, it would be great if the sidebar has tabs like shown in the above sample. It's a good place to extend the main display with related information and functionality without cluttering it and tabs can help organize this content into separate logical groups for visual clarity.

In my design, id i open more tabs, it show next line.

How can i show all the tabs in same line. Is it possible?
Thanks

@ganthi Please open a new ticket for this. Thanks


rename packed typedef to packed as it conflicts with other includes using attribute((packed)) directly

without the patch getting errors like
In file included from /usr/local/include/libtrading/buffer.h:8:0,
from /usr/local/include/libtrading/proto/fix_session.h:10,
from /usr/local/include/libtrading/proto/fix_template.h:9,
from src/boot/main.cpp:10:
....h:22:18: error: ‘packed’ was not declared in this scope

Identifiers that start with an underscore are reserved. We can just eliminate the define and use ``attribute``` directly.

sure, done


output format bug fixes for html and jsonfg with some support for features without geometry

Output Format bug fixes:

HTML - Add array output (flat arrays only )
HTML - Add JSON property output
HTML - Tolerate features without geometry
HTML - Remove some known failing query params from links to single feature (should be refactored)
JSON and JSONFG - fix single feature self links to match output format
JSONFG - Tolerate features without geometry
SCHEMA - Add support to UUID within arrays

Fixes #110

Looks good to me. Handling nulls in Freemarker templates is a bit tedious but what can you do.


save cube in TransverseMercator to grib2

When trying to save cube in Transverse Mercator  coordinat system into grib2 I get the following error
Traceback (most recent call last):   File "/home/damjan/testGribWrite.py", line 46, in <module>     iris.fileformats.grib.save_grib2(cubes[0],'/home/damjan/Namizje/apr1km.grib2')   File "/usr/local/lib/python2.7/dist-packages/Iris-1.5.1-py2.7-linux-i686.egg/iris/fileformats/grib/__init__.py", line 706, in save_grib2     raise TranslationError("Did not find one (and only one) " iris.exceptions.TranslationError: Did not find one (and only one) latitude or longitude coord
It seems that save_grib2 expects lat/long coordinates and doesn't  realise that it should save Transverse Mercator  coordinat system. I'm not completely sure if this is an issue or saving a cube in TransverseMercator to grib2 is not supported or I have to set something up before saving.

We've scheduled to have an iris-grib development sprint quite soon, and this is one of the use cases that we know we need to address.
Ping @dkillick and @pp-mo.

Ok, I saw no activiti on this and tought it would be best to close it.  It's good to know there are plans for this issue.

We now have support for saving to Transverse Mercator in iris-grib: https://github.com/SciTools/iris-grib/blob/master/iris_grib/_save_rules.py#L500. This was actually added in Iris at #1477 (before we split the GRIB handling code out into its own library).
@wideblue would you mind checking if this now does indeed work for you? It would be good to tidy up this issue. Thanks!

No reply, so I guess this is done.

No reply, so I guess this is done.


typo?

The following line is called 3 consecutive times in the initialization:
setRegBits(tlv493d::W_RES1, getRegBits(tlv493d::R_RES1));

https://github.com/Infineon/TLV493D-A1B6-3DMagnetic-Sensor/blob/master/src/Tlv493d.cpp#L89-L91
Shouldn't it be the following instead?
setRegBits(tlv493d::W_RES1, getRegBits(tlv493d::R_RES1));
setRegBits(tlv493d::W_RES2, getRegBits(tlv493d::R_RES2));
setRegBits(tlv493d::W_RES3, getRegBits(tlv493d::R_RES3));

You are absolutely right. I've fixed this in my Pull-Request #21


Azure Security Center/Microsoft Defender for Cloud

Fix naming

@ccmsft : Thanks for your contribution! The author(s) have been notified to review your proposed change.

IMPORTANT: When this content is ready to merge, the reviewer must add #sign-off in a comment or the approval may get overlooked.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off

Docs Build status updates of commit 763fa75:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azure-sql/virtual-machines/windows/security-considerations-best-practices.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

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

File
Status
Preview URL
Details

:x:Error

Details

[Error: RuningBuildFailed] Some unexpected errors happened when running build, please open a ticket in https://aka.ms/SiteHelp and include the error report for our team to troubleshoot

If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Autogenerated sidebar doesn't truly sort alphabetically

Have you read the Contributing Guidelines on issues?

[X] I have read the Contributing Guidelines on issues.

Prerequisites

[X] I'm using the latest version of Docusaurus.
[ ] I have tried the npm run clear or yarn clear command.
[ ] I have tried rm -rf node_modules yarn.lock package-lock.json and re-installing packages.
[ ] I have tried creating a repro with https://new.docusaurus.io.
[ ] I have read the console error message carefully (if applicable).

Description
I rely heavily on the autogenerated sidebar. I was under the impression that it sorted automatically unless otherwise specified in the frontmatter; however, this doesn't appear to always be the case.
Steps to reproduce
On my website, drop down the Concepts sidebar item. You will see that Legal and Training precede Auditing despite the fact that Auditing precedes it alphabetically.
Expected behavior
I personally feel it should list every item alphabetically regardless of what the item actually is. It shouldn't matter whether it links to a page, links to a page and drops down other pages, or only drops down other pages. Ideally, this preference should be configurable in the config file so users can choose which they'd prefer.
Actual behavior
It seems Docusaurus prefers pages over categories when sorting. That is, it will first alphabetically list any individual page links in the sidebar at the top. Then it will list the categories/dropdowns in alphabetical order.
Your environment

Public site URL: https://ccsp-isc2.pages.dev
Docusaurus version used: 2.x

Reproducible demo
No response
Self-service

[ ] I'd be willing to fix this bug myself.

Not very unreasonable expectation.


Feature request: dep. vars. based on multiple bodies

A set of new dependent variables could be added that are based on multiple simulation bodies.
This allows for instance to save over time:

Amongst a constellation of satellites, what is the closest to a given sat, and what is the distance between them.
From a satellite constellation, what is the closest to a given coordinate on Earth (a ground station for instance), and what is the distance between them.

This dependent variable would then save two elements:

What is the name of the body the closest to a specified one.
What is the distance between the two bodies.

The developer guide for this can now be found here:
https://cpp.api.tudat.space/developerGuide/addingFeatures/addingDependentVariablesToSave.html
which is still to be added to the new documentation

Below is a branch with (untested!) the first proposed dependent variable implemented:
https://github.com/tudat-team/tudat/tree/feature/constellation_dependent_variables
One important note: the calculations ignore light time

I've also added a (preliminary, untested) implementation of the 2nd idea. I want to think about this part a little more, as it requires interaction with a ground station, which thus far never happens during the propagation. It should be able to, but there may be a better way to do it than implemented now

Unit tests now added. To be done:

[ ] Expose to Python

[ ] Write docstrings

What is not done, is a check for the mininum intersatellite distance whether the satellites are visible to one another (e.g. not obscured by a central body). I'll leave it like this for now, and add this to the docstrings.


Where is Tutorial 6?

The tutorial folder jumps from tutorial 05 to 07. Should there be a tutorial 06, or is this an enumeration error?

@michaeldeistler @janfb @manuelgloeckler would be good to know cause then I can change the naming of the consecutive ones, if necessary.

Feel free to change it, but also needs to update docs

I will leave the numbers as is for now and will only do this after the hackerthon together with the integration of examples into tutorials see issue 1031 https://github.com/sbi-dev/sbi/issues/1031

closed with #1232


Python

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Looks like either a mistaken PR, or a mistake to submit it to the master branch. Closing.


Introduce PHPUnit

See #2
Please note this introduces a Webstack\Vroom\Serializer class, which is configured with the needed normalizers/encoders (this allows testing the normalization).

Just released a new version https://github.com/webstacknl/vroom-php/releases/tag/v1.1.0


Bump version to v1.0.0 to indicate that the gem is stable

Closes #63

Hi @bf4 . Could you help me with this one as well? We had a short discussion on #63 and based on it, it makes sense to release a stable v1.0.0

Sound fine with me. Done


Add huggingface handler

Add huggingface handler for BFCL.
Test: TBD

Thank you for the PR and welcome! We’re currently busy with a new dataset release. I’ll review your submission later this week and aim to provide feedback by next Monday. Apologies for the delay.


Revert "[release-0.14] add support for authenticated registry pulls for BR"

Reverts aws/eks-anywhere-build-tooling#1748

/lgtm
/approve


[Bug]: Error with selector including :not()

Bug expectation
I expect the selector '[data-test-id^="test-"]:not([data-test-id^="test-foo"])' to select all elements with a 'data-test-id' attribute starting with "test-", except for those with the suffix "-foo".
Since updating to Puppeteer-core 19.7.3, the selector '[data-test-id^="test-"]:not([data-test-id^="test-foo"])' is no longer recognized as a valid selector, and I receive the following error message:
Error: Evaluation failed: Error: [data-test-id^="test-"]:not([data-test-id^="test-foo"]) is not a valid selector: Unexpected sequence

Downgrading to version 19.7.2 of Puppeteer allows the selector '[data-test-id^="test-"]:not([data-test-id^="test-foo"])' to function as expected
Bug behavior

[ ] Flaky
[ ] PDF

Minimal, reproducible example
import { launch } from 'puppeteer';

(async () => {
  const browser = await launch();
  const page = await browser.newPage();

  await page.goto('https://example.com');

  await page.$$(
    '[data-test-id^="test-"]:not([data-test-id^="test-foo"])',
  );

  await browser.close();
})();

Error string
Error: Evaluation failed: Error: [data-test-id^="test-"]:not([data-test-id^="test-foo"]) is not a valid selector: Unexpected sequence )
Puppeteer configuration
No response
Puppeteer version
19.7.3
Node version
18.13.0
Package manager
yarn
Package manager version
1.22.19
Operating system
macOS

I'm running into the same issue as well. In my case the selector is input[value='Search']:not([class='hidden']).
This only shows up in 19.7.3

Thanks for reporting this! We are working on some refactoring for the selector support and looks like this is an unexpected regression. Please use the working version for now.

This will be fixed in the next release.

Fixed in 19.7.5

Still an issue in 19.7.5 with the selector .user_row[data-user-id="\38 "]:not(.deactivated_user):
Page error: Error: .user_row[data-user-id="\38 "]:not(.deactivated_user) is not a valid selector: Unexpected sequence ( found at index 34

@andersk thanks for the example! It appears fixed on main (and we plan to release soon). I am adding test cases from the issue to https://github.com/puppeteer/puppeteer/pull/9875 to make sure we have the coverage.


Unable to download Data

I am facing troubles trying to download the data even after following the "Data Download" section accurately. Went to check the link for imagenet and found out that the link is no longer available.
May I know how I can go about resolving this issue?

[](url


Request: Dashboard value for current is the integer value out of the P1 telegram - use calculated value instead

P1-dongle pro shows current directly out of the P1 telegram. Unfortunately Dutch Smart Meters give only integer values for the actual current and voltage. A refined current value could be shown by using the actual power in Watt divided by the actual voltage. Voltage is also an integer value so only one significant digit after the decimal point is useful.

This would be nice for me to.
1 watt corresponds with approximately 1/230 = 0,004 amperes, for me 2 digits is the better choice.


Increase OTBN imem size to 8 KiB

Only to be merged if we choose to have the imem size increase.
@moidx @jadephilipoom please note with the larger imem size the branch instructions can no longer branch to any other instruction, it's limited to a 4 KiB window either side of the instruction (PC relative addressing). The jump instructions can continue to branch anywhere in imem. Hopefully this doesn't present any issues.
@rswarbrick I've seen some failures in the RIG, I believe due to this line of the BadBranch class:
https://github.com/lowRISC/opentitan/blob/53c6c771ed140efeefccf942ce5d875134ff3679/hw/ip/otbn/dv/rig/rig/gens/bad_branch.py#L42
This will no longer work as depending on which PC the bad branch is located at the top or bottom of memory may not be reachable. Could you look at a fix?

@moidx @jadephilipoom please note with the larger imem size the branch instructions can no longer branch to any other instruction, it's limited to a 4 KiB window either side of the instruction (PC relative addressing). The jump instructions can continue to branch anywhere in imem. Hopefully this doesn't present any issues.

Does this show up as a runtime error or an assembler error? And if the former, could we add a check to the assembler to catch these cases quickly? It's doable to organize code so that the branches are closer together, but I'm concerned about some not-often-used code path triggering the error if our tests don't happen to cover it.

@jadephilipoom it will be a assembler error, it's a static property of the branch (is its target more than 4 KiB away from it's location in imem)

I rebased this on master, which should hopefully fix a CI issue.

@meisnere @OTshimeon FYI

I am merging this as agreed in the OT sync weekly meeting today to make sure it's included in the next RC.


feat: make external database secret more useful

Make it possible to disable liveness and readiness probes because in some scenarios they do more harm than good
Make it possible to specify and use also username and db-name from the database secret with customizable keys (this enables using database operators more easily)
Fixes typo in comment for externalDatabase.type

Hi, thanks for the PR. Looks good at first glance, I'll review the changes during the day.
Cheers!

Cool. I tried to make everything non-breaking.
A tiny bit nicer would be to have the values structure like that:
externalDatabase:
  existingSecret:
    name: null
    passwordField: db-password
    usernameField: null
    databaseField: null

and use it if name!=null - but it would be a breaking change.

Hi, I think we can integrate your suggestions.
We can bump the version and have an update note in the README. Then the changes should not be as breaking.

Well, as I don't really have more time to spend on this, I'm also fine the the non-breaking changes. :)


Update README.md

Make PyPi version link to https://pypi.org/project/gluonts/
Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #478 into master will increase coverage by 39.23%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master     #478       +/-   ##
===========================================
+ Coverage   43.23%   82.47%   +39.23%
===========================================
  Files         149      149
  Lines        8678     8678
===========================================
+ Hits         3752     7157     +3405
+ Misses       4926     1521     -3405

Impacted Files
Coverage Δ

src/gluonts/dataset/artificial/_base.py
35.96% <0%> (+0.87%)
:arrow_up:

src/gluonts/core/exception.py
62.5% <0%> (+2.08%)
:arrow_up:

src/gluonts/model/trivial/constant.py
76.92% <0%> (+11.53%)
:arrow_up:

src/gluonts/dataset/artificial/recipe.py
74% <0%> (+12.75%)
:arrow_up:

src/gluonts/kernels/_kernel_output.py
87.09% <0%> (+12.9%)
:arrow_up:

src/gluonts/model/seasonal_naive/_estimator.py
100% <0%> (+14.28%)
:arrow_up:

src/gluonts/model/npts/_estimator.py
100% <0%> (+14.28%)
:arrow_up:

src/gluonts/model/forecast.py
72.12% <0%> (+14.6%)
:arrow_up:

src/gluonts/dataset/stat.py
96.32% <0%> (+15.44%)
:arrow_up:

src/gluonts/block/enc2dec.py
91.66% <0%> (+16.66%)
:arrow_up:

... and 88 more


Stalling on period changes in vod manifest

Hi !
I'm presently having some troubles with period changes. The problem is that the player gets stalled (video and audio) on period changes. We are having gaps between those periods and perhaps this is the reason why we get stalled. For the vod example below we are experiencing those gaps on the shaka player demo app.

Jumping forward 0.046521 seconds because of gap before start time of 0.066733
Jumping forward 0.13628500000000088 seconds because of gap starting at 30.396966 and ending at 30.496728

<?xml version="1.0" encoding="UTF-8"?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:cenc="urn:mpeg:cenc:2013" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" maxSegmentDuration="PT2.970S" mediaPresentationDuration="PT47M13.256496S" minBufferTime="PT0S" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static">
  <Period id="430da13b-c735-4447-95df-45a57ee153e3" start="PT0S">
    <BaseURL>https://base-manifest-url</BaseURL>
      <AdaptationSet id="1" group="1" bitstreamSwitching="true" segmentAlignment="true" contentType="video" mimeType="video/mp4" maxWidth="1280" maxHeight="720" par="16:9" maxFrameRate="30000/1001" startWithSAP="1">
         <SegmentTemplate timescale="10000000" media="S!dxIDVP7...8BFgZ4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(video=$Time$)" initialization="S!dxIDVP7...8BFgZ4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(video=Init)">
            <SegmentTimeline>
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="20019889" />
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="20019889" />
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="24020555" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="dzGqZQmf" bandwidth="615850" codecs="avc1.4d401f" width="640" height="360" frameRate="30000/1001" sar="1:1" />
         <Representation id="dzF_gBKf" bandwidth="1212543" codecs="avc1.4d401f" width="720" height="480" frameRate="30000/1001" sar="1:1" />
         <Representation id="dzGFIx2f" bandwidth="1909637" codecs="avc1.4d401f" width="960" height="540" frameRate="30000/1001" sar="1:1" />
         <Representation id="dzGUozif" bandwidth="3711892" codecs="avc1.4d4029" width="1280" height="720" frameRate="30000/1001" sar="1:1" />
         <Representation id="dzHaFlSf" bandwidth="5510874" codecs="avc1.4d4029" width="1280" height="720" frameRate="30000/1001" sar="1:1" />
      </AdaptationSet>
      <AdaptationSet id="2" group="2" bitstreamSwitching="true" segmentAlignment="true" contentType="audio" mimeType="audio/mp4" lang="und">
         <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2" />
         <SegmentTemplate timescale="48000" media="S!dxIDVP7...8BFgZ4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(audio_483_und=$Time$)" initialization="S!dxIDVP7...8BFgZ4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(audio_483_und=Init)">
            <SegmentTimeline>
               <S t="446" d="96255" />
               <S d="96257" />
               <S d="96256" />
               <S d="95232" />
               <S d="96255" />
               <S d="96256" />
               <S d="96257" />
               <S d="96256" r="1" />
               <S d="95231" />
               <S d="96256" />
               <S d="96257" />
               <S d="96256" r="1" />
               <S d="114688" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="dyHjAZ8." bandwidth="192000" codecs="mp4a.40.2" audioSamplingRate="48000" />
      </AdaptationSet>
      <AdaptationSet id="3" group="4" bitstreamSwitching="true" segmentAlignment="true" contentType="text" mimeType="application/mp4" lang="und">
         <Role schemeIdUri="urn:mpeg:dash:role:2011" value="caption" />
         <SegmentTemplate timescale="10000000" media="S!dxIDVP7...8BFgZ4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(caption_und_0=$Time$)" initialization="S!dxIDVP7...8BFgZ4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(caption_und_0=Init)">
            <SegmentTimeline>
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="20019889" />
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="20019889" />
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="24020555" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="dxHInw.." bandwidth="200" codecs="stpp" />
      </AdaptationSet>
  </Period>
  <Period id="ce594563-a630-420f-a6a2-0e3ad2c6e970" start="PT30.429995S">
    <BaseURL>https://base-manifest-url</BaseURL>
    <AdaptationSet id="1" group="1" bitstreamSwitching="true" segmentAlignment="true" contentType="video" mimeType="video/mp4" maxWidth="1280" maxHeight="720" par="16:9" maxFrameRate="30000/1001" startWithSAP="1">
         <ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed" value="Widevine" />
         <ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" />
         <SegmentTemplate timescale="10000000" media="S!dxIDVP7...8BFgZnDU9QUEUtV0lERVZJTkV4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(video=$Time$)" initialization="S!dxIDVP7...8BFgZnDU9QUEUtV0lERVZJTkV4IOMBFQEWAa8_/QualityLevels($Bandwidth$)/Fragments(video=Init)">
            <SegmentTimeline>
               <S d="20020000" />
               <S d="20019889" />
               <S d="20020000" r="1" />
               <S d="20019889" />
               <S d=".....

There is probably something wrong with this manifest, but we can't figure out what is the problem. We are using the exact same manifest with other Dash player and we do not seem to have the problem. Do you have an idea what is wrong with this manifest and what changes could be made to fix the problem ? Or is this a known issue ? Some existing issues refer to period changes stalling, but none of them could help me.
Thank you :)

Hey there! I'm working with @phildupuis on this. We have seen similar behaviour in the past for the live content where we actually had a gap in the manifest (see: https://github.com/google/shaka-player/issues/1864). The impact is the same: on the browser the player can recover but on chromecast the player stalls. However right now, it seems to us that the manifest does not contain such gaps and that the player shouldn't even attempt to jump a gap.
If some debugging is needed on your side, we are willing to provide a streaming and license URL for you to test in private.
Thanks a lot guys!

Please file this as a bug.  That template includes important questions for things we need to help.  Including the platform you are running on and requesting a playable manifest URL.  Debugging with just the manifest text is rarely enough.
We have noticed that on some platform, mainly Chromecast, it takes a while to recover after a seek or stalling.  You can fiddle with the last few properties of the streaming configuration to help.  For example, setting streaming.stallEnabled to false may help.  Also what logs do you see with more verbose logging (use a debug/uncompiled build)?

@TheModMaker is there any way to pass these configurations from CAF SDK down to shaka-player?

After some debugging, I found out it is possible to set
PlayerConfig: {   shakaConfig: {   streaming: {      stallEnabled: false    }   } }
But the current version of shaka-player on chromecast is 2.5.0-beta3 which does not contain the stall detection logic.
So I cannot test it.

I'm not that familiar with the CAF API.  One option would be to try with a custom receiver app based on just Shaka Player.  You can use Shaka Player directly without CAF and see if that helps your content, that would allow you to test with the latest master.  You can take a look at our cast receiver for a starting point.
Those configurations will appear in the v2.5 release, which we hope to make within the next few weeks.  Hopefully CAF will update with that version soon after.

We were trying to repro when you asked for more information and were unable to. After a little bit of investigation, we saw that Google did update the version of Shaka in the Cast framework to v2.5.0-beta3 which seem to have solved our issue. Therefore, we will then consider this as solved.
P.S.: For someone with the same issue: as of 2019-04-26 Google did rollback the shaka-player version to 2.4.4 which causes us to issue again.

The CAF team needed to rollback the v2.5 usage since it caused issues with some DRM content.  We hope to make the final v2.5 release within a week and CAF will hopefully update to that soon.  Since you said it was fixed with v2.5.0-beta3, I'll close this issue.  Feel free to reopen or post a new issue if your problem persists after CAF updates to v2.5.


Ignore ApplicationQualification#equivalency_details

Context
This column is not used in production it's nil for most records. There are only five records with any data in this field – and the data is Lorem Epsom, so test data rather than actual qualification data.
This column is not used in any form. It will be removed in a future PR.
Changes proposed in this pull request
Ignore equivalency_details from model and dfe analytics
Guidance to review
Do specs pass?
Things to check

[ ] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[ ] This code does not rely on migrations in the same Pull Request
[ ] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[ ] If this code adds a column to the DB, decide whether it needs to be in analytics yml file or analytics blocklist
[ ] API release notes have been updated if necessary
[ ] If it adds a significant user-facing change, is it documented in the CHANGELOG?
[ ] Required environment variables have been updated added to the Azure KeyVault
[x] Inform data insights team due to database changes
[x] Make sure all information from the Trello card is in here
[x] Rebased main
[x] Cleaned commit history
[x] Tested by running locally
[x] Add PR link to Trello card

 Tech debt: Apply: remove unused equivalency_details field

 Tech debt: Apply: remove unused equivalency_details field

 Tech debt: Apply: remove unused equivalency_details field


add Caddy service for SSL reverse proxy with Laravel Sail

I've seen a number of requests around the web for ways to make SSL work with Laravel Sail. I recently came across the same need and getting it working wasn't terribly difficult.
The solution uses Caddy as a reverse SSL proxy by leveraging its Automatic HTTPS feature.
Complete details on this solution can be found in this gist.
The Caddy service uses the same installation mechanism as the other docker services. It also fully supports use of the APP_SECURE_PORT environment variable.

I have a Caddy container as a solution for local HTTPS development, and the most hard task was to setup Laravel Mix and BrowserSync to work with mix ports, bindings, websockets and HMR; I was successful after a fair amount of time with trail and error.
Is this working with Vite and vite assets and maybe also support HRM for SPAs?

@clytras I've had no issues with Vite. This should be relatively agnostic to any other services. It only intercepts HTTP requests and forwards them as HTTPS. It then responds with a certificate and forwards the requests on to the underlying service. It comepletely ignores traffic on any other ports such as Vite's 5173.

@Nilpo if you don't load the JS assets using HTTPS, then the browser will report mixed content warnings and errors and this may have also some side effects with Vite dev server.
Vite runs inside the app container and it uses a websocket and it's own configurable ports to utilise HMR and I've had trouble with Caddy setup and websockets.

@Nilpo if you don't load the JS assets using HTTPS, then the browser will report mixed content warnings and errors and this may have also some side effects with Vite dev server.

This would be expected behavior. It wouldn't make sense to load assets insecurely if you are using SSL. Am I missing a use case?
I've been using this for awhile as have others.  I've had no issues with Vite dev server, but I'm willing to be proven wrong.

I have replicated your issues, btw.

I think I'm getting a combination of errors. On a clean Laravel project, I'm not getting any Vite script tags on the welcome page.

If you would like to use Caddy for now I suggest you fork Sail and customize to your liking for your own purposes. Thanks!


Adds a test about filestore

Ticket
Redmine ticket:
https://redmine.openinfosecfoundation.org/issues/6392
Requires Suricata PR to come
https://github.com/OISF/suricata-verify/pull/1427 with only test that currently fails master
min-version is set to 8
Backport to 7 should be clean
But backport to 6 would be completely different
I propose to do S-V PRs to lower the min-version to pass this test as Suricata PR get merged

Replaced by #1524


MWPW-118484 - Rename analytics

Have a fallback path for when milo moves the analytics code

Resolves: MWPW-118484
Test URLs:

Before: https://main--bacom--adobecom.hlx.page/customer-success-stories/abb-case-study?martech=off
After: https://move-analytics--bacom--adobecom.hlx.page/customer-success-stories/abb-case-study?martech=off

Codecov Report

Merging #28 (40bc92e) into main (d0a37ab) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main       #28   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           42        42
=========================================
  Hits            42        42

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


Doesn't compile using mingw64 on Windows

Hi, I recently tried to use this library for a small project but got a compile error for q/pp.hp on line 126 stating :
error: '__FUNCSIG__' was not declared in this scope
 # define LIBQ_FUNCTION __FUNCSIG__

After some digging, it seems that it detects that I'm compiling on Windows but uses __FUNCSIG__ which is part of Visual C++ even though I'm compiling using mingw64's toolchain.

Language version : C++17
Compiler              : g++ v8.1.0
Compiler details   :  x86_64-posix-seh-rev0
Platform              : Windows 10

On gcc (and therefore g++) and clang, there is __PRETTY_FUNCTION__ that would serve a similar purpose.

you solve this? I have this problem

Sadly no, I'd have to dive into how to parse __PRETTY_FUNCTION__ and add that to the lib


IHaskell: remove un-needed inherit

Inherit statement not required and in fact breaks the service. Tested on NixOS: 16.03.git.148396cM (Emu)

Strangely enough, leaving the inherit doesn't brake the service for me. You seem to be correct in that it is unnecessary though. Thanks!


FileRename record implementation is incorrect

In specification:
export interface FileRename {
    oldUri: string;
    newUri: string;
}

In protocol implementation:
public abstract record FileOperationItem
{
    public Uri Uri { get; init; } = null!;
}

public partial record FileRename : FileOperationItem;

When using DidRenameFileParams/WillRenameFileParams (handling workspace/didRenameFiles/workspace/willRenameFiles), items in request.Files only include one URI. I haven't tested the requests but I suppose the param objects cannot be deserialized as expected.
(Packages like vscode-languagesclient implement this correctly.)

By the way, shouldn't these classes be named as DidRenameFilesParams/WillRenameFilesParams (plural form; the same also applies to corresponding handler classes and interfaces)?

Hello, it appears that this fix is not in a release yet. Any idea when this will make it into a Release?
In the meantime, is there any possible work around? I'm not sure if I can override the default deserializer for this message.


Loss increasing while WER decreasing when finetuning wav2vec 2.0

I am finetuning a wav2vec 2.0 model and I noticed that while the validation loss is increasing after a while the WER keeps decreasing. Does that mean that my model is overfitting?
Validation Loss

Validation Viterbi WER

from what i've seen, using checkpoint with lowest lm-decoded wer (even if with small beam, etc) tends to give better lm-decoded results later when using a more powerful lm and bigger beam. one hypothesis is that as the training progresses, the model tries hard to fix errors that can be easily fixed by LM (while introducing errors that are harder for the LM to fix).
choosing checkpoints based on raw WER tends to work reasonably well, just slightly worse than the lm-decoded wer. you can also play around with masking params to see if you can train for a bit longer before seeing the phenomenon you are observing

@alexeib Thanks for the response, I will try masking params as you said.
The reason I am not using the lm-decoded wer is that it always stays around 100 for my dataset. I was wondering if my phenomenon can be considered as overfitting? Should I choose a checkpoint that doesn't have the lowest wer due to the increase in loss?

thats very strange that wer with lm stays at 100 while raw wer is decreasing. this implies something is wrong with your lm or setup.
as for whether to use loss or raw wer as early stopping criterion, i would probably go with raw wer

when i use the trained model for inference with the same lm and bigger beam it gives me correct results. I stopped using the dedoded wer as i thought that for the language that i am using it (not english) the beam=50 doesn't give good results.


[CHANGE] New community to promote

What page is the change request for? Please supply the URI.
https://a11y.canada.ca/en/community-directory/index.html
Approval needed?
Yes, I need to approve this request before change goes live
Yes, please send a request to the following person?
<EMAIL_ADDRESS>Who shall do the work?

[ ] I will do it, I want to contribute
[X] I am asking for someone else to please do the work

Timeline
ASAP
Additional context
Accessible Communications CoP Description BIL.docx
Please add that description for the community, on the community page in both language.

Do you think "GCpedia page" is good link text for this link?
Visit our GCpedia page for more information.
Would this be better?
Visit the  Community of Practice on Accessible Communications page on GCPedia for more information.

This breaks the expected look and behaviour of the other sections / links on the page:
The other blocks have heading with links and descriptions below them.
But this one has the link in the description and not the heading.

versus

This text is also very long compared to the other descriptions on the page.

My suggestion is:


Per host color scheme

I'd like to be able to change the host on the prompt on a per host basis to indicate that I'm not on my computer but on a remote server for example. From the docs it doesn't seem to be possible. Any suggestions?

I use the context segment to achieve a similar result - https://github.com/bhilburn/powerlevel9k#context - it indicates whenever you are on a remote server(and shows the hostname) or whenever you are not DEFAULT_USER user on your local machine.

Why don't you use different configurations on your machines?
Like having POWERLEVEL9K_CONTEXT_DEFAULT_BACKGROUND='red' on machine A and POWERLEVEL9K_CONTEXT_DEFAULT_BACKGROUND='blue' on machine B..
Even if you want to use the same dotfiles, you could add a switch to your .zshrc, like this (pseudo-code):
if [[ $(hostname) == 'machine_a' ]];
    # Set colors for A
else
    # Set colors for B
fi

@hoshsadiq - Did @rjorgenson's and @dritter's tips, above, resolve your question?

Closing due to inactivity.

Sorry, I've not been able to check as I've been away from my laptop. I won't be able to check for another few days but I will reopen this issue if the suggestions don't work!

Sounds good! Thanks, @hoshsadiq!


Add unit tests

Codeception recommended.
Run tests on Travis CI.
Bonus points for code coverage (possibly via Code Climate).
See https://github.com/nordsoftware/lumen-cors for reference.

Done in 0.2.0. Tests do not cover "everything", but about 60%.


Doc: how to resync local wallet with testnet

The problem that you wish to solve
Current case:

wallet created from local node
faucet has provided ADA to wallet
wallet db deleted unfortunately / switch from docker to simple nix usage to avoid node socket issue with PAB
recreate locally wallet
node is running, several logs indicates so
wallet is running too nothing to say here too
chain ok
pab ok
daedalus @testnet is correctly seeing my ADA and past transactions

Expectation:

wallet is resync and ADA provided to local cardano-wallet

But got, even after one day:

local wallet has same id, same address but without any ADA

Description
It would be great to be able to:

force a resync (maybe not possible I do not know)
retrieve an indicator of sync with testnet? I tried severak api and everything seems ok but in reality not (or I am missing something)

Implementation suggestions
Doc should suffice, I would expect my simple case to be common for smart contracts developers.

Ok maybe I was impatient, even if it was sync 100% I finally get ADA 1 day after.
So nothing to do except it should work and wallet will see something like this [cardano-wallet.wallet-engine:Info:57] [2021-11-17 08:49:01.07 UTC] ....: discovered 1 new transaction(s)


17.4 still running as 17.3

Just did a pull of the latest and I'm not able to pull down a 17.4.
0.000 2019-03-01 21:47:21; Factorio 0.17.3 (build 43128, linux64, headless)
REPOSITORY                        TAG                 IMAGE ID            CREATED             SIZE
docker.io/dtandersen/factorio     latest              012f8b2b92ad        25 hours ago        173 MB
Says 25 hours ago despite github showing updated.
I'm using this:
docker pull dtandersen/factorio:latest
I also tried using 0.17.4 instead of the latest flag.

Looks like 17.4 just built about 15 minutes ago. Give it another shot now.

Thanks.  17.4 tag works.  Latest is still pulling 17.3

Looks like an issue on Dockerhub. @dtandersen needs to resolve it.

It's been updated.  Can confirm latest and 0.17.4 work as expected.

Docker Hub is having some issues today.


⚠ AlphaRatio has degraded performance

In 6c63fef, AlphaRatio ($AR) experienced degraded performance:

HTTP code: 200
Response time: 654 ms

Resolved: AlphaRatio performance has improved in 4a3f8f2.