CI

Hello again. Thanks for writing this. It's interesting.
Describe the new a11y feature or project enhancement
In order to help people contribute to this repository, it would be great to use GitHub to check all pull-requests automatically.
Describe the solution you'd like
Automatically running lint and tests on all incoming PR's
Link(s)
N/A
Other
I'm willing to write this for you.

Hi. When I get chance, I was going to research how to automatically run the tests in some sort of pipeline, so the PR can't be merged until all tests pass. In terms of linting, I thought this would be more difficult because it will need to do a commit automatically.
But, if you can do this, then that would be super helpful!

Can you expand on

In terms of linting, I thought this would be more difficult because it will need to do a commit automatically.

I'll supply instructions with the PR for adding guards for the primary branch

As for Linting I can make it a separate PR, but I don't think it needs to commit. Linting at CI should be the whole repo, but a git reset in a github action, could equally as well have it check the changed files.

Linting PR is not merged 😉  feel like re-opening. We just got CI in without linting so-far

Reopening for @Lewiscowles1986 and linting 😉


the layout for "creating new namespace" page

1.Fill the page with forms,It seems to have too many layers
2. Change the description to an icon and click display

Should be XYM, not XEM

fixed with 28e1ac6c


Support switching language

This is a great tool, and I'm wandering whether there is language mapping setting to support display different language in the html report? Or shall i modify the source code to achieve that?

The report and interface are currently in English, and switching languages is at this time is not a feature on the roadmap. However, if we find more people are in need of this feature, then we can consider adding it to the roadmap (please upvote the top post of this issue in that case!).
Regarding the implementation, this depends. For an ad-hoc translation, you could modify the HTML templates, rendering components and possibly other places where text is included. If you are interested in contributing support for multiple languages, then a mapping is preferred (e.g. via gettext)


Added code to make all links open in new tab

#5 Make all links open in new tab
Description
Added code to make all links open in new tab.
Fixes # (issue)
Type of change

[ x ] New feature (non-breaking change which adds functionality)

Checklist:

[ x ] My contribution follows the style guidelines of this project
[ x ] I have performed a self-review of my own contribution
[ x ] I have made corresponding changes to the documentation
[ x ] My changes generate no new warnings
[ x ] I have checked my code and corrected any misspellings

@rahulbhatt1899 Have you changed node modules files too?? 5000+ Files are changing through your commit.

@nehakalbande no, I just installed it as stated in contributing guide. Should I add node_modules to .gitignore?


Create Telugu translation for extension description

Reviewer:

Description:

Telugu translation for extension description is created
Steps to test this PR:

Automated tests:

[x] Unit tests
[x] Integration tests

Reviewer Checklist:

[ ] Ensure the PR solves the problem
[ ] Review every line of code
[ ] Ensure the PR does no harm by testing the changes thoroughly
[ ] Get help if you're uncomfortable with any of the above!
[ ] Determine if there are any quick wins that improve the implementation

PR Author Checklist:

[ ] Get advice or leverage existing code
[ ] Agree on technical approach with reviewer (if the changes are nuanced)
[ ] Ensure that there is a testing strategy (and documented non-automated tests)
[ ] Ensure there is a documented monitoring strategy (if necessary)
[ ] Consider systems implications

Hey!
I checked over with the team and as we don't have plans for translations for Telugu, we don't think it's the right use of resources maintaining the translations (we're about to translate the extension UI).
I think a better time to add this would be after we have landed these other changes, I'm happy to consult with you after they have landed if there's still interest in translating all the extension then.
Thanks!


table view of node execution data

should include following features:

[ ] columns: time(ms or s), NodeType , NodeName, % of total
[ ] - potential columns (number of times function was replicated - this is essentially callsites)
[ ] sort column by ascend / descend

current images seem to have too much precision to easily be compared - I'm not sure we really have real accuracy under 10 ms anyway.

sort column by ascend / descend has been finished by @ScottAMitchell , still missing other feature set


real/deal/really have too many syllables

"Real" counts as 2—should be 1
"Deal" counts as 2—should be 1
"Really" counts as 3—should be 2
There may be similar words affected that I didn't catch.

Hi @peterpapadim! thanks for raising this issue. Seems you’re right.
We’d love a PR for this!


[Bug] Advancements Don't Show in linked Discord Channel

Checks

[X] I confirm that I have searched for existing issues / pull requests before reporting to avoid duplicate reporting.
[X] I confirm that I followed the MCDC Docs and read the Changelog, but this problem still exists.
[X] I confirm that I noted that if I don't follow the instructions, the issue may be closed directly.

Java Version
jdk-17.0.1
Minecraft Version
1.19
MCDiscordChat Version
2.0.0 alpha-5
Description
Advancements fail to show up in the linked discord chat, I have announcing commands off
. Am using blazeandcave datapack (only one that adds advancements)
Server is also running on fabric latest versions, webhook also in use for the player pictures and names to show.
Fabrication mod changes a lot of functionality so it could be it as well.
Thats all the relevant info I can come up with. Note that this has happened across multiple discord integration mods.
To Reproduce
Install same mods (?) I would try adding blazeandcave as a first troubleshooting step
Get achievement
Fails to show in discord :(
Log
logs_latest(1).log
Config
config_mcdiscordchat.txt

I don't find any advancement in your log. Is it custom advancement or original Minecraft advancement? Try removing dcintegration-fabric to test for compability.

They are all custom advancements, yes. Blazeandcave has a slightly rewritten advancement granting system that has rewards, maybe that could be it, not sure.
I removed dcintegration yes, I have no idea how it got there lmao

Is BlazeandCave's Advancements Pack the correct mod you mentioned?

I use the datapack version, but yes that is it.

Will investigate when I have time

Hi, you can fix this issue by the following steps:

Open config menu: /function blazeandcave:config
Go to "Advancement Completion Message Settings"
Go to "Click to view preset options"
Click "Turn vanilla messages on"


Incorrect number of EOG events detected when using find_eog_events for data recorded with EGI HydroCel GSN 128 1.0 system

Describe the bug
This report is about inconsistent behavior when applying the mne.preprocessing.find_eog_events().
Manually checking the video recorded during the bio signal recording indicated that  there should be more than 1 EOG events.
However, the report generated upon applying the mne.preprocessing.find_eog_events() gives only 1 EOG event detected.

Now detecting blinks and generating corresponding events
Found 1 significant peak
Number of EOG events detected : 1

Steps to reproduce
The above report can be reproduced via the code snippet  below:
import mne
import matplotlib
matplotlib.use('Qt5Agg') # Required for PyCharm user

filename = r'S17_3.mff' # The mff file is accessible via download link provided below

raw = mne.io.read_raw_egi(filename, preload=True)
montage = mne.channels.make_standard_montage('GSN-HydroCel-129')
montage.ch_names[-1] = 'E129'
raw.set_montage(montage, match_case=False)
raw.filter(1., 50.)

# Look for EOG event
eog_events = mne.preprocessing.find_eog_events(raw, ch_name='E126,E127')
onsets = eog_events[:, 0] / raw.info['sfreq'] - 0.25
durations = [0.5] * len(eog_events)
descriptions = ['bad blink'] * len(eog_events)
blink_annot = mne.Annotations(onsets, durations, descriptions,
                                  orig_time=raw.info['meas_date'])
eeg_picks = mne.pick_types(raw.info,eeg=True)
# raw.plot(events=eog_events, order=eeg_picks)
raw.plot(events=eog_events)
raw.set_annotations(blink_annot)

Expected results
There should be more than ONE EOG events
Additional information

System:

Windows 10
anaconda3
mne-0.21.dev0
Python 3.7
Link to download S17_3.mff

Channel selection as replacement of EOG channels

Since the  128-channel HCGSN v.1.0 does not have dedicated EOG channels (correct me if Im wrong about this), the channel E126 and E127 were selected as surrogate as per usage example in #4027. However, I am open to any suggestion if there is any other channels combination that can improved the EOG event inspection.

did you inspect the data? maybe you have some artifact in the data? this
function is not guaranteed
to work and makes some assumptions that may not be fulfilled in your data.

Thanks for the prompt reply @agramfort .
May I know what kind of artifact you have in mind. FYI, I have tested other mff files from other subjects as well, and all of the testing return little EOG event. Hence, my guess maybe to aforementioned artifact maybe not the source of problem. But to confirm, is it sufficient/advisable to use the E126 and E127 here?
Since this function is not guaranteed, then is it advisable to rely on mne.preprocessing.ICA ?
Appreciate for any advice.

I don't know your data but to see of  E126 and E127 can work they should
contain clear blink patterns

Thanks for the feedback @agramfort . But, as of this stage, I believe there is something missing with my setup as the number of eog event detected is quite small. Anyhow, I will update the thread once I got thing working.

Other approach to surrogate absence of EOG channel is by creating a new virtual channel. This is possible using  mne.set_bipolar_reference with its usage detail accessible via the link.
Say, we would like to consider only the left side of the eye only to detect eye blinks, then we can use the channel E25 and E127 to create a new virtual channel with the name EVirt.
raw=mne.set_bipolar_reference(raw, ['E25'],['E127'],['EVirt'])
or the combination of E8 and E126
Then, set the new virtual channel as the type of EOG
raw=set_channel_types({'EVirt': 'eog'})
Then, the EOG event can be search simply by:
eog_events =eog.find_eog_events(raw, reject_by_annotation=True, thresh=0.0001, verbose=None)
This approach should work for data collected with EGI HydroCel GSN 128 1.0 system, atleast for my data. However, I yet to compare manually the eog_events with those with eye blink detected with video/image captured.

Just to add,
using different channel combination to create the virtual channel result in diffrent number of eog event detected

E8 & E126 resulting in 98 EOG events
E14 & E126 resulting in 122 EOG events
E21 & E127 resulting in 110 EOG events
E25 & E127 resulting in 98 EOG events

Is this mean we need to manually inspect the event as well

try this:
import mne
# import matplotlib
# matplotlib.use('Qt5Agg') # Required for PyCharm user

filename = r'S17_3.mff'  # The mff file is accessible via download link provided below

raw = mne.io.read_raw_egi(filename, preload=True)
montage = mne.channels.make_standard_montage('GSN-HydroCel-129')
montage.ch_names[-1] = 'E129'
raw.set_montage(montage, match_case=False)
raw.info['bads'] = ['E129', 'E114', 'E88']  # mark bad channels
raw.filter(1., 40.)
raw.crop(0, 595)  # crop huge artifact at the end

raw.plot_psd()

# Look for EOG event
eog_events = mne.preprocessing.find_eog_events(raw, ch_name='E124')
onsets = eog_events[:, 0] / raw.info['sfreq'] - 0.25
durations = [0.5] * len(eog_events)
descriptions = ['bad blink'] * len(eog_events)
blink_annot = mne.Annotations(onsets, durations, descriptions,
                              orig_time=raw.info['meas_date'])
# eeg_picks = mne.pick_types(raw.info, eeg=True)
# raw.plot(events=eog_events, order=eeg_picks)
raw.plot(events=eog_events)
raw.set_annotations(blink_annot)

you did have a big artifact at the end of the file.
I also marked a few obvious bad channels

I also filtered below 40 has you have a huge line noise artifact at 50Hz that remained with a low pass at 50

Hi @agramfort , thanks for the sample code, I really appreciate it.

Hi @agramfort, I notice that you used  ch_name='E124' to localise the EOG event. I cross check with the 128-sensor HydroCel GSN recording montage, the E124 correspond to  F4. While other have proposed the used of Fp1/Fp2 or VEOG and HEOG which I believe any of the combination of EEG channel on the face that correspond to EVirt, but you choose to use F4 instead. May I know if there is good motivation behind this that I am not aware of? Thanks for the time entertain this question.

I looked at the data at it contains clear blink artfifacts

For future reader as well reference for me later.
As mentioned by @agramfort, he marked few bad channels namely 'E114', 'E88'. The artifact can be observed as depicted in the picture which is accessible

via the link.


Optimize code

Some code changes to improve code readability. Tried to improve compilation time for codec-registration-serializer-check (#135 ) but all the changes did not make any improvement.

Do you have any logs form profiler or just some generic printf for measuring which part of the code took the most time? Making changes blindly may lead to counter-intuitive results.

Didn't use any profiler. Do you have any suggestions on which one to use? I changed the code while keeping the implementation valid and nothing improved compilation time.

Didn't use any profiler. Do you have any suggestions on which one to use?

Pls start with JProfiler! Java VisualVM also seems a natural first choice

Didn't use any profiler. Do you have any suggestions on which one to use?

Pls start with JProfiler! Java VisualVM also seems a natural first choice

I tried JProfiler and found out that a big amount of time for compilation goes to this part of code:
serializerImplDef.collect {
    case x: Tree if x.tpe != null && x.tpe.toString().matches(filterRegex) => x.tpe
  }

The reason for this is because we used Tree which is the root class for all Types and it seems to me that's unnecessary so I checked for only several subclasses of Tree. I tried to find the minimal set of classes with having valid tests and also valid compilation for projects that uses ASH. We can discuss it further if there's some class that is also required to be added here.


Add custom validation for new fields on User

Hello,
I added a new field on my Identity User class, and I want add some new validation on this field. (e.g. validate that specified value exists in another database)
From what I can tell, the only place I could add it in my Admin Website would be in BaseIdentityController
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> UserProfile(TUserDto user)
{}

I usually prefer not having business logic in my controllers, so I was wondering if there was another way to achieve this.
Thanks

It looks like I might be able to implement a custom validator using FluentValidation.
https://fluentvalidation.net/aspnet#asp-net-core
With something like
services.AddTransient<IValidator<UserIdentity>, UserIdentityValidator>();

Will update after testing

It turns out I had to create the validator on the DTO. Still not 100% ideal since I would have liked to add the validation on the base type, but at least this works.
For reference
public class UserDtoValidator : AbstractValidator<UserDto<string>>
{
    public UserDtoValidator()
    {
        RuleFor(x => x.CustomDecimalField).GreaterThanOrEqualTo(0);
    }
}

In StartupHelpers.cs
services.AddMvc().AddFluentValidation()
//...
services.AddTransient<IValidator<UserDto<string>>, UserDtoValidator

Does anybody know of a way to add the validation directly on UserIdentity?

Hi @pbros ,
Thank you for your info about using of FluentValidation.
I would suggest to create your own implementation of IdentityService - ideally from dev branch because we improved the inheritents.
If you want to validate the UserIdentity - you can register this object via FluentValidation but you need create this validation manually - for example in IdentityService.
BTW: I think validation of DTO is better from my point of view.
Give me please some feedback about your final solution. :-)

I'll stick to the DTO for now, as it will be simpler to maintain. I will re-open if I decide to go another way.
Thanks!


Remove line 30 from Dockerfile

It creates a default CKAN repository, but the .Rprofile file already has that information.

Wrong.


AgentStatusWatcher failing - sometimes - to update thresholds

We should also separate the site state from the slots database updates.
I've just seen this error in one of the agents:
2017-11-01 09:46:55,473:139773779375872:WARNING:ResourceControlUpdater:Found slotsCPU thresholds for site T3_US_Omaha which has no state in SSB
2017-11-01 09:46:55,473:139773779375872:WARNING:ResourceControlUpdater:Found slotsCPU thresholds for site T3_US_Colorado which has no state in SSB
2017-11-01 09:46:55,473:139773779375872:WARNING:ResourceControlUpdater:Found slotsIO thresholds for site T3_US_Colorado which has no state in SSB
2017-11-01 09:46:55,474:139773779375872:WARNING:ResourceControlUpdater:Site T2_TH_CUNSTDA does not have thresholds in SSB. Taking no action
2017-11-01 09:46:55,803:139773779375872:ERROR:ResourceControlUpdater:Error occurred, will retry later:
2017-11-01 09:46:55,803:139773779375872:ERROR:ResourceControlUpdater:integer division or modulo by zero
2017-11-01 09:46:55,803:139773779375872:ERROR:ResourceControlUpdater:Trace back:
Traceback (most recent call last):
  File "/data/srv/wmagent/v1.1.4.patch3/sw/slc6_amd64_gcc493/cms/wmagent/1.1.4.patch3/lib/python2.7/site-packages/WMComponent/AgentStatusWatcher/ResourceControlUpdater.py", line 95, in algorithm
    self.checkSlotsChanges(sitesRC, sitesSSB, self.agentsNumByTeam)
  File "/data/srv/wmagent/v1.1.4.patch3/sw/slc6_amd64_gcc493/cms/wmagent/1.1.4.patch3/lib/python2.7/site-packages/WMComponent/AgentStatusWatcher/ResourceControlUpdater.py", line 235, in checkSlotsChanges
    sitePending = max(int(CPUBound / agentsCount * self.pendingSlotsSitePercent / 100), minCPUSlots)
ZeroDivisionError: integer division or modulo by zero

2017-11-01 09:46:55,804:139773779375872:INFO:ResourceControlUpdater:Resource control cycle finished updating site state and thresholds.

Looking at the code, I don't think it can happen anymore. There were a few changes in 1.1.6 that got this issue fixed.


Is it possible to configure imgbot to run on a specific branch?

Is it possible to configure imgbot to run on a specific branch, not just main or master?
I'd like to specify development as my branch on which the images are compressed and then I'd merge them into main myself.
Is that possible?

Hello, sure we have that option available here: https://imgbot.net . You need to log in and select the settings for the particular repository you want to change the default branch. Simply type the branch name under: Default branch override and save the changes.

So there's no way of doing it except in the way above?
You mean to say I can't have anything like this unless the default branch is development?

Need to do an impact analysis of making the default branch something other than main or master ...

You do not have to change the default branch on your repository, the setting from our site will only tell imgbot to act as if the branch you add in the setting is your default branch and open pull requests against that branch. The option is also described here: https://imgbot.net/docs/#configuration .

Ok. Thank you very much.


Get notified when ECS tasks are failing to start consistently

I've put up an initial attempt at this, but I couldn't actually reproduce the issue! So we'll see if it works the next time it occurs.

Done!


App Transport Security compliance

Hi,
Apple is going to enforce ATS on 1/1/2017, is there any plan to make IMA comply with ATS?

The SDK itself is currently HTTPS compliant - the samples are currently disabling ATS only because we haven't yet migrated our sample content videos to an HTTPS source. So as long as you have HTTPS content video and ad sources you should be fine.


Expires Value that occurs in the past not deleting

Hi
Thanks for the code. This works pretty well.
I was testing this out for my application and while testing some use cases I bumped into a potential issue, just want to bring this to your attention and see if this is intended, if not would like to propose a fix.
Here are my steps

I login with remember me
I am using database so it inserts a record in a database table that I specify and stores the triplet
I hit logout - and it deletes the remember me record from the database
all is well so far

Now I am looking to test the auto login so I manipulate the database record a little

I login with remember me
I am using database so it inserts a record in a database table that I specify and stores the triplet
I go to the table and update the expires date to some date in the past manually
Now I hit logout - even though I am invoking CleanTriplet at logout, it does not Find the record because of the " $sql = " AND {$this->expiresColumn} > NOW() LIMIT 1"; on line 29
https://github.com/gbirke/rememberme/blob/master/src/Rememberme/Storage/PDO.php#L29
So it does not delete the record.
If I try to login again with "remember me" checked again, it creates a 2nd record. for the same user, with different tokens.

But

IF i update the database record and make the Expires column to a future value, the SQL above will detect the record and logs me in.

So the issue here is if the token expiry date is in the past it just keeps the record forever.
So I am thinking the "AND {$this->expiresColumn} > NOW() " should be removed from the Where clause and you should check the resulting record to see if it expired, if it does then delete the record and return false.
That way we can make sure we don't leave zombie records that will never be deleted.
Please let me know if there is another use case where the "AND {$this->expiresColumn} > NOW() " is applicable.
If you look at the File option, it is just a check to see if the file is there or not, we are not looking into the file to see if it has an expiry date that is before today, but with database records we have that flexibility.
Hope this helps.

I submitted a fix, please review and let me know if that works and you can merge it to your branch.

Thanks for pointing out this issue!
I won't merge your propesed fix since I'd rather integrate the expiration of tokens into the storage adapter interface and the authenticator. This is definitely a planned feature for the next version.

Implemented in Version 2.0


Sanitize job names with runner?

I am running repeatedly into issues with dataflow job names that are not allowed on dataflow like here.
Runner warns about this, but fails. This is acceptable in general but adds avoidable overhead for the maintainer (who often already has a steep learning curve ahead of them). It is also only an issue on Dataflow and thus would be nicely abstracted away on the runner level?
I suggest that we sanitize jobnames within runner in the following way:

replace offending characters (e.g. _ with -)
trim the job name to the max length (with appropriate warning)

This block of code is supposed to be preventing this from happening. So there must be something missing from the logic here:
https://github.com/pangeo-forge/pangeo-forge-runner/blob/e2faa9355bc5f18ebb7e6190462ee860ecafe5cf/pangeo_forge_runner/commands/bake.py#L85-L101

@cisaacstern I think it is 100% working! It raises exactly that error. But what I am proposing is to actually change the jobname within runner so that the error is not raised in the first place.


Kong Pods Load not balanced (02. Mar 2021)

Hi GS,
One team did some Load tests using Kong in Schn01 (China Kubernetes cluster) and saw that some pods were having way more load than others, resulting in instability of response time. Please check the following PDF with all info from our ticket:
APIS-61 Kong Pods load not balanced in Scn01.pdf
Thank you for your time.

@giantswarm/team-halo can you please check urgently as China is doing some tests. Thx.

Hello @cadiegoc,
from looking at your linked PDF I cannot really see what could have caused the uneven spread of load.
For the first chart, are you sure the pods all a have the same age? In the sense of "older pods served more requests since they're around longer".
Maybe @yasn77 has deeper insight.

It's difficult to exactly say as the pods no longer exist.... However the first place I would (and did) look is to see if traffic from the NLB is unbalanced. As one potential issue could be related to session affinity... However the NLB don't have any sticky or session affinity set up. Unfortunately i couldn't find any metrics that showed what nodes in the target group are being used, but I did find that active connections primarily existed on an NLB in a single AZ:

From that you can see the majority of connections are on NLB in AZ cn-north-1a, so the logical conclusion would be that the pods in the graph you posted existed in that AZ.
My next step suggestion would be to validate how the perf test is configured... For example, is it caching DNS of the NLB? Picking the response in AZ B then only sending there? Is the Perf test hitting a CDN? Is the CDN configured to balance the traffic?
To be honest, I think this as far as we can go... I can't conclusively say it is because of what i described, but I would suggest that the graph from AWS would say it is.

Hi Team,

The configured domain doesn't have CDN attached
we are using jmeter for perf test and no DNS cache is configured.

My question is that:

How NLB distributed load to backends?
Can NLB access log be used to calculate how many requests are distributed to each backend service?

Thanks.

we are using jmeter for perf test and no DNS cache is configured.

JMeter under the underhood is using Java, which from experience can be an issue with its own DNS caching mechanism. JMeter can be configured so that each thread makes it's own request (i.e cache is cleared for each thread/iteration). This site is useful in explaining how to configure https://www.blazemeter.com/blog/dns-cache-manager-right-way-test-load-balanced-apps

My question is that:

How NLB distributed load to backends?

For TCP traffic, the load balancer selects a target using a flow hash algorithm based on the protocol, source IP address, source port, destination IP address, destination port, and TCP sequence number. The TCP connections from a client have different source ports and sequence numbers, and can be routed to different targets. Each individual TCP connection is routed to a single target for the life of the connection.

(From https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html)

Can NLB access log be used to calculate how many requests are distributed to each backend service?

I am not sure if logs are enabled, the API team would be able to verify that

Hi Team,
after running jmeter with DNS cache disabled, traffic to each Kong pods still not balanced.
Please see the below screenshot.

@maxyang2008 Thanks for the screenshot.... The balancing looks a lot better than the initial screenshot 👍🏽
TBH if there is no increased error rate or latency then I am not sure there is much more that can be done. We are not likely to see absolute equal balancing. As described by AWS documentation, there is a chance that requests will go to the same target.
@narsipra @rathonit01 It would be good to get the teams input. Thanks

Hi @yasn77 ,
The difference between the highest and lowest calls is around 70,000, which is still a large difference.
Now there are only 12 pods, I am not sure how will the graph looks when having more kong pods.
But let me watch it for more time to see if there will be something.
I still have 2 question:

For every http request by client program, which pods it will goes to is determined by NLB, is that right?
Is there somewhere I can see the capacity limit of NLB? how much traffic can NLB handle?

Thanks.

For every http request by client program, which pods it will goes to is determined by NLB, is that right?

Yes, the traffic is terminating at the AWS NLB and the decision as to which backend Kong to send the traffic is decided by the AWS NLB Load Balancing algorithm

Is there somewhere I can see the capacity limit of NLB? how much traffic can NLB handle?

Cloudwatch metrics can give a good indication of its usage.
But as I mentioned, I am not sure if there is much need for further investigation. If you are not seeing increased latency or increased error rates then I would say that things are behaving in an OK manner. You are not likely going to see a totally even distribution. Also, it is worth noting that the Kong service can use Horizontal Pod Autoscaling and some are running on spot instances, so the graphs can skewed as pods come and go (so traffic will favour one pod more than another since it's around longer)

Hi @yasn77 ,
can we put this on hold?
Our perf test will continue, and let's see if I can find more to verify.
Thanks.

I am closing this due to having found out that it is all within boundaries.


Created a URL shortener service

This PR targets #117.
I've implemented a new endpoint in the server in /api/permalink/generate. It connects to bit.ly to generate shortened URLs.
Clients may query this endpoint sending a GET request containing a url parameter that contains the link to be shortened.
For example, a call to /api/permalink/generate?url=https://github.com would return https://bit.ly/3dnDVGh

Codecov Report

Merging #118 into master will decrease coverage by 0.09%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #118      +/-   ##
==========================================
- Coverage   13.05%   12.96%   -0.10%
==========================================
  Files          53       54       +1
  Lines        2152     2167      +15
  Branches       27       29       +2
==========================================
  Hits          281      281
- Misses       1871     1886      +15

Impacted Files
Coverage Δ

...rver/src/main/scala/es/weso/server/ApiHelper.scala
8.72% <0.00%> (ø)

.../src/main/scala/es/weso/server/EndpointParam.scala
0.00% <ø> (ø)

...rc/main/scala/es/weso/server/EndpointService.scala
0.00% <ø> (ø)

...r/src/main/scala/es/weso/server/LinksService.scala
0.00% <0.00%> (ø)

...c/main/scala/es/weso/server/PermalinkService.scala
0.00% <0.00%> (ø)

.../server/src/main/scala/es/weso/server/Server.scala
0.00% <0.00%> (ø)

...er/src/main/scala/es/weso/server/ShExService.scala
0.00% <ø> (ø)

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 43d077c...280335f. Read the comment docs.

@ulitol97  Is bit.ly a free service?

@ulitol97 Is bit.ly a free service?

Yes. It seemed to be the best option out of all the others. It only needs to be linked to an account. I'm still thinking about using TinyUrl, but that looks more like a hack that may stop working any moment.

@ulitol97 is this the bit.ly authorization key?

Yes, that is how it is linked to an account and why this functionality is not in the clients. I'm planning on hiding it more.

I have eventually changed the shortener service to https://cutt.ly/, which had an unlimited free plan: #119.


Internet Explorer Polyfills missing

Hello. I have been using this template for a couple of months now and would like to use it on a customer application. However, the customer only uses Internet Explorer and my applciation based on this template doesn't run there. You can try for yourself and see the problems. This small one (AngularWebpackVisualStudio) application runs fairlty well on IE but here are som errors like:
ERROR TypeError: An object was expected.
However, a large application based on this template doesn't run at all!!
Some more examples:
method find and method isFrozen are not supported by the object
Not even Edge can run the application: Object doesn't support property or method 'getGlobalObjects'
Can you please give some advice?

I am not trying to be too smart here, but I have noticed that C# frameworks same as PHP frameworks which tries to scaffold within its project a js frameworks most likly failing doing that ... so I went out doing it separatly running an app and having api.
don't see any reason to mix things.


Added responsive for login and signup pages

Description
The login and signup pages are overlapping the header and footer in my screen which is 1200px. I have fixed the issue
Fixes #411
Screenshots

Checklist

[x] Tests have been added or updated to cover the changes
[x] Documentation has been updated to reflect the changes
[x] Code follows the established coding style guidelines
[x] All tests are passing

Hey @SurajPratap10, I have resolved the conflicts. please review!

Hey @SurajPratap10  please add a level label for my other pr #453, so that my pr counts in the total score


"Block private networks" creates a defective firewall rule

The interface setting "block private networks" creates an automatic rule that has the following networks in it: <IP_ADDRESS>/8, <IP_ADDRESS>/8, <IP_ADDRESS>/10, <IP_ADDRESS>/12, <IP_ADDRESS>/16.
Expected behavior
The networks seem to be shortened, they should be <IP_ADDRESS>/8, <IP_ADDRESS>/8, <IP_ADDRESS>/10, <IP_ADDRESS>/12, <IP_ADDRESS>/16
Additional context
It seems like 23.7.8 did not expose this behaviour. See https://forum.opnsense.org/index.php?topic=37389.0.
I do not know if opnsense/core contains the root cause, because it did not find this in the source.
Environment
OPNsense 23.7.9 (amd64).

How was this diagnosed... by trusting pfctl output or by testing the actual rule?

By looking at the rule in the GUI.

Screenshot for context please.

Could be cosmetical from the last commit that I did. This isn’t even diagnostics data.

Yes, sure looks so:
block drop in quick on igc3 inet from <IP_ADDRESS>/8 to any label "1072878c6245b52440bc89c6107a9d0a"
block drop in quick on igc3 inet from <IP_ADDRESS>/8 to any label "1072878c6245b52440bc89c6107a9d0a"
block drop in quick on igc3 inet from <IP_ADDRESS>/10 to any label "1072878c6245b52440bc89c6107a9d0a"
block drop in quick on igc3 inet from <IP_ADDRESS>/12 to any label "1072878c6245b52440bc89c6107a9d0a"
block drop in quick on igc3 inet from <IP_ADDRESS>/16 to any label "1072878c6245b52440bc89c6107a9d0a"

So it is probably bad formatting.


Grammar mistakes

"Managed HSM Crypto Service Encryption User: Built-in role that is usually assigned to a service accounts managed service identity" - "accounts" should be "account's". The apostrophe is needed to show ownership.
"Perfect Forward Secrecy (PFS) protects connections between customers’ client systems and Microsoft cloud services by unique keys" - the last bit should be "...by using unique keys".

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

ID: 6327ed0b-21da-4c50-ea67-9699f6ceec08
Version Independent ID: fbfdb3f1-641a-6453-d4a0-e56472e71d75
Content: What is Azure Key Vault?
Content Source: articles/key-vault/general/basic-concepts.md
Service: key-vault
Sub-service: general
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@DavidKlempfner
Thanks for your feedback! We will investigate and update as appropriate.

@DavidKlempfner
Thanks for reporting this! We have created a PR for this issue and the changes should go live soon.


Added Unilogin provider + support for legacy paths

This PR adds support for Unilogin provider and fix a problem regarding Ledger using legacy derivation paths.

Travis automatic deployment:
https://pr719--safereact.review.gnosisdev.com/app

Travis automatic deployment:
https://pr719--safereact.review.gnosisdev.com/app

@matextrem anything else needed for this PR? tests by Franco, etc? Otherwise you can merge it

@matextrem anything else needed for this PR? tests by Franco, etc? Otherwise you can merge it

@francovenica should test it before merging.


[T4A6][T15-A2] Chankyu Oh

Ready for Review

Accepting this PR without a review because another of your PRs for this tutorial was reviewed in detail.


toxicity not working

python3 run_pplm.py -D toxicity --class_label 3 --cond_text "The food is aweful" --length 50 --gamma 1.0 --num_iterations 10 --num_samples 3 --stepsize 0.04 --kl_scale 0.04 --gm_scale 0.95 --sample

Traceback (most recent call last):
  File "run_pplm.py", line 794, in <module>
    run_pplm_example(**vars(args))
  File "run_pplm.py", line 621, in run_pplm_example
    pretrained_model = DISCRIMINATOR_MODELS_PARAMS[discrim]["pretrained_model"]
KeyError: 'toxicity'

We only made the pre-trained clickbait and sentiment discriminator models publicly available. If you're interested in the toxicity model, we can share privately. Alternative, the training script in the repository can be used to train one yourself in a few minutes.

I don't have a nvidia card - I have a 2017 imac pro. Is it feasible to train on this?
If so, how can I run the training script? I noticed in the script it makes a reference to datasets/toxic/toxic_train.txt but I don't have this folder setup or file

I think you might need a GPU to train, but should take less than 10-15 minutes. So, if you can use a cloud GPU instance or something for half an hour, that could work. If you cannot, let us know.. we will see if we can train/share a pre-trained discriminator.
You can get the dataset from https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge. You will need to wrangle to the dataset to the relevant format and also turn into into a binary classification problem (all types of "toxic" as one class, and normal text as the other).
The original code for the paper comes with a pre-trained classifier. However, the original code is not cleaned up --  if you can figure out how to run the original code for the paper, you can try using the discriminator there. Due to some minor changes in the hugging-face repo (the paper uses an older GPT-2 implementation), the discriminator from the old code (linked above) won't work well with the newer code (the one you are working with right now).

I appreciate your help and direction but I'm just beginning to learn about machine learning and haven't worked out how to train anything yet so unsure how to proceed with changing the format into a binary classification problem.
I downloaded the jigsaw-toxic-comment-classification-challenge data and have these files:
sample_submission.csv, test_labels.csv, test.csv, train.csv
but I'm flying in the dark so don't know how to use these files.
I am keen to try some other discriminators other than clickbait and sentiment. If I use:
--discrim_weights toxicity_classifierhead.pt
what file do I need to use for:
--discrim_meta
?


Creating an Advanced OMR Sheet Reader using Computer Vision

OMR (Optical Mark Recognition) is a technique used to capture human-marked data from documents like multiple-choice exams, surveys, and ballots. An OMR scanner identifies marks made by users (typically filled bubbles or boxes) on a printed form, and then processes that data. This project aims to build an OMR scanner and grader that can read and grade multiple-choice test forms including handling of multiple marked bubbles , Non-filled bubbles, Visualization of correct and incorrect answers and displaying the percentage of correct answers at the bottom of the OMR sheet. It also includes reading the answer key from a CSV file, easier to input large answer keys.

@Niketkumardheeryan Please review once if it can be added?

@Panchadip-128 please chetrepo projects if it exists try to improve otherwise you can add new projects

@Panchadip-128 please chetrepo projects if it exists try to improve otherwise you can add new projects

Check repo

@Niketkumardheeryan pls check i have corrected


CircleCI Fixes

This should fix circleci so we have a working build
Description
[Describe what this change achieves]
Issues Resolved
[List any existing issues this PR resolves]
Check List

[ ] All tests pass. See https://github.com/sous-chefs/apache2/blob/master/TESTING.md
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable

@damacus can we disable travis-ci on this one, I have no access to do it myself


current implementations don't allow for model construction on a subset of system time periods

many functions access the time dimension through sys.time_periods, while other functions take a time_period argument. Either way, these implementations don't enable problem definition over a subset of the time periods defined in the system struct. We will need to do this to create the simulations constructors. @jd-lara have you thought about this issue yet?

related to #22


sitk::Show with color image produces error

With ImageJ 1.46r on Redhat 7 linux I am seeing the following error when trying to show an RGB image:
In [10]: sitk.Show(sitk.LabelToRGB(sitk.SLIC(img, 20)), debugOn=True)
FindApplication search path: [ /opt/Fiji.app, /usr/local/Fiji.app ]
Result:
FindApplication search path: [ /opt/Fiji.app, /usr/local/Fiji.app ]
Result:
FindApplication search path: [ /opt/ImageJ, /usr/local/ImageJ ]
Result: /opt/ImageJ/imagej
Show command: '/opt/ImageJ/imagej' '-e' 'open("/tmp/TempFile-8140-3.nii"); rename("/tmp/TempFile-8140-3.nii"); ' '-e' 'run("Make Composite", "display=Composite");'
In [11]:
Image display and analysis program. Opens formats including:
UNC, Analyze, Dicom, NIFTI, Tiff, Jpeg, Gif, PNG ...
imagej [options] image [ image2 ... image3 ] -> open images
basic options:
-h        print help and more options
-o        open images in existing ImageJ panel if one exists
-p     open images in existing ImageJ panel number
-x    set available memory (default=16000 max=515800)
advanced options:
-c        enable plugin compilation within imagej
-d        use development version
-v        be verbose (vv or vvv increases verbosity)
options for batch processing:
-e 'Macro Code'            execute macro code
-r 'Menu Command'          run menu command
Quotation marks '' are required around commands including spaces
Commands can be sent to open ImageJ panels with the -p option
options for macros:
imagej [-i image] [-b|-m] [arg1 ... argN]
-b macro    run macro without graphics window
-m macro    run macro
"image" will be opened before macro is run
all following arguments are passed to macro
Documentation - http://rsb.info.nih.gov/ij/
Report problems with this software to
Only one command option (-b -e -m OR -r) may be specified
Having the macro over 2 arguments appears to be the problem. If the command is change to just one "-e" then it works:
os.environ["SITK_SHOW_COLOR_COMMAND"] =  "%a -e ' open("%f"); rename("%t"); run("Make Composite", "display=Composite");'"

@dave3d Any progress on this issue?

@blowekamp This issue was fixed with the following commit:
https://github.com/SimpleITK/SimpleITK/commit/f0359d14b0423c4263fce98d5c751ccc32391f64


VSC Jupiter report error When use From local py file import ClassA

Type: Bug
When I use "from AiDataParser import AgentState"
AiDataParser is one .py file which locate in the same folder with
Current .ipynb file.
Import "AiDataParser" could not be resolved PylancereportMissingImports
VS Code version: Code 1.76.1 (5e805b79fcb6ba4c2d23712967df89a089da575b, 2023-03-08T16:32:00.131Z)
OS version: Windows_NT x64 10.0.19044
Modes:
Sandboxed: Yes

/extPython

It looks like this is caused by the Python extension. Please file the issue to the Python extension repository. Make sure to check their issue reporting template and provide them relevant information such as the extension version you're using. See also our issue reporting guidelines for more information.
Happy Coding!


Refactor washboard to use the control interface

The wasmCloud dashboard currently does most of it's control operations (starting an actor, stopping an actor, defining a link, etc) by directly invoking the Host API. To support operations over a lattice, and for remote control operations, all current direct invocations of the host API should be refactored to control interface operations as soon as that API is stabilized

I see two options here

Support local invocations on the Host API when interacting with the host running alongside the dashboard (e.g. on my machine I launch the dashboard, which includes a host, and when I start an actor on that host we can invoke the Host API) and for all other hosts / lattice operations the control interface is used
Use the control interface for every operation, except for querying the cache as each host receives that information from Jetstream

There are pros and cons to both, the most notable con to support local invocations is that we have another branching code path to consider for each operation.
Here are the things that we currently use the HostCore API for functionality in the dashboard, that we will need to consider using the control interface for

Starting actors and providers
Scaling actors
Stopping actors and providers
Querying claims information to display things like actor name
Querying linkdefs information


Formatted Error Shows Raw HTML

Describe the bug
The error formatting is odd and is displaying what appears to be an icon that isn't properly interpolated.
This is the line that caused the error:
return (control.value > max) ? { maxDate: true  } | null;
The error is being caused by accidentally typing | instead of :, but the formatting of the error is strange.
I haven't seen any other instances like this and I've been using this extension for the past week.
Expected behavior
To show the styled error.
Original error
The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type.
Screenshots
If applicable, add screenshots to help explain your problem.

I got the exact same error and came to report it as well. Here's mine:
latinReleases.sort((a, b) => a["release-group"]["first-release-date"] - b["release-group"]["first-release-date"])

No syntax error (just a type coercion that Typescript doesn't like). Here's the output:

I'm on v0.3.0, with vscode 1.77.3

It was fixed in v0.4.0, take a look 🙂


MapToApiVersion attribute not working

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
the following code works fine when version 1.0 is specified but does not work when version 2.0 is specified in the request while using Microsoft.AspNetCore.Mvc.Versioning.ApiExplorer version 5.1.0 but requests with bother versions work fine with version 5.0.0. With 5.1.0 it throws unsupportedapiversion when v2.0 is specified in the request.
`using Microsoft.AspNetCore.Mvc;
namespace MyApi.Controllers.V1
{
[ApiController]
[ApiVersion("1.0", Deprecated = true)]
[ApiExplorerSettings(GroupName = "General")]
[Route("api/v{version:apiVersion}/[controller]/[action]")]
public class MyController : ControllerBase
{
[HttpGet]
[MapToApiVersion("1.0")]
[MapToApiVersion("2.0")]
public IActionResult GetV1()
{
// Handle both API versions 1.0 and 2.0
}
}
}`
Expected Behavior
should work when either of the versions (1.0 or 2.0) is specified in the request.
Steps To Reproduce
No response
Exceptions (if any)
unsupportedapiversion exception is thrown when v2.0 is specified in the request.
.NET Version
7.0
Anything else?
No response

Mapping an API version is different from declaring it. [MapToApiVersion] never declares an API version; it only maps it for the purposes of dispatch. There was an old bug that allowed routing to an API version what was mapped only. This was reported in #735 and the fix was first released in 5.1.
This is the correct behavior for 5.1.x. Starting in 6.0, when an API version is missed this way and you are versioning by URL segment, the client receives 404 instead of 400. The response is otherwise unchanged.
Finally, I should call out that 5.x is not officially supported for .NET 7. You should considering moving to the new Asp.Versioning.Mvc package. With the exception of the package name change, namespace change, and slightly different DI configuration, most things are largely the same. Most people have reported low friction in migrating.

This thread has gone idle. I presume you eventually got things working again. Relying on the way [MapToApiVersion] was working was wrong and that behavior will not come back. If you have more questions about how to achieve a particular behavior, I'm happy to answer them.


Validate an array which could also contain an array

I was wondering if I could validate an array which may also include an array. For example this is the structure I have:
{
    events: [{
        name,
        speakers: [{
            name
        }]
    }]
}

From the docs I have not been able to find any solution using Validate.JS unless I am missing something?
My idea would be to be able to do something like this or maybe this is already possible somehow?
{
    events: {
        presence: {
            message: 'Add a name of the event',
        },
        **fields**: {
            name: {
                presence: {
                    message: 'Add a name of the event',
                },
            },
            speakers: {
                name: {
                    presence: {
                        message: 'Add a name of the event',
                    },
                },
            }
        }
    }
}

Solved using: https://stackoverflow.com/questions/37034877/validate-js-validating-array-elements


Implement issuance and serialisation of certificates per Relaynet PKI

Per RS-002. The rate limiting extension is not within scope.
We essentially need to port the Certificate.issue() static method and the Certificate.serialize() instance method from the TS implementation, respectively. Doing the former is the bulk of this task -- the latter should be trivial.
We'll also need to have a function like generateRSAKeyPair() to generate RSA keys, otherwise you wouldn't be able to test the issuance of the certificates. The BC implementation should be a lot more succinct than the TS implementation though, something like:
    KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
    keyGen.initialize(modulus); // `modulus` should be >= 2048 and default to 2048
    KeyPair key = keyGen.generateKeyPair();

Note that Certificate.issue() shouldn't be be used directly by users of this library. Instead, this method will be wrapped by higher-level functions like issueGatewayCertificate(), which would simply proxy Certificate.issue() to set some fixed values. Those wrapper functions are outside the scope of this task.
By the way, the Certificate.issue() method in TS takes an optional serialNumber and generates a pseudo-random one when it's absent. I've been meaning to remove that parameter and always generate it, as I think that was an unnecessary premature optimisation on my part -- I think most people will never care to set it upfront. So the JVM implementation should ideally generate it automatically without allowing the caller to set it upfront.
Deserialising/parsing certificates is outside the scope of this task. See #10.

By the way, the Certificate.issue() method in TS takes an optional serialNumber and generates a pseudo-random one when it's absent. I've been meaning to remove that parameter and always generate it, as I think that was an unnecessary premature optimisation on my part -- I think most people will never care to set it upfront. So the JVM implementation should ideally generate it automatically without allowing the caller to set it upfront.

FYI, I updated the TS implementation to make the serialNumber autogenerated and it can't be overridden. So Certificate.issue() in relaynet-core-js is now functionally identical to what we need to do in this library -- Unless there's a bug I'm unable of.


TracingInstrumentation breaks Faro initialization.

Description
Hi Folks! I'm trying to initialize Faro within our NextJs based application and run into:
TypeError: Method Promise.prototype.then called on incompatible receiver [object Object]
    at ZoneAwarePromise.then (<anonymous>)
    at node:internal/per_context/primordials:440:35
    at new Promise (<anonymous>)
    at new SafePromise (node:internal/per_context/primordials:408:29)
    at node:internal/per_context/primordials:440:9
    at Array.map (<anonymous>)
    at arrayToSafePromiseIterable (node:internal/per_context/primordials:437:5)
    at node:internal/per_context/primordials:453:21
    at new Promise (<anonymous>)
    at primordials.SafePromiseAll (node:internal/per_context/primordials:452:3)
    at ESMLoader.import (node:internal/modules/esm/loader:530:30)
    at importModuleDynamically (node:internal/modules/cjs/loader:1098:29)
    at importModuleDynamicallyWrapper (node:internal/vm/module:438:21)
    at importModuleDynamically (node:vm:389:46)
    at importModuleDynamicallyCallback (node:internal/process/esm_loader:35:14)
    .....
    at Object.<anonymous> (...../.next/server/pages/_app.js:2584:3)
    at Module._compile (node:internal/modules/cjs/loader:1159:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
    at Module.load (node:internal/modules/cjs/loader:1037:32)
    at Module._load (node:internal/modules/cjs/loader:878:12)
    at Module.require (node:internal/modules/cjs/loader:1061:19)

import {
  ErrorsInstrumentation,
  WebVitalsInstrumentation,
  initializeFaro as coreInit,
} from '@grafana/faro-web-sdk';
import { TracingInstrumentation } from '@grafana/faro-web-tracing';

const initializeFaro = () => {
  const faro = coreInit({
    url: composeOTELCollectorString(),
    // apiKey: 'secret',
    app: {
      name:
        `some-trivial-app,
      version: '0.0.0',
      environment: process.env.NEXT_PUBLIC_ENV,
    },
    instrumentations: [
      new ErrorsInstrumentation(),
      new WebVitalsInstrumentation(),
      new TracingInstrumentation(),
    ],
    // transports: [new ConsoleTransport()],
    session: undefined,
  });

  return faro;
};

It works fine as long as we don't try to register TracingInstrumentation, which is a must have in our use case. Any ideas?
Steps to reproduce

Expected behavior

Actual behavior

Environment

SDK version:

"@opentelemetry/api": "^1.3.0",
"@opentelemetry/auto-instrumentations-node": "^0.35.0",
"@opentelemetry/auto-instrumentations-web": "^0.31.0",
"@opentelemetry/context-zone": "^1.8.0",
"@opentelemetry/sdk-node": "^0.34.0",
"@grafana/faro-core": "^1.0.0-beta4",
"@grafana/faro-web-sdk": "^1.0.0-beta4",
"@grafana/faro-web-tracing": "^1.0.0-beta5",
"next": "12.3.1"
...

with node version v18.12.1

SDK instrumentations:
Device type: PC
Device name:
OS: Ubuntu 2204
Browser: Chrome Stable channel

Demo

Context

Hello!
Can you please fill in the Environment and Steps to reproduce sections?
I just tried it out on the latest version of Next.js boilerplate (npx create-next-app@latest) and it works out fine in my case. I didn't add any customizations, just copy-pasted your code with the mention that I had to add a tick after  `some-trivial-app.
The code in the _app.tsx file:
import {
  ConsoleTransport,
  ErrorsInstrumentation,
  WebVitalsInstrumentation,
  initializeFaro as coreInit
} from '@grafana/faro-web-sdk';
import { TracingInstrumentation } from '@grafana/faro-web-tracing';

import '../styles/globals.css';
import type { AppProps } from 'next/app';

const initializeFaro = () => {
  const faro = coreInit({
    app: {
      name: `some-trivial-app`,
      version: '0.0.0',
      environment: process.env.NEXT_PUBLIC_ENV
    },
    instrumentations: [new ErrorsInstrumentation(), new WebVitalsInstrumentation(), new TracingInstrumentation()],
    transports: [new ConsoleTransport()],
    session: undefined
  });

  return faro;
};

initializeFaro();

export default function App({ Component, pageProps }: AppProps) {
  return <Component {...pageProps} />;
}

Hello!
Can you please fill in the Environment and Steps to reproduce sections?
I just tried it out on the latest version of Next.js boilerplate (npx create-next-app@latest) and it works out fine in my case. I didn't add any customizations, just copy-pasted your code with the mention that I had to add a tick after `some-trivial-app.
The code in the _app.tsx file:
import {
  ConsoleTransport,
  ErrorsInstrumentation,
  WebVitalsInstrumentation,
  initializeFaro as coreInit
} from '@grafana/faro-web-sdk';
import { TracingInstrumentation } from '@grafana/faro-web-tracing';

import '../styles/globals.css';
import type { AppProps } from 'next/app';

const initializeFaro = () => {
  const faro = coreInit({
    app: {
      name: `some-trivial-app`,
      version: '0.0.0',
      environment: process.env.NEXT_PUBLIC_ENV
    },
    instrumentations: [new ErrorsInstrumentation(), new WebVitalsInstrumentation(), new TracingInstrumentation()],
    transports: [new ConsoleTransport()],
    session: undefined
  });

  return faro;
};

initializeFaro();

export default function App({ Component, pageProps }: AppProps) {
  return <Component {...pageProps} />;
}

Thanks for the prompt reply and taking time reproduce the issue! The missing backquote is more like a typo and I'm still running into the same issue. I could try the latest NextJs version (v13) see if i can reproduce it later.

Hi, sorry for the delayed reply, I tried the latest nextjs boilerplate code and even though the errors occurred in a different way from what we ran into within our application, it's now reproduce-able:

Make sure node version is v18.12.1 by node --version (nvm should help on it).
Use npx create-next-app@latest to initialize the boilerplate with default values, such as a "test" application with TypeScript enabled.
Run npm i @grafana/faro-web-sdk @grafana/faro-core @grafana/faro-web-tracing to add Faro related dependencies
Update the _app.tsx to be like:

import '../styles/globals.css'
import type { AppProps } from 'next/app'
import {
  ConsoleTransport,
  ErrorsInstrumentation,
  WebVitalsInstrumentation,
  initializeFaro as coreInit,
} from '@grafana/faro-web-sdk';
import { TracingInstrumentation } from '@grafana/faro-web-tracing';

const initializeFaro = () => {
  const faro = coreInit({
    app: {
      name: `some-trivial-app`,
      version: '0.0.0',
      environment: 'dev',
    },
    instrumentations: [
      new ErrorsInstrumentation(),
      new WebVitalsInstrumentation(),
      // new TracingInstrumentation(),
    ],
    transports: [new ConsoleTransport()],
    session: undefined,
  });

  return faro;
};

initializeFaro();

export default function App({ Component, pageProps }: AppProps) {
  return <Component {...pageProps} />
}

Now if you run npm run dev, the local dev server should be able to spin up, which is kinda different from what we experience in our application (with nextjs v12)
But when you kill the dev server process and take a look at the console, the exact same errors should occur:

TypeError: Method Promise.prototype.then called on incompatible receiver [object Object]
    at ZoneAwarePromise.then (<anonymous>)
    at node:internal/per_context/primordials:440:35
    at new Promise (<anonymous>)
    at new SafePromise (node:internal/per_context/primordials:408:29)
    at node:internal/per_context/primordials:440:9
    at Array.map (<anonymous>)
    at arrayToSafePromiseIterable (node:internal/per_context/primordials:437:5)
    at node:internal/per_context/primordials:453:21
    at new Promise (<anonymous>)
    at primordials.SafePromiseAll (node:internal/per_context/primordials:452:3)
    at ESMLoader.import (node:internal/modules/esm/loader:530:30)
    at importModuleDynamically (node:internal/modules/cjs/loader:1098:29)
    at importModuleDynamicallyWrapper (node:internal/vm/module:438:21)
    at importModuleDynamically (node:vm:389:46)
    at importModuleDynamicallyCallback (node:internal/process/esm_loader:35:14)
    at Object.loadConfig [as default] (/home/user/Projects/playground/tracing/test/node_modules/next/dist/server/config.js:69:78)
    at async process.handleSessionStop (/home/user/Projects/playground/tracing/test/node_modules/next/dist/cli/next-dev.js:75:24)

Not sure if there is anything else I could provide here at the moment, but it would be really appreciated if you have some time help on this :smiley:

Update: searching across the web, the closet error report I have found so far is https://github.com/angular/angular/issues/47872 which seems to be related to Node version :thinking:

Since this is stale and we have moved on with other approaches, I'd like to close this. Thanks!


Blazor JS interop across module formats

@GeorgeS2019 asked on https://github.com/dotnet/AspNetCore.Docs/issues/19873#issuecomment-724340803 ...

@guardrex  Can we have Blazor JS Isolation examples using different module format?

The Asynchronous Module Definition (AMD) format
The CommonJS (CJS) format
The ES Module (ESM) format.
The System.register format
The Universal Module Definition (UMD) format

My general feeling is that we're pressed for time with the current workload well into 2021, and these approaches ...

Aren't really pivotal for coverage of Blazor concepts.
Exist in external doc sets.

Even if we took this on, I think it would have to be a new JS interop topic that shows how each module format can be used in a Blazor scenario with the same example in a SxS format.
I've marked this for triage so that management can consider it and decide if it should be taken on. Thanks for asking @GeorgeS2019.

@guardrex  As anyone who want to believe that Blazor will empower c# developer to do web development, we want Microsoft ASPNetCore team to provide a comprehensive solution that SHOW blazor JS Isolation is able to handle all possible JS Module format scenarios.
The JS Isolation solution is A very GOOD promising START.
The more we work on it, the more we realize, there are still questions that limit our abilities to implement JS Isolation
For example.  in the documentation,  it is important to state that the current Blazor JS Isolation is ONLY LIMITED to the following FORMAT. We are working with the community to get help to handle OTHER FORMATS. Your feedback is important so we will prioritize the typical use cases.
In my view, the typical use cases, are having NodeModues installed in wwwroot directory and we need Blazor JS Isolation to play nice with these NodeModules e.g. using CommonJS format module that involve "require" ==> which unfortunately does not WORK YET in current implementation of Blazor JS Isolation ( If I understand correctly, and I hope I am wrong about that).

@GeorgeS2019 I'm not sure I completely understand what you are asking.
There is no JS isolation support for anything other than importing ES modules, which is what the browser supports.
If you are asking for support for JS isolation in combination with other module formats, that's not really the goal of the JS isolation support that we currently ship. I would suggest you file an issue in the asp.net core repository instead if you want to see support for other module formats (whatever that means) so that it can be considered for an addition in a future release.

With that, I'm going to close this for action here.

@javiercn @guardrex
Thanks for clarifying that the Blazor JS Isolation adheres to the ESM module format.
=> Is that clearly documented in the official Blazor JS Isolation currently only the ESM format is supported right now.
=> By stating that, it helps the majority of JavaScript developers evaluating migrating projects to Blazor to plan more effectively.
=> How to span the CJS to ESM gap  => by taking this into consideration, it helps to convince these non Blazor developers that the team implementing JS Isolation has considered important use cases (e.g. Work in Progress in evaluating how to address the CJS to ESM gap). I believe, this will give more credibility to the Blazor vision - thinking ahead of needs for others joining the Blazor as the choice for web development.

Good idea @GeorgeS2019 ...

Is that clearly documented in the official Blazor JS Isolation currently only the ESM format is supported right now.

I can address that aspect with a quick one-liner at the tops of our two JS interop topics. I propose ...

JS interop supports [ES modules](https://developer.mozilla.org/docs/Web/JavaScript/Guide/Modules) for JS isolation. Other module formats aren't supported at this time.


[RFC] Disscussion for how to refactor DMatrix.

Hi, @RAMitchell , since we are all working on DMatrix related code, I want to be on the same page how should we proceed to avoid conflicting work.
Background
This PR is only a demo for how a histogram indices matrix is built.  Previously hist_utils.cc iterates on rows by calling GetRowBatches, which is complicated and memory demanding.  Here I created data/histogram.cc which contains 73 lines of code but is already capable of building a histogram indices (no consideration for weight groups).  And it consumes much less memory for sparse dataset since it understands number of rows for each column.  Also, I can further optimize it based on number of non-empty columns.  The key is by using GetColumnBatches (CSC instead of CSR) instead.
The problem
DMatrix converts everything into CSR, so calling GetColumnBatches is quite slow, also waste in memory.  I'm positive that once the barrier is removed, our initialization stage will be much more efficient in both memory and speed.  Can we discuss a plan for bridging between backend formats including libsvm, csv, csr, csc, dense and __cuda_array_interface__ to frontend outputs including histogram indices, csc, csr, sorted csc?

@thvasilo @CodingCat  @hcho3 @RAMitchell  Suggestions are welcomed.

Would love to review this next Monday, when I come back from vacation. Looking forward to it :)

Also, I glanced through quantiles histogram method, there is no need for getting row batches during update.  So the column matrix class can be removed, which should also result in a big speed up.   The essential part is how do we construct the DMatrix to suite algorithm's need.

This looks like a very clean interface, I like it a lot. What is your plan for avoiding calling GetColumnBatches?
One of the things I have struggled with in thinking about a DMatrix refactor is how to reuse these derived matrix types (such as a histogram matrix) across different parts of xgboost code without recreating them and without simply adding a method to DMatrix (column batches is an example of this). For example what if I want to make predictions using the histogram matrix without creating it from scratch.
Right now I am thinking of using a factory singleton. We give this singleton a pointer to the DMatrix and it lazily gives us the histogram matrix by looking up if it exists already in a map. All derived matrix types including column transformations and GPU matrix data structures would have their own singleton generator.
Each of these derived matrix types would need to implement their own methods for serialisation in order to provide external memory training.

Didn’t have time to check correctness, but I approve the proposed interface.

@hcho3 this is just a demo for the necessity of building different dmatrix for different algorithms.  The purpose of this PR is to show that for histogram method, CSC is better than CSR.  But I'm not sure about how to design the dmatrix with flexible underlying formats.

Will open a real PR once I have a concrete plan.


Update to Capacitor 5

@capacitor/preferences ^4.0.0 is now used but this does not work with capacitor 5 apps please update @capacitor/preferences to ^5.0.6

Fixed in release v1.3.0


Added release note for backup/protected timestamp bug fix

This is a quick fix to add a release note for the recent bug fix to protected timestamps & requests.

This change is


ScaNN support with_raw_data build option

issue #73
Test on SIFT1M and GLOVE1M dataset
with with_raw_data=True, get recall=0.9999/0.8613 for sift and glove dataset,
with with_raw_data=False, get recall=0.9692/0.5378 for sift and glove dataset.

/kind feature


⚠ gorzdrav.org has degraded performance

In 6a8c9ad, gorzdrav.org (https://gorzdrav.org) experienced degraded performance:

HTTP code: 200
Response time: 4586 ms

Resolved: gorzdrav.org performance has improved in 0109984.


angular 5.0.0 waring

I have upgrade my angualr version up to 5.0.0, that given me the waring below.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.

somebody tell is that ok?

SUGGEST: there is no need to peerDependencies add Angular related package. By default, it has been installed via Angular Cli.

hope ASAP release compatible Angular5 version.
i can hardly wait!!!

not compatible with v5 yet, will upgrade after cdk release.

我升级到angular5也发现这个了，但是不影响项目使用。不报错。只是警告


Global Navigation

[Draft Card]

"All Forms"
"Save Form?"
Breadcrumbs

PROPOSAL: Initial design proposed January 2023, iterated on February 2024

Added breadcrumb path (similar to FormsGC) to allow users to go back and forth between sections
logo will remain "Start" or could be the "Forms", open to this idea but it breaks the path
In the administration flow is separate path from the form builder. I propose we add "Forms" as a link under "Your account" in this instance

Designs are ready for implementation (open for any dev feedback). Moving to the Product Backlog until we're ready for implementation

Work has been merged into Staging. We'll close this card and create new issues for any bugs.


Feature request: keep unassigned contigs separate, rather than gluing them into 'Chr0'?

RaGOO looks wonderful!  But ... it assigns unmapped contigs to a pseudochromosome, Chr0.
Would it be possible to have an option to have RaGOO, instead of putting unmapped contigs into 'Chr0', keep them as unligated contig sequences?
It isn't hard to get around the Chr0 issue for DNA sequence alone (just split Chr0 on 'N' residues and voila, free contigs again!).  But hacking a lifted-over GFF is considerably harder if it lifts genes to Chr0 and one really wants free contigs instead.

Hi there,
Yes, I should definitely add this functionality. I will incorporate into the next version and will let you know when it is ready. Thanks for bringing it to my attention.

Thanks for your fast reply, and for providing this very useful program!

Hi there,
This feature has been added as a part of the upgrade to v1.1 here:
d6f68368addbff63b853915c00b881a46f96d35d
To write unplaced sequences individually instead of writing to chr0, please use -C. Please let me know if you spot any problems.
Thank you!


Binary search

See performance test codepen here: http://codepen.io/pwfisher/full/ozVAyr/
Compare with old code here: http://codepen.io/pwfisher/full/gwEVjw/
In this example, the elapsed time goes from 1400ms to 100ms.

🍻 🍻 🍻 🍻 🍻

'Ell yeah! 💪🙌


Allow specifying variables when queueing builds

We have a mandatory parameter in our build that is specified in the Web UI.
If I try to queue such a build from vsts, I get an error:
PS> vsts build queue --definition-name Build_Test --verbose -o json
'NoneType' object has no attribute 'message'

@lzybkr Thanks for reporting.  We should definitely add support for this.

I did debug some more and found the error has nothing to do with my request, I'll open another issue for that.

+1.
It would also be nice to get prompted if the build has mandatory variables with no default.

addressed in #109


Ability to use the same home folder as Chrome OS.

Hello, I'd like to have one home folder. Is it possible to configure Crouton to use Chrome OS' home folder, and not have a separate one inside the chroot? That way I can update dotfiles, etc, easily, in one place, and share files easily regardless if I am in chroot or ChromeOS.

On previous setups, I had dual boot with Window + Linux, or MacOS + Linux, and I would have one home folder for both OSes regardless which one I booted into, which was convenient; the same files are available no matter which OS is booted.

Never tried it myself, but does this help?
https://github.com/dnschneid/crouton/wiki/Sharing-files-and-folders

@darethehair That might be it. What would a command line example look like? So that if I touch ~/foobar while in crosh, then log into the chroot, I will be able to ls -l ~/foobar which would be the same file.

@trusktr, I have not tried this myself, but 'yes', that is the way I would expect that it would work i.e. shared directory between two systems.  I do something similar between Linux and Windows -- this should be even more straight-forward since crouton is just a 'chroot' of the real running ChromeOS.  Try it and let the rest of us know how it works out :)


Make sure every reference to oyvindsort is legendary

The legend must survive

LOL
It's nice, but it introduces two global variables and requires oyvindsort to be written in lowercase, so...

Wait for it...

Wait for it...

Wait for it...

Wait for it...

Whaat? :( This is not the end. I will be back >:(

This was an excellent suggestion by mr. @TheVaffel. Not sure why sure was rejected.. Please reopen.

While the suggestion was great it didn't justify the added complexity.


Refactoring from script based solution to OOP

The first goal is to release the PoC solution.
### Tasks
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/4
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/7
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/8
- [x] https://github.com/AbsaOSS/living-doc-generator/issues/17
- [x] https://github.com/AbsaOSS/living-doc-generator/issues/19
- [x] https://github.com/AbsaOSS/living-doc-generator/issues/21
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/9
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/10
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/11
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/23
- [ ] https://github.com/AbsaOSS/living-doc-generator/issues/13
- [x] https://github.com/AbsaOSS/living-doc-generator/issues/25
- [ ]  https://github.com/AbsaOSS/living-doc-generator/issues/12

Notes:

GH Token scope: Observed failures when trying to data mine data out of token scope. Unrelated repos from absa-group. This was not detected in the origin repository.
GH limit rate: Observed random data mining failures/instabilities during initial action development.

Closing as all Tasks solved.


[textanalytics] rename length/offset to grapheme_length and grapheme_offset

Resolves #9992
Models with length/offset rename:

SentenceSentiment
CategorizedEntity
PiiEntity
LinkedEntityMatch

Can one of the admins verify this patch?


update version check for config generate

Please provide a description of this PR:

In response to a cherrypick label: new pull request created: #36800


Chore reset all variables at start on set_and_unset_variable case

Proposed changes
reset all variables at start on set_and_unset_variable case
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall


[CD] Adds python docker image pipeline

Description
Extends the CD pipeline for publishing the python docker images
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[x] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[x] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[x] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at https://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[x] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

It feels like the wheel was reinvented a few times. Please use the existing mechanisms

Which mechanism should I be using?

The build.py or docker cache functions (the stuff we use to generate our docker cache). In the end, you're doing a similar job as the docker cache generation job, so you could adopt that

Sorry, I misunderstood you. I equated wheel with wheel file =P
But I don't necessarily agree with you. I don't think they are solving the same problem. My understanding of CI is that, as much as possible, we don't want to rebuild the images. This isn't so much of an issue here given the low level of complexity of the images, i.e. we just install python and copy over the wheel.
If you feel like you can refactor the stuff in build and cache to be more generic and not so tightly integrated with CI, I'm happy to use it.
What seems like an issue to me though, are the zombie containers. As a mid term solution, I'm trapping the SIGTERM and SIGINT signals and cleaning up the container - which is exactly what the python code does...

Sorry I'm not following. Both build docker images and then publish them. If you're bothered by the usage of catching, you can disable incremental builds in the function.
Sorry, but I don't really see much reason to go with a hack if we already got a working solution that you just have to integrate into. You were aware of the need to integrate your stuff with the existing code from the beginning when you decided you'd like to work off-branch, so this request shouldn't be a surprise.

The problem is the tight integration with the CI stuff. At some point we had something, it's from months ago and I don't have time to merge it with the current state of things.
Again, if you want to do it, I'm happy to hook up this stuff to whatever you come up with...

At the end of the day, I'm on my own time here and I don't have much of it. Are you doing to work with me to push this through, or should I close the PR?

Maybe you can find somebody else in the community who'd be able to assist you here. I'm just the reviewer here.

No worries. Understandood. In the future I would suggest being more flexible and working with the submitter to mitigate any issues as a follow up. Thus, fostering actual community building. Now, the community can spend time recreating this functional

Since I know of the priority shift and the allocated time budget for future work on this particular project, I don't believe that a follow up would have happened. The risk this PR contains weighs over its benefit. No doubt that this feature would have been quite helpful to MXNet, but we already went through a lot of trouble with regards to zombie containers and I consider the stability of the whole CI more important. I made sure to bring up this particular point (integrating the solution with the existing tools and interfaces) right from the inception of CD - if the time budget wasn't allocated properly to accommodate this, then it's a pity, but it's a hard requirement. As development of a feature is part of a project, integration is as well - but that's often forgotten. I consider a standalone solution (like the one presented here) a proof of concept and the necessary next step is thus to align it with the existing infrastructure. If there's no time for that, then it has to stop at the POC stage. I'm generally open towards incremental changes, but not when a PR brings a risk to the entire system.

I mitigated the risk in the PR. The integration could have been done in a follow up PR refactoring the functionality out of the scripts...as I said I've been working on this on my own time and would have continued to do so. But the consistent lack of flexibility and the constant trading of continuous improvement for delayed perfection makes this a hard project to contribute to. Wish you guys all the best!


Tax plugins require benchmark tests

What are you trying to achieve?
There should be benchmark tests which for performance of the tax plugins - we had issues with these in the past and such tests would allow to avoid them in the future.
Steps to reproduce the problem
There are no benchmark tests for tax plugins.
What did you expect to happen?
We should have benchmark tests for tax plugins - standard benchmarks like we have for other entities in Saleor.
Logs
No response
Environment
Saleor version: N/A
OS and version: N/A

Should we still do this given we're moving towards apps and we have a tax app?


Docs

Will there be Docs or plan for Docs?

Another user made these
https://stevenrafft.github.io/ZSharpDocs/#/hello-world


adding glavred plugin

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.e.sermyagin seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Update plugin.yml

I won't merge PRs like this without evidence or explanation of your testing on the higher API version.

I've encountered multiple errors when running on that api.


How's cut a rop with p2?

hello,guys.where's the example that cut a rop with p2? thanks

Thank you for your input. We'd really like to keep GitHub issues specifically for actual issues with the library. Therefor please ask coding support questions like this in the Phaser forum. If you prefer direct chat then you could use Slack or Discord. Or even Stack Overflow with the correct tag.


[Network] Certain ExpressRoute parameters should be marked read-only

Currenly only eTag is flagged as read-only in Swagger.  According to the ExpressRoutes team, the following fields are also read only:

[ ] MicrosoftPeeringConfig.legacyMode
[ ] MicrosoftPeeringConfig.advertisedCommunities
[ ] MicrosoftPeeringConfig.advertisedPublicPrefixState
[ ] ipv6PeeringConfig.state

Netwokr team is fixing their swagger file, first issue is to make readonly property as readonly. PR https://github.com/Azure/azure-rest-api-specs/pull/7488 . They plan to put all swagger fix in oct 2019 release. we're working with them on reviewing and fixing. close this issue.


Remove e2e test dependency on injection informers

This helps with testing upgrades when there are new CRDs (like EventPolicy)

/retest-required

/test upgrade-tests

/retest

/test upgrade-tests

/retest-required

/test upgrade-tests

/retest-required

/test reconciler-tests


Plain text when calling API

If I call the API ( nougat_api) to OCR a pdf and save it to a file and read it back , I see just a plain text, like
"and a (1\times 1) pointwise convolution 2(c).\n\nA standard convolutional layer takes as input a (D{F}\times D_{F}\times M) feature map (\mathbf{F}) and produces a (D_{F}\times D_{F}\times N) feature map (\mathbf{G}) where (D_{F}) is the spatial width and height of a square input feature map1, (M) is" ,_
which if I open it via the VS Code plugin I just see this plain text and no rendering of it. While if I do the same but this time via the nougat cli, then it is perfect and I can see the rendered formulas.
should I convert text to a specific format, which library ?

how do you save it?

after calling the API :
Path(output_file_name).write_text( response.text , encoding="utf-8")

try instead
Path(output_file_name).write_text( response.json() , encoding="utf-8")

It works now . Thanks a lot 👍


Moved documentation to the website repository, updated README

I moved all documentation, except the licenses document, on the website. I did a (heavy) modification to the README in consequence (adding 80 columns alignment and move all links below).
There is a 404 to fix though,  "user module" -> data/user/init.lua, I'm not sure about the current location of that file.
Fixes #233.
It seems there is some conflict to solve before merging. EDIT: due of #239 key binding documentation

I thinks this should be done in the master branch. I will help to resolve the conflicts. The file data/user/init.lua is no longer used.

I think they should be deleted on both branches to avoid people to use them, I added the new key binding in the website meanwhile.

Sorry if asking again but there is some problem to make work the website on Github, can you set me as maintainer on that repository settings?

Sorry, I just forgot about that! I am going to do this right now.

Please, check, you should have admin rights now.

Please do this PR in the master branch. The dev branch if for the coding and it will eventually get the change too when merging master into dev as we regularly do.

Please, check, you should have admin rights now.

Should be OK now, thanks, I have settings access, I need to look what the problem is since the branch set is correct.

I changed the target branch but maybe I should redo it instead?

I changed the target branch but maybe I should redo it instead?

You should rebase the modification you want to do on top of the master branch.

sorry but I'm bad at git with rebase, I did a git rebase --onto=master dev and solved a conflict because the badge I added on the readme in the dev branch. If that's correct how how to push, using force?

OK, I guess it is fine now, I also removed the reference to the user module in the README.

Thank you @redtide, that's a big step forward for lite-xl!

Well, the problem now is that the website is mostly empty! Do you think you can at least transfer the information we removed from the README ?

empty? https://lite-xl.github.io:

About -> Contributors
Documentation -> Usage / Build / Keymap

Oh, sorry, you are right, the content is available, I looked to quickly.
In fact I was talking about the main page, the entry point and it is mostly empty, just the screenshot and some things about the fact that the site was generated with Jekyll and written by redtide.
I expect to find in the main page some content that capture the attention of a people looking for information or just curious about lite-xl.
And the link to the release page is broken. And when you choose "Downloads" from the main site you have just an empty page with a broken link to the github release page.
On the other side this is quite fine for a starting point. I may work on the website now that it is there when I have some more time.

Being a work in progress there are still some TODO (mainly in build page) and the broken links are due because lite-xl is not yet transferred in the lite-xl organization: I made the links in a perspective for how I expected to be in future.
About the empty main page: is yet to decide how the site is structured, ATM the main page is where the news blog posts (as RSS/ ATOIM) are displayed, the post about the website is a "default" one I use as first news post when a website is created.


Extracted max size of request to tokens endpoint

Closes #828

Introduction of TOKEN_CACHE_SIZE_COUNT to limit the count of tokens requested to warm up our cache
Set the default value to 20,000
Adjusted tests

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

9 of 10 (90.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.0002%) to 88.603%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/config/tests/mod.rs
4
5
80.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0002%

Covered Lines:
11840

Relevant Lines:
13363

💛  - Coveralls


DropdownMenu doesn't display selected item when clearing the search text and unfocusing

Steps to reproduce

Open a DropdownMenu and select an entry
Clear the text in the DropdownMenu text field
Unocus the DropdownMenu
Set a breakpoint in the validation function and validate the DropdownMenu selection

Expected results
The DropdownMenu should display the item that is selected when the DropdownMenu text field has no text and loses focus.
Actual results
After clearing the search bar, the DropdownMenu gives the impression that no value is selected when in fact there is a selected value.
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      title: 'Flutter Demo',
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key});

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  final _formKey = GlobalKey<FormState>();
  static const List<String> animals = ["Cat", "Dog", "Raccoon", "Eagle"];

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Form(
              key: _formKey,
              child: FormField(
                validator: (value) {
                  if (value == null) {
                    return "ERROR";
                  }
                  return null;
                },
                builder: (state) {
                  return DropdownMenu<String>(
                    dropdownMenuEntries: animals
                        .map((animal) =>
                            DropdownMenuEntry(value: animal, label: animal))
                        .toList(),
                    enableFilter: true,
                    onSelected: (value) {
                      state.didChange(value);
                    },
                  );
                },
              ),
            ),
            TextButton(
              onPressed: () {
                _formKey.currentState!.validate();
              },
              child: const Text("Validate"),
            ),
          ],
        ),
      ),
    );
  }
}

Screenshots or Video
No response
Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.19.5, on macOS 14.4.1 23E224 darwin-arm64, locale en-CA)
    • Flutter version 3.19.5 on channel stable at /Users/andrew.moreno/Developer/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (5 weeks ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/andrew.moreno/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.14.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] VS Code (version 1.88.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.86.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 124.0.6367.92

[✓] Network resources
    • All expected network resources are available.

• No issues found!

So mabye the dropdown menu claborated with the d.f file so it gdlitched?

The DropdownMenu should display the item that is selected when the DropdownMenu text field has no text and loses focus.

@andrew-moreno You mean to say if I had selected cat, deleted it manually and unfocused from the field and then try to validate, it should show cat again ?
If so, do you know if the expected behavior matches with any native platform ?

@andrew-moreno hello i think you should try this.
To achieve the expected behavior, you need to make a couple of adjustments to your code:
1.Display the selected value when the DropdownMenu text field has no text and loses focus.
2.Set a breakpoint in the validation function and validate the DropdownMenu selection.
Here is the modified code hope it will help you
SAMPLE CODE:
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return const MaterialApp(
title: 'Flutter Demo',
home: MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({Key? key}) : super(key: key);
@override
State createState() => _MyHomePageState();
}
class _MyHomePageState extends State {
final _formKey = GlobalKey();
static const List animals = ["Cat", "Dog", "Raccoon", "Eagle"];
String? _selectedAnimal;
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Form(
key: _formKey,
child: FormField(
validator: (value) {
if (value == null || value.isEmpty) {
return "Please select an animal";
}
return null;
},
builder: (state) {
return DropdownButtonFormField(
value: _selectedAnimal,
items: animals
.map((animal) =>
DropdownMenuItem(value: animal, child: Text(animal)))
.toList(),
onChanged: (value) {
setState(() {
_selectedAnimal = value;
});
state.didChange(value);
},
onSaved: (value) {
_selectedAnimal = value;
},
validator: (value) {
if (value == null || value.isEmpty) {
return "Please select an animal";
}
return null;
},
decoration: InputDecoration(
labelText: "Select an animal",
border: OutlineInputBorder(),
),
);
},
),
),
TextButton(
onPressed: () {
_formKey.currentState!.validate();
// Set a breakpoint here to validate the DropdownMenu selection
},
child: const Text("Validate"),
),
],
),
),
);
}
}
Explanation of the provided code:
1.I replaced DropdownMenu with DropdownButtonFormField for a simpler and more standard dropdown implementation in Flutter.
2.I added a _selectedAnimal variable to keep track of the selected animal.
3.Modified the DropdownButtonFormField to use _selectedAnimal as the value and updated it when the selection changes.
4.Added validation for the dropdown to ensure an animal is selected before form submission.
5.Set a breakpoint in the validation function where indicated. This breakpoint will be triggered when you press the "Validate" button.


Ping behaviour on linux not documented (raw socket vs command)

Ping behaviour on linux not documented (raw socket vs command)
Using System.Net.NetworkInformation.Ping class on linux can either use raw sockets, or ping command line utility as fallback when the current user does not have enough privileges.
The code is here : https://github.com/dotnet/corefx/blob/master/src/System.Net.Ping/src/System/Net/NetworkInformation/Ping.Unix.cs#L154
The documentation does not mention this (I hope I didn't missed it) : https://docs.microsoft.com/fr-fr/dotnet/api/system.net.networkinformation.ping?view=netstandard-2.0
Personally I expected it to fail without being root. I was surprised by the behaviour, and searched the explanation in the source code.
Someone could argue it's just an implementation detail, but as it could lead to severe performance problem when used massively it's important to be clear. And as the command line could not be always available it could also lead to different behaviour according to the execution environment (eg: full system vs container).

Thanks for reporting this @samonzeweb I've added it to our backlog for the next sprint.

We haven't addressed this on the target sprint. Moving to our backlog until we can start on this one.


Docs QA updates

Overview
A few simple docs fixes and additions, including:

external tutorials section (kinda out of place)
readme for a useful landing page for visitors to github.com/pilosa/pilosa/docs
bunch of glossary fixes
formatting and link fixes

Pull request checklist

[ ] I have read the contributing guide.
[ ] I have agreed to the Contributor License Agreement.
[ ] I have updated the documentation.
[ ] I have resolved any merge conflicts.
[ ] I have included tests that cover my changes.
[ ] All new and existing tests pass.

Code review checklist
This is the checklist that the reviewer will follow while reviewing your pull request. You do not need to do anything with this checklist, but be aware of what the reviewer will be looking for.

[ ] Ensure that any changes to external docs have been included in this pull request.
[ ] If the changes require that minor/major versions need to be updated, tag the PR appropriately.
[ ] Ensure the new code is properly commented and follows Idiomatic Go.
[ ] Check that tests have been written and that they cover the new functionality.
[ ] Run tests and ensure they pass.
[ ] Build and run the code, performing any applicable integration testing.

Yeah, I've found a few broken external links using https://www.deadlinkchecker.com, I'll fix those.
I'm also working on checking internal anchor links, I don't expect many problems right now but as docs evolve I would like to be able to find problems easily.

This is mostly looking good, but could you see about changing all the internal links to include a slash at the end? That would avoid a redirect (giving us referrers in analytics and lower latency) and I think the anchors get wiped during the redirect.

All the latest changes are great!

@codysoyland I found and fixed a couple more small issues when I checked the mac/linux install sections. I'm done now, but I'll wait for you to look at those if you want