Create Github Codespace config for beginners

Privide a ready-make config for GitHub codespace, this could help beginners participate in ACT.

This can help them immediately start their work, like running a "hello world" of riscof
unified-db already has it: https://github.com/riscv-software-src/riscv-unified-db/issues/180
help people like me: https://github.com/riscv-non-isa/riscv-arch-test/issues/542#issuecomment-2472690151
help people like this: https://github.com/riscv-non-isa/riscv-arch-test/issues/293#issuecomment-1303906143

Some points that need to be considered:

sail-model currently has no pre-built files (I haven't found it yet) available for download, building it in codespace (default using 2c 8g) is not very fast

make -j$(nproc)  709.97s user 73.81s system 103% cpu 12:34.03 total

Considering the previous situation of running tests locally, the performance of codespace by default may not be sufficient? I haven't yet calculated how long it takes to run all the coverage.

here is the time taken to run basic RV64I: 39.21s user 1.63s system 9% cpu 7:00.56 totaltime riscof coverage --config=config.ini --suite=riscv-arch-test/riscv-test-suite/ --env=riscv-arch-test/riscv-test-suite/env \
  --cgf-file=./riscv-arch-test/coverage/dataset.cgf \
  --cgf-file=./riscv-arch-test/coverage/i/rv64i.cgf \
  --cgf-file=./riscv-arch-test/coverage/priv/rv64i_priv.cgf

riscv-gnu-toolchain (both rv64 and rv32) can be download from https://github.com/riscv-collab/riscv-gnu-toolchain/releases

Even if the performance is really insufficient, users can switch to local Docker for development, and VSCode has very good support for this, consistent with the Codespace experience. So I don't think performance is an big problem
Originally posted by @trdthg in https://github.com/riscv-non-isa/riscv-arch-test/issues/542#issuecomment-2472690151

sail-model currently has no pre-built files

I've asked this at the-golden-model metting 11/25. Carl said that He has been doing related work and I' not sure if this overlaps with it.
More details: https://lists.riscv.org/g/tech-golden-model/topic/target_operating_systems_for/109776300


proxy for Mailpit UI

Access to the mailpit UI on http://localhost:8080/q/mailpit
close #79

thanks <3


[nettle, shiftmedia-libgnutls] nettle update to 3.10, shiftmedia-libgnutls update to 3.8.4

update nettle to 3.10
update shiftmedia-libgnutls to 3.8.4

[x] Changes comply with the maintainer guide.
[x] SHA512s are updated for each updated download.
[x] The "supports" clause reflects platforms that may be fixed by this new version.
[x] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

Feature nettle[tools] passed on x64-windows.


Support Defaults in Tap config_jsonschema

Migrated from GitLab: https://gitlab.com/meltano/sdk/-/issues/35
Originally created by @kgpayne on 2021-03-12 13:45:07

For clarity, it would be great if I could specify defaults when declaring the config schema. Without this functionality, defaults are likely to be implemented using .get() defaults buried in individual Stream implementations:
self.config.get('batch_size', -1)

In stead, I would like to do the following:
config_jsonschema = PropertiesList(
        Property("host", StringType, required=True),
        Property("username", StringType, required=True),
        Property("password", StringType, required=True),
        Property("batch_size", IntegerType, default=-1),
    ).to_dict()

View 3 previous comments from the original issue on GitLab


doc: Add needed build programs and libraries.

As the build process is going to build libraries and executables it requires:

make
gcc
glibc development and static pieces.

thanks, lgtm


Implement contentStartTime prop to set the start time of a video on IOS

Feature Request
Add a new prop for iOS and Android to be able to set the start time a video opens at. I am open to doing the PR for this, but per the contribution guide I'm opening an issue first.
Why it is needed
Sometimes users may want to have a video start at a time other than 0:00. It's possible to manually run a .seek in the onLoad prop, but on Android in particular for bigger video files, there is noticeable lag in this starting.
Possible implementation
In my local project we used patch-package to make this work on android. In ReactExoplayerView.java in initializePlayerSource, the start time can be used if resumePosition is not present.
Logic to set the start time in getVideoTrackInfoFromManifest would likely be needed to initialize start time as well, something like
final long startTime = (this.startTime > 0 ? this.startTime : this.contentStartTime) * 1000 - 100; // s -> ms with 100ms offset
But I don't understand that section quite as well.
I haven't looked into the swift side yet and don't have as much knowledge there, but I believe in the setter that would be created, you could set pendingSeek and pendingSeekTime if startTime is passed in, then handleReadyToPlay would automatically seek to the correct time when the player is ready.
Code sample
After setting the startTime variable, snippet from our android patch-package:
@@ -624,11 +625,14 @@ class ReactExoplayerView extends FrameLayout implements
             }
         }

-        boolean haveResumePosition = resumeWindow != C.INDEX_UNSET;
-        if (haveResumePosition) {
+        boolean useStartTime = this.startTime > 0;
+        boolean useResumePosition = resumeWindow != C.INDEX_UNSET && resumePosition > 0;
+        if (useResumePosition) {
             player.seekTo(resumeWindow, resumePosition);
+        } else if (useStartTime) {
+            player.seekTo(this.startTime * 1000); // sec to ms
         }
-        player.prepare(mediaSource, !haveResumePosition, false);
+        player.prepare(mediaSource, !useResumePosition && !useStartTime, false);
         playerNeedsSource = false;

For iOS, I haven't done much native work but something like this may work
@objc
func setStartTime(_ startTime:Float) {
if startTime > 0 {
_pendingSeek = true
_pendingSeekTime = startTime
}
}

@freeboub What do you think?

I think this is already implemented on android and this feature is welcome on ios (contentStartTime):
contentStartTime
Let's tag this issue as feature request.

I think this is already implemented on android and this feature is welcome on ios (contentStartTime): contentStartTime
Let's tag this issue as feature request.

So, based on the docs I thought that was meant to be something like what time the actual content of the video starts, and before that it was ads the video plays to set the resolution properly only at that time.

The start time in ms for SSAI content. This determines at what time to load the video info like resolutions. Use this only when you have SSAI stream where ads resolution is not the same as content resolution.

If I misunderstood and it is meant to set the time to start the video, then I believe it's not working on Android because when I used that prop, the video starts at the usual time.

Heum, you are right.
I don't think this 'contentStartTime' is a good feature then ....
I can implement it next week for android, but I need help to support ios :/

@freeboub any update on this? i also need similar feature; ability to start a video from given position.

contentStartTime is not working ? is there anyway i can set the video start time dynamically ? i have implemented slider so user can rewind and forward the video.

@freeboub do you have any update on this? facing the same issue while trying to start a video from a given position

@freeboub do you have any update on this? facing the same issue while trying to start a video from a given position

@dianamelga  Got any solution?

I can confirm the proposed change works fine, but unfortunately I don't have time to backport it here.
There is maybe a small limitation linked to ghost image when launching the stream.

Will beta available on 6.0.0-beta.1


When browsing remember last directory used.

When you use Remote Edit: Browse and select a host it brings you to the default directory.
It would be nice to remember the last past that was used instead of having to go navigate back to the path just to open a file in the same folder you were just in.

There is a remember last directory check box in the settings for remote-edit package. Open settings, go to packages, select remote edit and scroll down a bit to find.


postinstall script throws error for pnpm on Windows 11

Issue and Steps to Reproduce
When I run pnpm i in a project where I have the lib added to dependencies it throws an error on Windows 11. With NPM it's okay.
Versions
6.11.1
Screenshots

Okay, the problem is with pnpm, because Running npm i or yarn works fine. Error only comes up for pnpm.

Hi @noherczeg ,
Thank you very much for your issue, it will help to make this library better.
I didn't know about pnpm.
I will fix it as soon as i can (i'am in holiday)

Hi @noherczeg ,
Thank you very much for your issue, it will help to make this library better.
I didn't know about pnpm.
I will fix it as soon as i can (i'am in holiday)

Hi,
No worries, as I mentioned, it seems to be a problem with Windows + IDEA combination only. The postinstall script runs fine with NPM and Yarn as well.

@guillaume-chervet Can you make the postinstall step optional?

I pushed this: https://github.com/AxaGuilDEv/react-oidc/commit/4719babcda1f5125e757c8887c22c91f0a898d69
I hope this will work with pnpm

I will keep itnopzn util it work with pnpm

I tested this lib with pnpm and Windows 11. Not sure what you meant, but ok :)

Hi @noherczeg , very sorry for the delay.
We are using now pnpm internally. Now service worker copy is manual and also work with pnpm.
I close the issue but feel free to reopen it if needed.


Make sure enabled services return no results gracefully

It appears if someone has a service enabled, but, no API key it will error out when trying to view indicator details. Need to also make sure if the service is enabled and API is provided, that no results show as "No results found"

I've added a check into my development branch to only enable a service if the API field is also configured.
https://github.com/alxhrck/threat_note/commit/bbc30029cf9be6bfd0352ab6ed3da66c0ddfbb4f

This can be closed. Services must be enabled and API (configuration) fields must be filled.


(=..)/2 segfault

v2.31.39
?- Y =.. [x,[_|Y]].
Segmentation fault (core dumped)

Was actually a top-level bug displaying results.
On Mon, Dec 18, 2023 at 11:26 AM flexoron @.***> wrote:

v2.31.39
?- Y =.. [x,[_|Y]].
Segmentation fault (core dumped)
—
Reply to this email directly, view it on GitHub
https://github.com/trealla-prolog/trealla/issues/440, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFNKSEXD6GWP6ZJPWZOUUGDYJ6LTDAVCNFSM6AAAAABAYYW2H2VHI2DSMVQWIX3LMV43ASLTON2WKOZSGA2DKNJQGM3TSOA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Ok...Thank you.
I was looking at (=)/2,too which didn't crash.
?- Y = [x,[_|Y]].
   Y = [x,[_,x,[_|Y]]].


Issue 2793 - Remove duplication between IngestJobRunnerIT and IngestCoordinatorCommonIT

Make sure you have checked all steps below.
Issue

[ ] My PR addresses the following issues and references them in the PR title. For example, "Issue 1234 - My Sleeper
PR"

Resolves https://github.com/gchq/sleeper/issues/2793

Tests

[ ] My PR adds the following tests OR does not need testing for this extremely good reason:

MyUnitTest

Documentation

[ ] In case of new functionality, my PR adds documentation that describes how to use it, or I have linked to a
separate issue for that below.
[ ] If I have added, removed, or updated any external dependencies used in the project, I have updated the
NOTICES file to reflect this.

Reopening against a new issue, covering changes to IngestJobRunnerIT separately:

https://github.com/gchq/sleeper/issues/2811


Azure Web App - bower install does not work anymore

Running the bower install command from the deployment script and/or from ASP.NET Core PrepublishScript target will result in an error because Azure Web App service have old bower installed.
Repro steps.
Deploy ASP.NET Core website which uses the old bower install in the PrepublishScript target:
  <Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
    <Exec Command="npm install" />
    <Exec Command="bower install" />
    <Exec Command="gulp copy" />
  </Target>

Project structure
github repository
The log/error given by the failure.
Running the command manually results in this error:
D:\local\repository\src>bower --version
1.7.9

D:\local\repository\src>bower install
bower bootswatch-dist#3.3.6-paper          EINVRES Request to https://bower.herokuapp.com/packages/bootswatch-dist failed with 502

Opening this URL in browser leads to this error message: This Bower version is deprecated. Please update it: npm install -g bower. The new registry address is https://registry.bower.io
Mention any other details that might be useful.
It's hard to override the preinstalled bower using npm install -g bower because the old bower sits in Program Files.

Not working for me either

@ahmelsayed  what is the logistic to get new bower on the Azure App Services?

It's part of rapidupdate. Basically deploying bower's npm package through rapidupdate

Hi
If the problem persists and is related to running it on Azure App Service, please open a support incident in Azure:
https://learn.microsoft.com/en-us/azure/azure-portal/supportability/how-to-create-azure-support-request
This way we can better track and assist you on this case
Thanks,
Joaquin Vano
Azure App Service


Documentation

Stumbled across this project whilst researching existing bytecode VMs implemented in Rust. Looks super interesting and I would like to take it for a spin and build a minimal scripting language.
Only problem is, there's zero documentation (besides reference implementations such as Hugorm, Atto and Mini). Are there any plans to write some decent documentation, even if it's just for the structs and methods themselves, instead of how to implement them.
I don't mind source diving, but things would be a tad easier with docs.
Appreciate the work either way, keep it up!

@ryangjchandler I can't speak for @nilq, but having used this project I'd say that it's very much still in early development.


nidm folder number should be incremented

if nidm_0001 exists then should create nidm_0002...

nidm folder is now generated from the study folder name.


Enum for the new element "category" introduced

Enum for the new element "category" declared, according to https://forum.netatmo.com/viewtopic.php?f=5&t=18506

Small warning : enums in json-schema are closed. Meaning if a value arrives that is not in the enum (eg. a new value) then it will not pass the validation.


Implements experimental diff with optimized moves calculation to produce only minimal required moves

Changes in this pull request
Previously diff calculation resulted in redundant list of moves, for example diff for the following array pair:
[ 0, 1, 2, 3, 4, 5 ]
[ 5, 0, 1, 2, 3, 4 ]
produced moves:
5-0, 0-1, 1-2, 2-3, 3-4, 4-5
while the only required move was 5-0.
This leads to inefficient updates both by computation and memory consumption.
This may also cause crashes in UICollactionView or UITableView batch updates.
Checklist

[x] All tests pass. Demo project builds and runs.
[x] I added tests and an experiment.
[x] I added an entry to the CHANGELOG.md for the enhancement.
[x] I have reviewed the contributing guide

This is pretty incredible! Really excited to test this out. Before I dive too deep on the technical details, I'd love to first this this setup so that we can run an A/B test on it to measure performance gains (or losses) in Instagram.

Add an entry to the experiments options
In the diffing algo, check the mask for this experimental feature

If exists, do these move calculations
Otherwise, fallback to previous versions

I know its a little more work, but it'll give us evidence to how much memory and compute time this was taking. Not to mention giving us an escape hatch if something goes wrong.

Amazing 💚

@rnystrom Here you go. It was quite a challenge to achieve this with a reasonable design, as I have very little experience with C++, so any suggestions for improvements are welcome.

@tarbayev awesome!! I’m sorry I let this slip too, on my queue
Sent with GitHawk

@tarbayev @rnystrom  Is there any update?

@tarbayev Can you rebase again onto the latest master? I am having issue importing this PR, thanks!

@tarbayev Hi Nickolay! Sorry for the delay

@TimOliver Hi Tim,
At some point I decided to make a Swift version of the algorithm, which I called OptiDiff) and also improved and simplified it quite a lot. Hence I don't want to spend any more time on this PR, but you're free to merge it as well as make a C++ implementation of the OptiDiff if you like.

Yanlış yere daldın yüzme bilmiyorsun 😰
iPhone’umdan gönderildi
Nickolay Tarbayev @.***> şunları yazdı (8 May 2023 11:59):

@TimOliverhttps://github.com/TimOliver Hi Tim,
At some point I decided to make a Swift version of the algorithm, which I called OptiDiffhttps://github.com/tarbayev/OptiDiff) and also improved and simplified it quite a lot. Hence I don't want to spend any more time on this PR, but you're free to merge it as well as make a C++ implementation of the OptiDiff if you like.
—
Reply to this email directly, view it on GitHubhttps://github.com/Instagram/IGListKit/pull/1139#issuecomment-1538009444, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A7KYAEH3PDJKKBARRFRSWNTXFCYVHANCNFSM4EXVAFRQ.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Any progress?

I'm not really sure yet how to work this but I'm looking to check for profiles on insta and tiktok


[New Feature]: Introduce a way to run bal tools with the package build

Description
Ballerina platform has several tools that generate source code. E.g bal openapi, bal grpc, bal graphql, etc.
Generates clients and/or services for a given IDL (single source of truth). Developers use these tools to generate code and make the generated code a part of the package source code.
Goals
We need to design a way to configure the package build to generate code using these tools automatically while maintaining the existing ability to generate code manually. There can also be situations, where the developer wants to manually generate and make the generated code part of the package source.
Describe your problem(s)
No response
Describe your solution(s)
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

Closing since this is being tracked with #41415


Need Wait-RSJob function

In order to fall in line with the *-Job cmdlets and to have a way to monitor for when a job completes, a Wait-RSJob function needs to be implemented.

This has been fixed in the <IP_ADDRESS> release. Thanks, @bushe


Feat: Manual testing of My Partners feature

What is your issue related to ?

[ ] Code
[ ] Designing
[x] Documentation
[x] Testing/Research
[ ] Others[please specify]

Description
Download the apk[release version] and test all different scenarios for the My Partners feature.
An md file with all the test scenarios you covered. Positive and negative test cases as expected. Each test scenario should be documented as below:
## **TEST-1**

#### DESCRIPTION

#### SCREENSHOTS

#### EXPECTED RESULT

#### ACTUAL RESULT

## **TEST-2**
...

Additional context
Add you markdown(md) file in Testing folder
If you see issues or unexpected behaviour during testing feel free to open an issue

I'd like to work on this issue under LGMSOC'21 label.

Okay,  assigning this issue to you @PadminiRai

@nidhisingh-1 could you please assign this issue under the label :  LGMSOC'21

@PadminiRai Update

@SHITIZ-AGGARWAL am searching for different parameters that can be tested and compiling the pointers together

@nidhisingh-1 @SHITIZ-AGGARWAL Also is it ok if I share a few pointer for other features like opening page and warnings along with My Partners feature.

@PadminiRai issues have been created for other pages of the application also. Some are still active and some have been closed. If you don't find an issue in either category, feel free to create one and we'll assign the same to you.

And if you're on the brim about anything, feel free to share it with us first before opening an issue. Thanks!

Can someone help me with workflow of the feature . To find a partner it asks to create a post.  Where will that post appear? also no possible matches appeared for the activity described in the post .

@PadminiRai so first of all when you create a post, you make yourself available in that particular category. What you can do is use 2-3 ids of your own to match. When you click on Find partners, it first takes you to your created posts, and on clicking on any of the posts, you can find the possible matches.

I hope this makes it somewhat clear to you. Else ping us and join the voice channel, and any one of us will explain the same to you in detail.

@yatharthmago01 Got it , I'm on it . Thanks for the insight.

I created accounts using two ids and found out that the posts created from both accounts in badminton category do not appear anywhere and no possible matches are suggested. Should  I add it in my review of the feature.

It's not a bug, I just checked you have entered different states, for both accounts, UP for one and Goa for another, the app matches people having same state, category and age difference of 5 years taking care of their gender preference. Since the edit profile feature has to be implemented, you can either create a different account with same state or I can change your state directy from the Firebase console, whichever suits you.

Thanks @Acash512. I've created a new account but if you could change the state from Goa to UP I'll be able to test the feature with 3 ids.

Done, I have changed yor state to Uttar Pradesh and year of birth to 2001 for that id.

@Acash512 @SHITIZ-AGGARWAL @nidhisingh-1 @yatharthmago01
Thanks for sharing the insights . I've create the PR : https://github.com/Code-Sauce-Official/FitMate/pull/60


ENH: Use new DerivativesDataSink from NiWorkflows 1.2.0

This PR integrates the new API that will be released with 1.2.0.
References: nipreps/niworkflows#507

Codecov Report

Merging #183 into master will decrease coverage by 46.20%.
The diff coverage is 6.00%.

@@             Coverage Diff             @@
##           master     #183       +/-   ##
===========================================
- Coverage   71.72%   25.52%   -46.21%
===========================================
  Files          15       15
  Lines         955      995       +40
  Branches      134      135        +1
===========================================
- Hits          685      254      -431
- Misses        224      731      +507
+ Partials       46       10       -36

Flag
Coverage Δ

#ds005
?

#ds054
?

Impacted Files
Coverage Δ

smriprep/workflows/base.py
29.50% <ø> (-50.82%)
:arrow_down:

smriprep/workflows/anatomical.py
16.32% <4.54%> (-51.27%)
:arrow_down:

smriprep/workflows/outputs.py
15.23% <16.66%> (-55.92%)
:arrow_down:

smriprep/cli/run.py
2.85% <0.00%> (-74.77%)
:arrow_down:

smriprep/workflows/norm.py
30.76% <0.00%> (-69.24%)
:arrow_down:

smriprep/__main__.py
16.66% <0.00%> (-66.67%)
:arrow_down:

smriprep/workflows/surfaces.py
14.44% <0.00%> (-64.45%)
:arrow_down:

smriprep/interfaces/freesurfer.py
19.69% <0.00%> (-40.91%)
:arrow_down:

... and 3 more

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 07e19f1...d70010f. Read the comment docs.

Locally checking the correct indexing of probseg and dseg results, w/wo FreeSurfer. Once that is done, this is all yours, @mgxd.


Advanced path from env generation

Currently, only the children output files will get the PID.
However if using this tool to analyze MPI applications, it is
possible that multiple processes not related with parent-child
relations are running on the same host.
The other option would be to do a printf-like thing
HEAPPROFILE=/tmp/profile-%p
where %p portion would be replaced with the PID.
However, having the PID in the file name is always a good idea IMO.
Signed-off-by: Artem Y. Polyakov<EMAIL_ADDRESS>

@googlebot I signed it!

Apologies for delay. I guess I am finally okay with just doing this. Wasn't sure if changing behavior is fine or not. But I have a comment about change itself.
So now that we always do pid thing, doesn't look like we need "or bit 7" trick anymore. Can you please clean up this part? (Or did I misundertand something)

Yes, I don't think we need the extra bit trick anymore. Let me have a look. I assume we need to avoid parents setting it. So it'll be in a different place.

Can you please clean up this part? (Or did I misundertand something)

Done cleaning up and updating the PR.

Eh. I am very very sorry. Looking at this once more I cannot agree with "always append pid" approach. For most people and me too, main workload with cpu profiler is something like:
$ CPUPROFILE=out ./myprogram
$ pprof --web ./myprogram out
'''

Forcing pid in all file names there will be super-annoying. I cannot agree to that.

I am truly sorry for saying yes to this and making you do the rebase thingy. Perhaps the idea with %p in file name is workable one. It will also let us deal with high bit thingy in better and cleaner way. Alternative is to look at extra variables like CPUPROFILE_USE_PID to signal that we need pids appended.

Please excuse me. And do let me know if you want to work on this larger change or not. In later case I am happy to make up for the trouble and author right change myself.

Forcing pid in all file names there will be super-annoying. I cannot agree to that.

It's ok I understand.

Please excuse me. And do let me know if you want to work on this larger change or not. In later case I am happy to make up for the trouble and author right change myself.
NP

Alternative is to look at extra variables like CPUPROFILE_USE_PID to signal that we need pids appended.

This seems like the easiest way to do as long as you don't envision more items to be added to the filename. So I can implement that.
In addition to that I'd propose to add the code that can detect HPC environments and adaptively do useful stuff there. For example

Open MPI has OMPI_x, Slurm resource manager would have SLURM_x environment variables. MPICH is likely to have something similar (but need to check). We can use this as a sign that you are likely to want to have PID.
In addition, if MPI is using PMIx (https://github.com/openpmix/openpmix) which is de-facto standard for Open MPI and is supported by MPICH, we can actually append MPI rank (instead of PID) to the output file name which will be even more convenient.
Let me know if those options are interesting for you.

Sure. Having common mpi environments autodetected seems okay. Go ahead.

@alk I've pushed the non-tested code to this PR. It builds but I've not checked it at runtime.
Could you give it a look and let me know if that works conceptually?

Conceptually looks fine. I recommend adding more comments about motivation for detecting HPC environment (basically, what you wrote above likelyhood of same machine running multiple replicas of same program). If you don't mind, also consider adding comments on the high bit trick (why etc).

LGTM. Lets get this in. Yes, please, squash and I'll merge.

Squashed ... note that I haven't tested it with OMPI & Slurm yet

Noted. You want to test it first? Or we assume if it doesn't work you/someone will fix it later ?

I plan to do release in about week or so. So you don't need to rush.

If you ok testing the common cases yourself and if they work I'll take care of testing the HPC case sometime later (in a week timeframe) and file a fix if it doesn't work.

Yes I am fine testing basic case myself. So I still see 2 commits being proposed here. You still plan to squash them together? (I'd prefer that for sure)

So I still see 2 commits being proposed here. You still plan to squash them together? (I'd prefer that for sure)

Fixed!

@alk please review.
along the way, I realized that MPI processes in rare cases may do fork so we want to keep adding PID in addition to HPC Rank in this case.

Unit tests is passing

tests are failing. For example heap-profiler_unittest
For the new file copyright year is not 2005 is not google. See for example safe_strerror.cc how it can be done. Also you sure that unique path test requires linking to tcmalloc_minimal ? Try minimal thing; only sysinfo and nothing else.
Why do you do fancy ptr and len thingy for AppendHPCEnvironment? It is always appending to empty PATH_MAX sized string. Why bother will all the extra logic? Also if you choose to keep append{Ptr,Len} then do make sure to keep naming style consistent.

tests are failing. For example heap-profiler_unittest

Ok, I'll take a look. I was referring to my new test, haven't tried existing.

For the new file copyright year is not 2005 is not google. See for example safe_strerror.cc how it can be done.

Ok

Also you sure that unique path test requires linking to tcmalloc_minimal ? Try minimal thing; only sysinfo and nothing else.

Ok, will try that

Why do you do fancy ptr and len thingy for AppendHPCEnvironment? It is always appending to empty PATH_MAX sized string. Why bother will all the extra logic?

It is not appending to the empty prefix always. At least this is not the case for the PID suffix. PID suffix may be on its own but also appended to the PMIX or Slurm suffixes already present.

Also if you choose to keep append{Ptr,Len} then do make sure to keep naming style consistent.

Ok

Also you sure that unique path test requires linking to tcmalloc_minimal ? Try minimal thing; only sysinfo and nothing else.

I wasn't sure about how to link with the whole LD_PRELOAD-able library. I can try adding only "sysinfo", but assumed it might have dependencies either now or in the future that would introduce additional maintenance hassle later.
IMO it's a good practice to link the test to the whole library. In this case, you always have all dependencies correct

For me the heap profiler is passing:
$ git log -1 && ./heap-profiler_unittest
commit bd6a6ea2be62e6a456fd4d83c4b18cf30ced353a (HEAD -> topic/fix_outfile_v2, origin/topic/fix_outfile)
Author: Artem Polyakov<EMAIL_ADDRESS>Date:   Thu Jul 13 17:43:29 2023 -0700

    Add unit test for GetUniquePathFromEnv()

    Signed-off-by: Artem Polyakov<EMAIL_ADDRESS>Starting tracking the heap
Starting tracking the heap
DONE.

Am I looking at the wrong place? Should I run it in some special way?

Also if you choose to keep append{Ptr,Len} then do make sure to keep naming style consistent.

Will AppendPtr() and AppendLen() be consistent with the naming style?

Ok, I guess I was able to reproduce
$ ./heap-profiler_unittest.sh
Profile not found: /tmp/heap-profiler_unittest.beLeuR/test_*.1329.heap

Fixing now

Tests should be passing now.
$ ./heap-profiler_debug_unittest.sh && ./heap-profiler_unittest.sh
PASS
PASS

I also fixed the naming of the functions per below:

Will AppendPtr() and AppendLen() be consistent with the naming style?

@alk

I've fixed the file header to be "Copyright (c) 2023, gperftools Contributors"
I tried building just sysinfo.cc into the test but was getting some errors at the 'autogen.sh' running stage (see below). What I did is I removed deps from tcmalloc and simply put "sysinfo.cc" to the _SORCES variable in Makefile.am.

$ ./autogen.sh
Makefile.am: error: object 'src/base/sysinfo.$(OBJEXT)' created both with libtool and without
autoreconf: automake failed with exit status: 1

Thanks for update. Several more questions. (Some I can fix myself but this is never ideal if I have to amend people's work)

I see that you added makefile reference to unique_path_unittest.vcxproj but there is no such file. It is not great that we're not testing this on windows, but is better than breaking make dist command.
CheckPIDIsForced should be static
using PATH_MAX-sized buffer for environment name string is mildly confusing. Breaks principle of least surprise. I am not sure how to size this one but PATH_MAX we should probably avoid.
Slurm's docs mention that SLURM_JOBID is deprecated. Also can you clarify why we need this approach "if jobid is there but not procid then we force pid" ?
For testing checking XYZ_USE_PID thing, please use EnvToBool
and most general, this is adding a lot of abstractions. Most used exactly once. And many of them are just giving names to obvious things and result is big diff with logic spread quite thinly. I understand it is matter of taste, but we don't do that kind of style in gperftools. Bigger offenders here are stuff like PID_SUFFIX but those numerous functions are questionable as well.
I think general logic can be simplified with hpc detection bits (which don't need to be own function) set up something like mpi_sep and mpi_val. And then you format it all at once something like this:

  if (append_pid) {
    snprintf(path, PATH_MAX, "%s%s%s_%d", envval, mpi_sep, mpi_val, getpid());
  } else {
    snprintf(path, PATH_MAX, "%s%s%s", envval, mpi_sep, mpi_val);
  }

which saves all the trouble with AppendXYZ stuff (and confusion inspiring O(N^2) behaviors; yes, I might by only one irked by this and this code isn't exactly speed critical but still)

Ah and yes, fine to leave makefile bits to me. Dependency on libtcmalloc is unfortunate and fixable, but several other unit tests are in same shape. So I'll be fixing that separately. And I can't be asking people to learn autotools bits.

I see you closed it. What are the next steps? From responses it seems you were asking for further fixes, but in this case it should not be closed right?

Oh. I apologize. Had no intention to close. Must have hit by mistake. Yes, if you could adjust further I'd be thankful.

I will fix as requested

@alk, I did a pass to address the comments. Please see below

I see that you added makefile reference to unique_path_unittest.vcxproj but there is no such file. It is not great that we're not testing this on windows, but is better than breaking make dist command.

Fixed - I've removed that item from the Makefile.am as I'm not sure how to properly generate it.

CheckPIDIsForced should be static

N/A - I've got rid of this function per one of the requests below

using PATH_MAX-sized buffer for environment name string is mildly confusing. Breaks principle of least surprise. I am not sure how to size this one but PATH_MAX we should probably avoid.

Not sure what's the best way to handle it.
I've introduced the following macro's in the sysinfo.h:
#define TC_ENV_MAX_NAME 256

that defines the max expected variable name.

Slurm's docs mention that SLURM_JOBID is deprecated. Also can you clarify why we need this approach "if jobid is there but not procid then we force pid" ?

Good catch, fixed

For testing checking XYZ_USE_PID thing, please use EnvToBool

Fixed

and most general, this is adding a lot of abstractions. Most used exactly once. And many of them are just giving names to obvious things and result is big diff with logic spread quite thinly. I understand it is matter of taste, but we don't do that kind of style in gperftools. Bigger offenders here are stuff like PID_SUFFIX but those numerous functions are questionable as well.

Indeed, this is very subjective. I tried to address, but I'm not sure I am able to guess what you would prefer:

I turned Child bit manipulation into macro's
I've merged CheckPIDIsForced() into GetUniquePathFromEnv()
As of now, only 1 new function (QueryHPCEnvironment()) introduced that I'd prefer to keep separate from both readability and logic standpoints.

I think general logic can be simplified with hpc detection bits (which don't need to be own function) set up something like mpi_sep and mpi_val. And then you format it all at once something like this:

  if (append_pid) {
    snprintf(path, PATH_MAX, "%s%s%s_%d", envval, mpi_sep, mpi_val, getpid());
  } else {
    snprintf(path, PATH_MAX, "%s%s%s", envval, mpi_sep, mpi_val);
  }

which saves all the trouble with AppendXYZ stuff (and confusion inspiring O(N^2) behaviors; yes, I might by only one irked by this and this code isn't exactly speed critical but still)

Fixed
I've also added some macros to sysinfo.h to make sure that the unit test and sysinfo.cc are aligned. I know you didn't want to use the macro for this, but I believe it's more reliable as we actually using these things from 2 places.
If you still think we need to get rid of this - it's fine, I can copy/paste in all the places. But IMO this makes sense for easier maintenance.
#define TC_ENV_PID_SUFFIX "_"
#define TC_ENV_PMIX_RANK "PMIX_RANK"
#define TC_ENV_PMIX_SUFFIX ".rank-"
#define TC_ENV_SLURM_SUFFIX ".slurmid-"
#define TC_ENV_SLURM_JOBID "SLURM_JOB_ID"
#define TC_ENV_SLURM_PROCID "SLURM_PROCID"

applied. thanks. (I ended up massaging your changes in separate commit)

Thanks!
"massaging" looks great - I do not think in terms of OOP, unfortunately. So I doubt I'd come with up something close to that one on my own.


pseudo random numbers cannot be reproduced by fixing seeds

UXsim uses pseudo random numbers to simulate stochastic route choice and traffic merging behaviors at nodes. I have implemented a function to fix the random seed by random_seed arg of World.__init__(), but it does not work properly under certain conditions.
https://github.com/toruseo/UXsim/blob/1e5fac501eb2e2376ac2f5e1b56402c0bd61489e/uxsim/uxsim.py#L1381-L1384
In simple scenarios it works well, so I guess there are some small mistakes.
Example
Code:
from uxsim import *
from uxsim import Utilities

#########################################
# Iter 1
#########################################

W = World(
    name="",
    deltan=10,
    tmax=3600,
    print_mode=1, save_mode=1, show_mode=0,
    random_seed=42
)

n_nodes = 5
Utilities.generate_grid_network(W, n_nodes, n_nodes, length=1000)
od_pairs = [
    (f"n(0, 0)", f"n({n_nodes-1}, {n_nodes-1})"),
    (f"n({n_nodes-1}, 0)", f"n(0, {n_nodes-1})"),
    (f"n(0, {n_nodes-1})", f"n({n_nodes-1}, 0)"),
    (f"n({n_nodes-1}, {n_nodes-1})", f"n(0, 0)"),
]
for od_pair in od_pairs:
    W.adddemand(od_pair[0], od_pair[1], 0, 3000, 0.7)

W.exec_simulation()
W.analyzer.print_simple_stats()

#########################################
# Iter 2
#########################################

W = World(
    name="",
    deltan=10,
    tmax=3600,
    print_mode=1, save_mode=1, show_mode=0,
    random_seed=42
)

n_nodes = 5
Utilities.generate_grid_network(W, n_nodes, n_nodes, length=1000)
od_pairs = [
    (f"n(0, 0)", f"n({n_nodes-1}, {n_nodes-1})"),
    (f"n({n_nodes-1}, 0)", f"n(0, {n_nodes-1})"),
    (f"n(0, {n_nodes-1})", f"n({n_nodes-1}, 0)"),
    (f"n({n_nodes-1}, {n_nodes-1})", f"n(0, 0)"),
]
for od_pair in od_pairs:
    W.adddemand(od_pair[0], od_pair[1], 0, 3000, 0.7)

W.exec_simulation()
W.analyzer.print_simple_stats()

Results for Iter 1
results:
 average speed:	 16.7 m/s
 number of completed trips:	 8400 / 8400
 average travel time of trips:	 450.7 s
 average delay of trips:	 50.7 s
 delay ratio:			 0.112

Results for Iter 2
results:
 average speed:	 16.0 m/s
 number of completed trips:	 8400 / 8400
 average travel time of trips:	 471.8 s
 average delay of trips:	 71.8 s
 delay ratio:			 0.152

https://github.com/scientific-python/specs/pull/180 might be interesting to keep an eye on.

Finally I have solved this issue. The ultimate source of this bug was that set in Python does not preserve the order.
https://github.com/toruseo/UXsim/blob/d87a650e0953cbb6c096f4b6683b15ea1e55ca7f/uxsim/uxsim.py#L221
@EwoutH Thanks for the info. I have also updated the random number generators to the modern implementation.


Introduce Loadable.preloadAll

I've been planning on doing this for a little while. It greatly simplifies server-side rendering.
Getting all of your components to render server-side from the first run all you need to do is wrap your startup code with Loadable.preloadAll().then(() => ...);
Loadable.preloadAll().then(() => {
  app.listen(3000, () => {
    console.log('Running on http://localhost:3000/');
  });
});

Now, React Loadable doesn't care at all how you load your components, as long as you're returning promises.

Getting error UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): ReferenceError: window is not defined if i import css on component that is wrapped by Loadable in route. if i remove Loadable or css import or Loadable.preloadAll().then(... all working fine with server-side rendering but its displaying Loading...


ERR_CERT_AUTHORITY_INVALID on LINUX when using online workbench

Hi.
I am experimenting installing SPFx on Ubuntu.
I run gulp trust-dev-cert without any errors
When I do gulp serve, and use Chromium, it gives me the normal "Make sure gulp serve is running" (It is).
Investigating the console I get lots of net::ERR_BLOCKED_BY_CLIENT when trying to tunnel through to https://localhost:4321
I think the issue is the certificate produced is not being added like on WINDOWS or MACOS
I think it is something to do with having to install rushstack-serve.pem somewhere, as Linux does not auto install the certificate
Documentation seems lacking for running on linux
(Note local workbench worked fine with previous SPFx versions, but now we only have the online workbench, which is great but doesn't seem to work on LINUX
I acknowledge from the message below the info on pem, but there is no guidance anywhere on how to get this working.

)

Can you please follow this post, I believe it will help you solve your issue.
https://www.donkirkham.com/blog/spfx-dev-cert/

@robpearmain - please, let us know if Don's post helps.
Thanks @bcameron1231 for looking into it.

@robpearmain - please, let us know if Don's post helps.
Thanks @bcameron1231 for looking into it.

I have found the generated PEM file, but I am not running under windows so I could do with some pointers where to copy the PEM file to once created please

Can you please follow this post, I believe it will help you solve your issue.
https://www.donkirkham.com/blog/spfx-dev-cert/
Based on Don's post, on Linux, the cert gets created but you'll have to import the certificate to the Certificate Store yourself.

Please could you point me to information on how to import the PEM file to the Linux certificate store, this post seems to be for when running g under windows.

In transparency, I'm not a linux person, so I don't know the answer to the question. A quick google search brought this up.
https://thomas-leister.de/en/how-to-import-ca-root-certificate/

Ah, this adds some more detail I have not seen before, adding them to the
cert stores for browsers.
I have definitely installed the root, so this makes sense why the browser
is still causing issues
I will test and let you know.
Thank you
Rob
On Thu, 27 Jan 2022 at 19:47, Beau Cameron @.***> wrote:

In transparency, I'm not a linux person, so I don't know the answer to the
question. A quick google search brought this up.
https://thomas-leister.de/en/how-to-import-ca-root-certificate/
—
Reply to this email directly, view it on GitHub
https://github.com/SharePoint/sp-dev-docs/issues/7672#issuecomment-1023580563,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACJB2HDKEVA6AXLGXSVJRLUYGONHANCNFSM5M26DT5Q
.
You are receiving this because you were mentioned.Message ID:
@.***>

In transparency, I'm not a linux person, so I don't know the answer to the question. A quick google search brought this up.
https://thomas-leister.de/en/how-to-import-ca-root-certificate/

https://thomas-leister.de/en/how-to-import-ca-root-certificate/

Fantastic, this works
So on Linux, after gulp trust-Dev-cert you need to find rushstack-serve.pem and follow the example to create rushstack-serve.crt
When updating certificates I added -f to force the update
Finally, I changed the bash script to reference rushstack-serve.pem and it added it to chrome
Now when I run gulp serve, no more security warnings and invalid certificates.
Fantastic, I will update Andrew Connell so he can add it to the docs
Thanks to all

Here is the problem and  solution in full:
PROBLEM: Linux browsers give a certificate error, even if you run gulp trust-dev-cert
TO REPEAT:
On Linux, when you type
Gulp trust-dev-cert
It creates the rushstack-serve.pem file but does not auto install it to the root and browsers as it does on Windows and MacOS
THE SOLUTION:
Beau Cameron pointed me in the right direction to
https://thomas-leister.de/en/how-to-import-ca-root-certificate/
Please refer to that for more explanation on the info below
So, on Linux, when you run
Gulp trust-dev-cert
It creates in a hidden folder from the users folder two files
Rushstack-serve.key
Rushstack-serve.pem
In the hidden by default folder
~/.rushstack
In the terminal you need to navigate there
cd  ~/.rushstack
Then create a folder in the ca-certificates (Linux Trust store) shared folder for the certificate (I chose extra but not sure if the name is important)
sudo mkdir /usr/local/share/ca-certificates/extra
Copy the “.pem” file renaming it to “crt” extension:
sudo cp rushstack-serve.pem /usr/local/share/ca-certificates/extra/rushstack-serve.crt
Force linux to update its certificates (I found -f was needed, you may not need it unless it says 0 updated):
sudo update-ca-certificates -f
Then you need to add it to all the browsers (Cromium, Firefox etc)
To do this, run the following to install the “certutil” tool
sudo apt install libnss3-tools
Then create a “installspfx.sh” script file using nano
Sudo nano installspfx.sh
Paste the following, and then save and exist (ctrl+X I think)
Start of script
#!/bin/bash
Script installs root.cert.pem to certificate trust store of applications using NSS
(e.g. Firefox, Thunderbird, Chromium)
Mozilla uses cert8, Chromium and Chrome use cert9

Requirement: apt install libnss3-tools

CA file to install (CUSTOMIZE!)

certfile="rushstack-serve.pem"
certname="SPFx rushstack-serve"

For cert8 (legacy - DBM)

for certDB in $(find ~/ -name "cert8.db")
do
certdir=$(dirname ${certDB});
certutil -A -n "${certname}" -t "TCu,Cu,Tu" -i ${certfile} -d dbm:${certdir}
done

For cert9 (SQL)

for certDB in $(find ~/ -name "cert9.db")
do
certdir=$(dirname ${certDB});
certutil -A -n "${certname}" -t "TCu,Cu,Tu" -i ${certfile} -d sql:${certdir}
done
(End of script)
Once saved, ensure it can run by typing
Sudo chmod +x installspfx.sh
Run it by typing
./installspfx.sh
All done.  When you type gulp serve, chromium and firefox have a trusted dev cert, and wont give any errors
So the references are
This thread: https://github.com/SharePoint/sp-dev-docs/issues/7672#issuecomment-1023580563
And
This article:
https://thomas-leister.de/en/how-to-import-ca-root-certificate/

Thank you for the full explanation of the solution. Much appreciated!


Julia 1.8.3 is not recognized as latest version

Hi,
tested on two different Linux machines:
╰─➤  juliaup --version                                                                                [18-11-22 | 10:44:56]
Juliaup 1.7.24

╰─➤  juliaup self update                                                                                [18-11-22 | 10:46:55]
Checking for self-updates
Juliaup unchanged on channel 'release' - 1.7.24

╰─➤  juliaup add 1.8.3                                                                                [18-11-22 | 10:47:03]
Error: '1.8.3' is not a valid Julia version or channel name.

Is that a known issue or what is causing this?
Best,
Felix

I see, will be fixed by #417

yes I think this manual addition to versions.json delay things. It requires a person to do it and then requires a person(from team) to approve merge it :(

i find it not good as well


Fix mailer spec for 1.9.3

Mailer specs do not pass on MRI 1.9.3 without force_encoding.

What about
html.force_encoding(h.charset) if html.respond_to?(:force_encoding)

+1 to respond_to
is this the best way? is there another way to set the encoding correctly?

@simi, that condition was added [here]. I don't have jruby at my disposal, so I'm not sure and can't check what was the problem. Was that because of jruby not having String#force_encoding?

@KL-7 force_encoding was added in Ruby 1.9.

@joshk, I tried a couple of methods that mail gem provides, but encodings are not my strongest field so I didn't find a better solution yet. I'll update it to use respond_to? for now.
What should I do when I want to update range of commits that are included into PR? Should I just push with --force into the same branch or there's a better way to leave old commit displayed in the discussion, but only new one in the PR itself?


Update the git URL in the documentation

README.md contains an old git repository path for rmux. This updates it to the current path.

:+1:


Add configuration option to allow drush make to overwrite an existing codebase

On second thought, maybe this is unnecessarily flexible? In my own use case where I need this (together with a sql-drop) I could just run my own script before initalizing the provisioning.

I'm a little torn on this, as I've also considered adding this kind of thing before, but my main concern is safety here—if someone built up a codebase and didn't have it in Git, or completely encapsulated in their makefile, I don't want them to accidentally overwrite it.
But it might be worth adding an additional provisioning playbook that wipes the contents of the Drupal VM generated codebase folder and empties the generated database, that could be easily run within or outside the VM for more quick resetting (I currently just drop the db manually, delete the folder while on the host machine, than vagrant provision again to regenerate a copy of the site).

Aye, I currently do the same in my project Makefile.
But I like the idea of including a separate playbook for wiping–in the process of playing around I actually managed to wipe out my entire repo with a faulty make-target. Luckily I had everything in git. Simply to prevent accidents from your own solutions, an example playbook would be good :+1:


straming

Can i use to stream to youtube?
ffmpeg \ -f alsa -ac 2 -i hw:1,0 \ -f v4l2 -r 10 -i /dev/video0 \ -c:v libx264 -pix_fmt yuv420p -preset ultrafast -g 20 -b:v 2500k \ -c:a aac -ar 44100 \ -threads 0 -bufsize 512k \ -f flv rtmp://a.rtmp.youtube.com/live2/YOURSTREAM

Just to be clear : PyAV is not meant the ffmpeg command line. If your ffmpeg command works for you - that might just be the right solution. PyAV's strength resides in its deep integration with libav* which allow you to do more domain-specific operations using Python code.


Add the export option to cuetfy.exe.

Very unfortunate.
Now cuetify.exe cannot set config.export to true.
So when I convert DiceFaces: 1 | 2 | 3 | 4 | 5 | 6 @cuetsy(kind="type") with cuetify.exe,
I don't get export type DiceFaces = 1 | 2 | 3 | 4 | 5 | 6; but type DiceFaces = 1 | 2 | 3 | 4 | 5 | 6;.
I have implemented the export option in one way and created a PR(https://github.com/grafana/cuetsy/pull/82).
Would you accept this PR with some modifications?

Thank you for that. I just merged the PR.


[SPARK-12000] do not specify arg types when reference a method in ScalaDoc

This fixes SPARK-12000, verified on my local with JDK 7. It seems that scaladoc try to match method names and messed up with annotations.
cc: @JoshRosen @jkbradley

Test build #47098 has started for PR 10114 at commit fbd83b9.

LGTM. I tested locally and can confirm that this fixes the issue.

Test build #47098 has finished for PR 10114 at commit fbd83b9.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):\n  * class CrossValidator @Since(\"1.2.0\") (@Since(\"1.4.0\") override val uid: String)\n  * class ParamGridBuilder @Since(\"1.2.0\") \n  * class TrainValidationSplit @Since(\"1.5.0\") (@Since(\"1.5.0\") override val uid: String)\n

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/47098/
Test PASSed.


Support for Visual Studio 2022?

I'm looking for this extension with VS2022 support. Not sure if there is an alternative you're aware of or whether this extension could be easily extended to support VS2022...

I have no plans for adding support for VS2022. I'm using Carnac Keys (also on GitHub https://github.com/Code52/carnac) to do a similar thing but in a broader way.
Benefits:

Not just limited to Visual Studio
Better support for custom functionality.


Assure that visible tracks are only accessed in the main thread

In this PR we are fixing a bug. AddFrameTrack() was executed in the capture_thread but was modifying the sorted_tracks_ array that should be only modified in the main_thread. Since sorting was executed once per second, I don't expect to have had a single issue in the past but it's better to fix it.
So, in this PR we are doing a few things:

Assure all methods access visible_tracks_ and sorted_tracks only in the main_thread_.
Delay the insertion of FrameTracks in a similar way that we delay its deletion.

We use a new pending_frame_tracks which is also locked by the mutex.

all_tracks_ include all the tracks now (frame tracks included).
Improve our comments to explain which containers are accessed by both threads and which one should be accessed only by main_thread_.

Test: Load a capture.

Code-wise lgtm. Thanks.
However, I am wondering why we only allow modification of the sorted tracks from main-thread at the first place? Is this for similar reasons as we have seen in the crash fixed in #4698?

Because we can. sorted_tracks_ is just a view of the tracks in a sorted order (updated mostly when a Track is moved or added). The plan was to manage all the UI element in the main_thread, but this class mix UI with data, so ideally should be split up.


fix app iframe height when disabling navbar

This fixes the issue of the 50px too short iframe when disabling the navbar.

@jey1401 how are you disabling the navbar? By commenting out <div th:replace="../fragments/navbar :: navbar"></div> in the html files before compiling the jar?


Error about "Unexpected key(s) in state_dict: "w_junc", "w_heatmap"

Hi, I completed the step1 and got my trained model. During step2, I commented gt_source_train and gt_source_test and disable the photometric and homographic augmentations , but error occur:
python -m sold2.experiment --exp_name wireframe_train --mode export --resume_path experiments/sold2_synth/ --model_config sold2/config/train_detector.yaml --dataset_config sold2/config/wireframe_dataset.yaml --checkpoint_name checkpoint-epoch199-end.tar  --export_dataset_mode train --export_batch_size 4
[Info] Export mode
Output path: ./datasets/export_datasets/wireframe_train
[Info] Export predictions with homography adaptation.
Initializing dataset and dataloader
[Info] Initializing wireframe dataset...
Found filename cache wireframe_train_cache.pkl at ./datasets/wireframe
Load filename cache...
[Info] Successfully initialized dataset
Name: wireframe
Mode: train
Gt: /media/cqw/KESU/SOLD2/datasets/synthetic_shapes/synthetic_shape_train.h5
Counts: 20000
     Successfully intialized dataset and dataloader.
    --------Initializing model----------
    Model architecture: simple
    Backbone: lcnn
    Junction decoder: superpoint_decoder
    Heatmap decoder: pixel_shuffle
    -------------------------------------

Traceback (most recent call last):
File "/media/cqw/KESU/SOLD2/sold2/export.py", line 23, in restore_weights
model.load_state_dict(state_dict)
File "/home/cqw/anaconda3/envs/SOLD2/lib/python3.6/site-packages/torch/nn/modules/module.py", line 769, in load_state_dict
self.class.name, "\n\t".join(error_msgs)))
RuntimeError: Error(s) in loading state_dict for SOLD2Net:
Unexpected key(s) in state_dict: "w_junc", "w_heatmap".
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/cqw/anaconda3/envs/SOLD2/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/home/cqw/anaconda3/envs/SOLD2/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/media/cqw/KESU/SOLD2/sold2/experiment.py", line 227, in
export_dataset_mode=args.export_dataset_mode, device=device)
File "/media/cqw/KESU/SOLD2/sold2/experiment.py", line 116, in main
export(args, dataset_cfg, model_cfg, output_path, export_dataset_mode, device=device)
File "/media/cqw/KESU/SOLD2/sold2/experiment.py", line 92, in export
export_dataset_mode, device)
File "/media/cqw/KESU/SOLD2/sold2/export.py", line 158, in export_homograpy_adaptation
model = restore_weights(model, checkpoint["model_state_dict"])
File "/media/cqw/KESU/SOLD2/sold2/export.py", line 27, in restore_weights
missing_keys = err.missing_keys
AttributeError: 'NoneType' object has no attribute 'missing_keys'
I dont know how to solve it, can you give me some suggestion?

Hi, when running Step 1, did you change any parameter in the config/train_detector.yaml file? In particular, did you keep the 'dynamic' policy for the junction and heatmap losses?

Hi, when running Step 1, did you change any parameter in the config/train_detector.yaml file? In particular, did you keep the 'dynamic' policy for the junction and heatmap losses?
Thank you for your reply. I didn't change the parameter in the config/train_detector.yaml file.

Tha

Hi, I didn't change any parameter in the config/train_detector.yaml file. Here is my parameter in the train_detector.yaml
[Model parameters]
model_name: "lcnn_simple"
model_architecture: "simple"
Backbone related config
backbone: "lcnn"
backbone_cfg:
input_channel: 1 # Use RGB images or grayscale images.
depth: 4
num_stacks: 2
num_blocks: 1
num_classes: 5
Junction decoder related config
junction_decoder: "superpoint_decoder"
junc_decoder_cfg:
Heatmap decoder related config
heatmap_decoder: "pixel_shuffle"
heatmap_decoder_cfg:
Shared configurations
grid_size: 8
keep_border_valid: True
Threshold of junction detection
detection_thresh: 0.0153846 # 1/65
Threshold of heatmap detection
prob_thresh: 0.5
[Loss parameters]
weighting_policy: "dynamic"
[Heatmap loss]
w_heatmap: 0.
w_heatmap_class: 1
heatmap_loss_func: "cross_entropy"
heatmap_loss_cfg:
policy: "dynamic"
[Junction loss]
w_junc: 0.
junction_loss_func: "superpoint"
junction_loss_cfg:
policy: "dynamic"
[Training parameters]
learning_rate: 0.0005
epochs: 200
train:
batch_size: 6
num_workers: 8
test:
batch_size: 6
num_workers: 8
disp_freq: 100
summary_freq: 200
max_ckpt: 150
It seems that the policy for the junction and heatmap losses are 'dynamic'

What is your torch version? It might just be a compatibility issue.
Note that you can probably solve this issue with a quick fix: replace the lines 22 to 36 of sold2/export.py by this line: model.load_state_dict(state_dict, strict=False). This could potentially fix your problem.

Hi, thank you for your reply. I retrained the model and finished the step 1. The model seems to work. But when running step 2, error occurs:
KeyError: Caught KeyError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "/home/jimlee/anaconda3/envs/DeepLSD/lib/python3.7/site-packages/torch/utils/data/_utils/worker.py", line 178, in _worker_loop
data = fetcher.fetch(index)
File "/home/jimlee/anaconda3/envs/DeepLSD/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/jimlee/anaconda3/envs/DeepLSD/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 44, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/media/jimlee/65F33762C14D581B/SOLD2/sold2/dataset/wireframe_dataset.py", line 953, in getitem
exported_label = parse_h5_data(f[file_key])
File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "/home/jimlee/anaconda3/envs/DeepLSD/lib/python3.7/site-packages/h5py/_hl/group.py", line 305, in getitem
oid = h5o.open(self.id, self._e(name), lapl=self._lapl)
File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "h5py/h5o.pyx", line 190, in h5py.h5o.open
KeyError: "Unable to open object (object '000000' doesn't exist)"
I used the wireframe datasets you provided and I check the './datasets/wireframe/train', there is no picture named '000000', can you give me some suggestions. Sorry to bother you.

Hi, did you keep the fields 'gt_source_train' and 'gt_source_test' commented in config/wireframe_dataset.yaml as requested in the ReadMe? This is necessary to export the pseudo ground truth.

Hi, thank you for your help. I finished step2. But when running step3, error occurs:
Traceback (most recent call last):
File "/home/jimlee/anaconda3/envs/DeepLSD/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/home/jimlee/anaconda3/envs/DeepLSD/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/media/jimlee/65F33762C14D581B/SOLD2/sold2/postprocess/convert_homography_results.py", line 122, in
junctions_pred_raw, heatmap_pred, device=device)
File "/media/jimlee/65F33762C14D581B/SOLD2/sold2/model/line_detection.py", line 101, in detect
self.heatmap_refine_cfg["valid_thresh"]
File "/media/jimlee/65F33762C14D581B/SOLD2/sold2/model/line_detection.py", line 262, in refine_heatmap_local
heatmap_output = torch.clamp((heatmap_output / count_map).float(),
RuntimeError: expected device cuda:0 and dtype Float but got device cuda:0 and dtype Int
My pytorch version is 1.4.0. Sorry to bother you once again, can you give me some suggestions.

Hi, I just pushed a small fix. Can you try again with the latest version of the code?


expose ADVERTISE_IP

In order for smart devices, like TVs with the Plex app, to hit the plex server, it needs to have the ADVERTISE_IP set to the IP of the l4 load balancer.  I did this locally setting the ENV var and exposing it as an option in values yaml - would be cool if it could figure out what the L4 LB IP was and set it manually rather than me doing it after deployment.

Is the ADVERTISE_IP supposed to be the IP address that is getting set as the "Private IP" in the GUI?  In my case, it does not work. I have it set in the deployment file, and I can see it when doing a describe of the pod, and can see it as an environment variable into the pod. The the "Private IP" still is the pod IP instead of the one set in the ADVERTISE_IP env. variable.

@tardich ADVERTISE_IP is the IP that the service will tell clients to connect to.  The pod IP will always be the internal k8s cluster ip.

@justinrush OK so, apparently, something's not working well with my setup then. I have the POD IP of, right now, <IP_ADDRESS>. My service IP is <IP_ADDRESS>, and the exposedIP (the IP given by the loadBalancer) is <IP_ADDRESS>, which is advertised to the router with the BGP protocol (can see it in the routing table). The GUI is accessed through my ingress controller.
So let's say I want to access the plex data from the GUI. I configured the ADVERTISE_IP as <IP_ADDRESS>. But it doesn't seem to do anything. If I want to access the data, I've figured out that it's still trying to reach the plex server, on port 32400, to the <IP_ADDRESS> (which is the POD IP). It doesn't make any sense, as this is an internal IP. So what I managed to do is by setting a redirection rule, on the router/firewall to redirect traffic directed to <IP_ADDRESS> to <IP_ADDRESS> and then voilà! it appears.
The thing is that, if the pod restarts on another node, it's IP will change, and my server will be unreachable again until I change the rule to the new IP. I can also create a rule allowing ANY traffic (no matter what destination IP is requested to the service public IP. That would work.....  until I want to reach another server with the same port...  :-/

@tardich Don't mind me showing up a year late to answer your question.
You mentioned that you have an ingress. You should use that as your ADVERTISE_IP. In the GUI, the ADVERTISE_IP goes into the "Customer server access URLS", which works with a comma separated list of urls. For example, mine is http://plex.<IP_ADDRESS>.nip.io/ which is the host my ingress is looking for.
This field lets you set multiple urls, so you could actually set the ingress address, the loadbalaner address, and any other alternative schemes you'd like.


[Bug]: Test cases for handling string datatype in api response

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Write test cases for the issue #14242
1755 [Testcase]: [Bug]: Appsmith crash when create an API pointing to Github hosted json
Steps To Reproduce

Create a new API
URL = https://raw.githubusercontent.com/dmfilipenko/timezones.json/master/timezones.json and hit run to it

Public Sample App
https://release.app.appsmith.com/app/dynamically-change-input-text/page1-62729b10bf58a33d4ce4cedb/edit
Version
1.7.1

Closing this issue as test cases are added in this PR - https://github.com/appsmithorg/appsmith/pull/14667


Follow test references to calculate unused files

To make sure that I didn't break anything, I dumped the list of dependencies generated during parsing. In getTypingInfo, I added the following code:
    console.log(`"${packageName}": {`)
    let first = true
    for (const k in res) {
        if (first)
            first = false
        else
            console.log(",")
        console.log(`  "${k}": ${JSON.stringify(res[k].dependencies.map(d => d.name))}`)
    }
    console.log("},")

I put the same code in the production version of types-publisher. This produced (1) almost-legal JSON (2) a diffable file for both. I diffed the files and found 57 differences:

30: order differences from sorting or not.
2: incorrect types="x/v7" references that are now corrected to just types="x" by the additional call to rootName. I added a test to show that we detect and prevent such references.
2: incorrect references "chrome/chromecast" from types="chrome/chromecast" are corrected to just "chrome" by the additional call to rootName.
1: incorrect reference to "@ember/services", from @types/ember__services itself.
22: missing references from untested files. I added entries to OTHER_FILES.txt to add these missing references.

There were lots of unused files that I automatically added OTHER_FILES.txt entries for. That's the next step in the process I wrote up at #708.
Note: I also need to figure out how to fix the 2 references to types="x/v7" which the tests relied on. I think I'll have to add them to the whitelist. =[
Edit: I just updated the tests to newer versions of dependencies: DefinitelyTyped/DefinitelyTyped#40575

I'll merge and ship once I have the related DT PR(s) ready to go.

I missed a last minute change, which I just pushed to master: c169523


Error: The asyncapi field is missing.

Describe the bug
This bug has been around before Version 1.7.0 and was supposedly fixed last Octorber. However it just appeared on me.

How to Reproduce

installed asyncapiCLI
created a sample file using
asyncapi new --example=tutorial.yml --no-tty
installed ansycApiPlugin for IntelliJ
restarted IntelliJ
opened the file, opened previewer

to elaborate on my Setup:

Running on M1 with Ventura 13.0.1
IntelliJ 2022.3.2 Ultimate Edition
AsyncApi 2.0.0+jre17

Expected behavior
I was expecting the plugin to show me a preview of the freshly generated sample.

@DanielBo hi!
Two requests to help me:

Can you attach generated specification?
Can you open the preview in the browser and check the console for errors or try to open the file via generated link?

I will check it in 2.0.0+jre17. Previously problem was in the path separator, I used a fixed separator instead of platform independent, so that was a reason why the preview couldn't open file from temporal folder.


xdg-user-dirs is currently broken (Freedesktop, NixOS desktop)

Reason: xdg-user-dirs-update is not called upon first login of the user.
---- Background, logs and outdated stuff
Functionality ("a way to customize the xdg-user-dirs") introduced in #33282 is currently broken.
In configuration.nix, this block is not executed and directories are not made.
environment.etc."xdg/user-dirs.defaults".text = ''
 DESKTOP=system/desktop
 DOWNLOAD=downloads
 TEMPLATES=system/templates
 PUBLICSHARE=system/public
 DOCUMENTS=documents
 MUSIC=media/music
 PICTURES=media/photos
 VIDEOS=media/video
'';

gives a 22.11 system with an env like this:
> env|grep -i xdg_config
XDG_CONFIG_DIRS=/nix/store/vvyh020yzcxg0dsdqbvarn4d0s7v7rh2-kio-5.100.0/etc/xdg:/nix/store/hawwx7wnmzmdy3m2m44z94j20nkmi8f1-kservice-5.100.0-bin/etc/xdg:/nix/store/yx5kn3pirxa8033plq518ms0nhhn6aj2-kxmlgui-5.100.0-bin/etc/xdg:/nix/store/8wzm110kbnapg3ljk56hfb53cqhrkjc2-plasma-workspace-<IP_ADDRESS>/etc/xdg:/nix/store/rgr8aynzyyzv8a67wxld1dcbgp0m8gc7-kdelibs4support-5.100.0/etc/xdg:/nix/store/n7fjqy7pnvfpnr20w9780kybclg5c10n-baloo-5.100.0/etc/xdg:/home/user/.config/kdedefaults:/etc/xdg:/home/user/.nix-profile/etc/xdg:/etc/profiles/per-user/user/etc/xdg:/nix/var/nix/profiles/default/etc/xdg:/run/current-system/sw/etc/xdg

^ notice above .. /home/user/.config/kdedefaults: /etc/xdg :/home/user/.nix-profile/etc/xdg: .. :/run/current-system/sw/etc/xdg
The only file in /etc/xdg is user-dirs.defaults containing changes matching configuration.nix:
> cat /etc/xdg/user-dirs.defaults
DESKTOP=system/desktop
DOWNLOAD=downloads
TEMPLATES=system/templates
PUBLICSHARE=system/public
DOCUMENTS=documents
MUSIC=media/music
PICTURES=media/photos
VIDEOS=media/video

However, two stock files in /run/current-system/sw/etc/xdg/ always override it:
> ls /run/current-system/sw/etc/xdg/user*
/run/current-system/sw/etc/xdg/user-dirs.conf
/run/current-system/sw/etc/xdg/user-dirs.defaults

> cat /run/current-system/sw/etc/xdg/user-dirs.conf
# This controls the behaviour of xdg-user-dirs-update which is run on user login
# You can also have per-user config in ~/.config/user-dirs.conf, or specify
# the XDG_CONFIG_HOME and/or XDG_CONFIG_DIRS to override this
#

enabled=True
<. . . snip . . .>

> cat /run/current-system/sw/etc/xdg/user-dirs.defaults
# Default settings for user directories
#
# The values are relative pathnames from the home directory and
# will be translated on a per-path-element basis into the users locale
DESKTOP=Desktop
DOWNLOAD=Downloads
TEMPLATES=Templates
PUBLICSHARE=Public
DOCUMENTS=Documents
MUSIC=Music
PICTURES=Pictures
VIDEOS=Videos
# Another alternative is:
#MUSIC=Documents/Music
#PICTURES=Documents/Pictures
#VIDEOS=Documents/Videos

However, two stock files in /run/current-system/sw/etc/xdg/ always override it

How did you determine that? Are you sure you do not have ~/.config/user-dirs.dirs set by your desktop environment?

load /run/current-system/sw/etc/xdg early - just after /store/xxx-packages; load /etc/xdg always latest

I believe we determined in https://github.com/NixOS/nixpkgs/pull/67389, the first found config wins.

strip xdg-user-dirs-0.18 of user-dirs.defaults if /etc/xdg/user-dirs.defaults is present to prevent overriding

That might require everyone to create /etc/xdg/user-dirs.defaults if they do not want all directories end up in their home directory.

@jtojnar
Well, my system is built from scratch and only used  environment.etc."xdg/user-dirs.defaults".text to set these dirs up.
I noticed straighaway that Plasma5/Xorg and Firefox completely ignore them and try roll out the classic ones. I have no ~/.config/user-dirs.dirs anywhere.
> find / -name *user-dirs.dirs 2>/dev/null

> find / -name *-dirs.dirs 2>/dev/null

> find / -name *user-dirs.defaults 2>/dev/null
/etc/xdg/user-dirs.defaults
/nix/store/qi2l4wmcbn9028ygg67ki25na4fnrl2l-xdg-user-dirs-0.18/etc/xdg/user-dirs.defaults
/nix/store/az0zrqjf97ghq2pr6pl5jrnyjxqlrqjb-system-path/etc/xdg/user-dirs.defaults
/nix/store/k41ai7pzpyz527ph6gbfvmxys6a2658f-etc-user-dirs.defaults
/nix/store/qmb47hssgmnq6gn1nx9vms3xjmrr2n5k-etc/etc/xdg/user-dirs.defaults
/nix/store/d41v4aznn6471flnjj6jwrhsvhkzb2s4-system-path/etc/xdg/user-dirs.defaults
/nix/store/gi0ds0p50sz50fr8vkw69ak4xrc94kpi-etc/etc/xdg/user-dirs.defaults
/nix/store/akps29rpvpic75a4s35rsj1qymbvr0mk-system-path/etc/xdg/user-dirs.defaults
/nix/store/n3221c413n88jvmfzb9y19pgmyb330k5-etc/etc/xdg/user-dirs.defaults

I am aware of a different syntax and meaning between user-dirs.defaults and user-dirs.dirs
I know about default precedence of PATH variable, you are correct that the leftmost on the string takes priority over all further and just tested it myself by cping two simple echo scripts into two locations with different outputs..
However, I dont understand then why the system simply ignores all in /etc/xdg/user-dirs.defaults -> /etc/static/xdg/user-dirs.defaults -> /nix/store/k41ai7pzpyz527ph6gbfvmxys6a2658f-etc-user-dirs.defaults
Just verified, the text is stored in Linux new-line format (0A).
Here is my full env.

I checked all the /nix/store/*.defaults above.  All with /etc/etc contain my version from configuration.nix.  All system-path - stock file. The xdg-user-dirs-0.18 also contains stock file. Here is how stock file looks:
# Default settings for user directories
#
# The values are relative pathnames from the home directory and
# will be translated on a per-path-element basis into the users locale
DESKTOP=Desktop
DOWNLOAD=Downloads
TEMPLATES=Templates
PUBLICSHARE=Public
DOCUMENTS=Documents
MUSIC=Music
PICTURES=Pictures
VIDEOS=Videos
# Another alternative is:
#MUSIC=Documents/Music
#PICTURES=Documents/Pictures
#VIDEOS=Documents/Videos

@jtojnar sorry to disturb you - I found the reason: xdg-user-dirs-update must be called after first login of the user.  It is not invoked. I don't know who is supposed to call it, but after calling it manually - all directories appeared and I am very sure that user is not supposed to do this manually.
I have updated the bug description.
/run/current-system/sw/etc/xdg/user-dirs.conf explicitly mentions this should happen, but doesn't:
This controls the behaviour of xdg-user-dirs-update which is run on user login
You can also have per-user config in ~/.config/user-dirs.conf, or specify
the XDG_CONFIG_HOME and/or XDG_CONFIG_DIRS to override this"

Oh, that’s right. Your desktop environment is responsible for calling it. You should have xdg-data-dirs in environment.systemPackages:
https://github.com/NixOS/nixpkgs/blob/f3f4e74d694d928e27962312ade98b220d2af085/nixos/modules/services/x11/desktop-managers/gnome.nix#L463
Which should link autostart file to /run/current-system/sw/etc/xdg/autostart/.
Then your DE should run it on startup.

Thank you very much for explaining. However this xdg implies this should happen automatically "xdg-user-dirs-update which is run on user login". I assume not everyone wants these directories in his home directory, other want them to be built automatically and customized. This looks like a valid future NixOS option.

Thank you very much for the information!
Because I see inconsistency between how NixOS handles xdg-dirs specification, I have opened a Feature Request to allow control over this feature. Unfortunately I am not apt in nix, but maybe this can be of use: #222904

There is no inconsistency. The desktop environment is responsible for this so when you are creating your own DE from scratch, you need to make sure to set up all XDG specifications correctly.
Ideally, we would have a documentation section that would help with setting up the XDG baseline but so far nobody found the time to do it.

Implementing (in any way) the #222904 - will close this issue.

Thank you for detailed information. I know about existence of home manager and difference between user-dirs.defaults and user-dirs.dirs.
My issue is different: stock or modified settings in user-dirs.defaults are ignored on Plasma, this is likely due to Plasma currently preferring to just output a Desktop entry, (undocumented-ly) expecting user to add  xdg-user-dirs-update manually to autoexec or through any other form of invocation.
I imagine other desktops might prefer similar behavior (disable xdg, limit xdg to just Desktop folder, full xdg), hence I created #222904.
Of course, the other method is to write the whole issue into NixOS manual so user decides what to add, but this will keep behavior inconsisent across desktops.
Ideally all desktops must add autoexec to xdg-user-dirs-update by default, which then acts based upon the policy in #222904 (as far as I see it, you milage may vary).

Ideally all desktops must add autoexec to xdg-user-dirs-update by default

That should be handled by xdg-user-dirs being in envirohnment.systemPackages and the desktop environment supporting XDG autostart spec – nothing DE-specific.
Unless the desktop explicitly decides to ignore xdg-user-dirs.desktop autostart entry. But it is probably more likely that autostart is broken.

@jtojnar I have opened #222925 based on this. Thank you VERY MUCH for your help. I will hence close this request to prevent parallel/spread discussion.


assign network contributor role to control plane identity

Assign network contributor role to control plane identity.
Now it is currently using the kubelet identity which is wrong.
Relevant docs:
https://learn.microsoft.com/en-us/azure/aks/use-managed-identity#summary-of-managed-identities
Fixes #368

@lonegunmanb please approve e2e tests

@lonegunmanb should we create a v6.8.0 branch and cherry-pick this fix for a v6.8.1 ?


test integration with 3rd party app: jupyter-fs

The tree-finder UI is starting to mature and is now mostly feature complete.
The next thing to build in tree-finder will be support for commands (cut, copy, paste, open, etc). I think the easiest way to design these will be trial-by-fire: I'll take an app with an existing filebrowser UI, and existing backend implementations for commands, and try out the current tree-finder as a drop-in replacement.
The first target will be jupyter-fs

first live prototype of new Jupyter filebrowser UI achieved! There's now a functional example of a tree-finder-panel plugged into an actual Jupyter ContentsManager backend:

As of jupyter-fs v0.3.0, the filebrowser in jupyter-fs is now powered by tree-finder, including a context menu powered by a bunch of command hooks also supplied by tree-finder


Support for Next 12

Discussed in https://github.com/caching-tools/next-shared-cache/discussions/201

Originally posted by asjadanis December  7, 2023
Does the cache-handler library work with Next Version 12?

I understand the need for a Next.js 12 version. However, developing it would be a major undertaking due to the necessary changes to the core, Handlers, and tests. Given the limited resources and the fact that Next.js 12 is obsolete and unsupported, I'm unable to prioritize this at the moment.


Speed related mods also change note animation times

Potential solutions I can think of:
1. Adjusting the note duration based on the current playback speed
2. Adjusting note animation to use the approach rate of beatmaps, which avoids the problem of needing to manually set animation speed, but removes a adjustable option that was present in Maimai
3. Ignore the problem and consider it a feature.

I noticed that Mania is able to do so without any code to handle it within the drawables, might be handled in ScrollingPlayfield..
I could transition to ScrollingPlayfield, but given that I will need to implement objects that do not scroll, I'm not sure if it would be worth the effort.
I'm gonna have to study how existing rulesets manage to accommodate speed mods, and make a decision sooner or later.

If I understand what you're referring to, mania animation speeds do change with playback speed. I would suggest option (3), however if you really want to "fix" it...
We don't have a simple solution to this, but I can suggest a path: You could try to give your drawables that shouldn't change animation speed a custom clock that has the inverse of the current clock rate applied.
Implementation would be a little tricky - you'd have to take the source time and interpolate yourself (basically implement an IFrameBasedClock). Special consideration if you want to consider seeking - you'd may/probably will need to have some sort of threshold beyond which you just reset the animation.
Something like:
private IClock parentClock;
private IClock localClock;

[BackgroundDependencyLoader]
private void load()
{
    parentClock = base.Clock;
    lockClock = new MyLocalClock(parentClock);
}

protected override void Update()
{
    base.Update();
    localClock.Rate = 1.0 / parentClock.Rate;
}

It turns out I had mania scroll speed too low to make the difference obvious.
For now I'll ignore it as there are more important things that makes this unplayable.
Keeping this open to acknowledge the problem, and to possibly revisit in the future.


chore: fixed renovate config for kube-linter repo

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

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


Certificates error

Hi,
I'm not sure if it's a bug or not, but following the readme doc give me an error :
[2015-09-29 15:50:57,570][ERROR][io.fabric8.kubernetes.api.KubernetesFactory] Specified CA certificate file /var/run/secrets/kubernetes.io/serviceaccount/ca.crt does not exist or is not readable
Followed by lot of
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
What did I forgot to get this certificate working ?
Thanks for your help
Alex

@AlexRezid that's a problem with your Kubernetes installation. Can you list the contents of /var/run/secrets/kubernetes.io/serviceaccount on the nodes you're trying to deploy this example?

@pires The folder does not exist on the master nor the nodes....
core@nodeXXXX ~ $ sudo ls /var/run/secrets
ls: cannot access /var/run/secrets: No such file or directory

kubernetes v1.0.3
Installed from : https://github.com/kubernetes/kubernetes/blob/master/docs/getting-started-guides/coreos/coreos_multinode_cluster.md

Sorry, it should exist only on the pods themselves not the nodes.

@AlexRezid unfortunately said tutorial doesn't support certificates and it's about to be deprecated in favor of https://coreos.com/kubernetes/docs/latest/getting-started.html. Please use that or https://github.com/pires/kubernetes-vagrant-coreos-cluster.

@pires Thanks, will have a look on this.


Host on Github Pages

Since its a static site/app, please host this on github pages (Settings > Pages) so that we can have a look or even use it without needing to download and run our own server first.

hm, fair enough :) https://zero01101.github.io/openOutpaint/ it is then, i'll update the readme


Initial support for relational query flattening

Turns SelectMany into a single SQL query.
Can go in once SQLite Northwind is fixed.

I just tried .SelectMany() on 7.0.0-beta8-15538 with EntityFramework.Sqlite and got the following exception:
Exception thrown: 'System.ArgumentException' in mscorlib.dll

Additional information: Value does not fall within the expected range.

Am I missing something?


Bug?: empty string warning

I have a code like this in a bash  script:
readarray -td '' all_lua_files < <(find -name '*.lua' -print0)

BashSupport plugin version <IP_ADDRESS> highlights the empty string '' as an error, saying "not a valid identifier". On the other hand, this usage of an empty string is correct, and is quite common when you want to state null character as delimiter (think find -print0, xargs -0 etc).
Can BashSupport plugin be improved to allow this kind of empty argument creation?
Thanks!

@vn971 Thanks for the report :)
This is fixed now for the next update. The issue was that argument values, e.g. '' of -td, were interpreted as variable names.


[winpr,library] implement GetModuleFileNameA

@VVD maybe of interest for you

@VVD maybe of interest for you

I created separated source file with this function and it work for me on FreeBSD 14.1.
How to test this functionality in FreeRDP?

@VVD just compile the source and run cmake --build builddir --target test to run all unit tests.


Questions regarding Mtx_Translate()

Please be patient with me as I am extremely new to graphics libraries and the math involved in 3D rendering, and frankly have very little idea of what I'm talking about in general.
Background: ScummVM uses a modified version of TinyGL (a stripped-down version of OpenGL) to run several 3D games such as Grim Fandango and Myst 3: Exile on lower-end systems (including the 3DS), provided their ScummVM engine has alternate, TinyGL-specific graphics code. The problem is that attempting to run said 3D games crashes the system. Interestingly, the one 3D game that will run on the 3DS (Westwood's Blade Runner), does not use OpenGL nor TinyGL.
Anyway, there was speculation that the issue might be solved by having the 3DS hardware take over some functions. Since the 3DS backend for ScummVM already uses citro3d for screen rendering, I thought it might be worthwhile to try and write a version of ScummVM's TinyGL implementation that utilizes citro3d. Needless to say, due to tinyGL being column-major and citro3d being row-major, I've been in a slog from the beginning.
What I think I know: Correct me if I'm wrong on any of this. To my understanding, converting between column-major and row-major layout simply requires transposing the matrix (and in citro3d's case, additionally flipping the matrix horizontally to account for PICA200's WZYX ordering). This seemed to work out fine for matrix rotation, as doing this then performing a left-handed MTX_Rotate() produced the same values as TinyGL's glopRotate() (with value positions changed appropriately).
In TinyGL, the translation matrix in its Matrix4::translate() looks like this:

Therefore, I expected that citro3d's translation matrix would be situated like this (but flipped horizontally, of course):

However, according to citro3d's code, a left-sided MTX_Translate() changes every cell's value EXCEPT those in the bottom-row. Additionally, right-handed Mtx_Translate() uses a translation matrix that is a horizontal mirror of TinyGL's translation matrix, changing only the W cells.
Questions:

Is this intentional?
If so, am I not understanding something correctly?
If not, how can I work around this?
Am I going about this all wrong?
Is there anything you think I should know before I continue on this magical journey of mathematics, personal growth, and generally banging my head against a wall?

C3D_Mtx bRightSide=true is an OpenGL-style right-handed coordinate system where matrix multiplication is right-associative and has the "effects" from right-to-left.
C3D_Mtx bRightSide=false is an DirectX-style left-handed coordinate system where matrix multiplication is left-associative and has the "effects" from left-to-right.

Thanks, that helps. In light of that, I think I may have found something wrong in Mtx_Rotate(). I made two hackjob test files (one for TinyGL, one for Citro3D) by copypasting code bits.
TinyGL test file results:

Citro3D test file results (matrix printouts flipped horizontally for ease of comparison):

While the other functions produce appropriate results in the Citro3D test, Mtx_Rotate() does not. This might be because the function does not transpose om when bRightSide = true; doing so results in the expected output:

Am I correct in concluding that Mtx_Rotate's current behavior for bRightSide = true is not intended?

Have you had a look at https://github.com/devkitPro/citro3d/tree/master/test?

test: main.cpp:214: void check_matrix(generator_t&, distribution_t&): Assertion `m == glm::mat4()' failed.
I probably did something wrong like install the wrong version of GLM, so I included the whole shebang in the pastebin (GLM install, build process, and test).

Sorry looks like glm changed the way default constructors work. They are now uninitialized instead of identity-constructed. I created a branch https://github.com/devkitPro/citro3d/tree/update-glm that restores that behavior for the test, and also prints out the actual/expected data on failures.

On the off chance I didn't screw up on my end, I went through and figured out which of the asserts were failing. I did this by going through and commenting out each line the test program failed at.
check_matrix
check identity

214: assert(m == glm::mat4());

check inverse (which you're aware of)

279: assert(id == glm::mat4()); // could still fail due to rounding errors
281: assert(id == glm::mat4()); // could still fail due to rounding errors

check perspective tilt

345: assert(m == fix_depth*g*tilt);
350: assert(m == fix_depth*glm::scale(g, z_flip)*tilt);

check perspective stereo tilt

451: assert(left == fix_depth*g*left_eye*tilt);
452: assert(right == fix_depth*g*right_eye*tilt);
457: assert(left == fix_depth*glm::scale(g*left_eye, z_flip)*tilt);
458: assert(right == fix_depth*glm::scale(g*right_eye, z_flip)*tilt);

check ortho tilt

513: assert(m == tilt*fix_depth*g);
518: assert(m == tilt*fix_depth*glm::scale(g, z_flip));

check lookAt

548: assert(m == glm::scale(glm::mat4(), glm::vec3(-1.0f, 1.0f, -1.0f))*g);

preceded by I can't say for certain that this is the correct test

check translate (reversed)

586: assert(m == glm::translate(glm::mat4(), v)*g);

check rotate (reversed)

626: assert(m == glm::rotate(glm::mat4(), r, v)*g);

check rotate X (reversed)

652: assert(m == glm::rotate(glm::mat4(), r, x_axis)*g);

check rotate Y (reversed)

678: assert(m == glm::rotate(glm::mat4(), r, y_axis)*g);

check rotate Z (reversed)

704: assert(m == glm::rotate(glm::mat4(), r, z_axis)*g);

check_quarternion
check identity

789: assert(q == g);

check rotation

918: assert(Quat_Rotate(q, FVec3_New(v.x, v.y, v.z), r, true) == glm::rotate(glm::quat(), r, v)*g);

check rotate X

929: assert(Quat_RotateX(q, r, true) == glm::rotate(glm::quat(), r, x_axis)*g);

check rotate Y

940: assert(Quat_RotateY(q, r, true) == glm::rotate(glm::quat(), r, y_axis)*g);

check rotate Z

951: assert(Quat_RotateZ(q, r, true) == glm::rotate(glm::quat(), r, z_axis)*g);

Just tried the updated test file and yeah, everything passes on that one. Guess I just need to look at all this more to familiarize myself with it.

I would suggest inserting TinyGL into these tests and going from there

That's a good idea, I'll try that.
On Thu, Jun 17, 2021 at 2:20 PM mtheall @.***> wrote:

I would suggest inserting TinyGL into these tests and going from there
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/devkitPro/citro3d/issues/55#issuecomment-863502051,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6LSYLOIU6RHIXY6KAL7VDTTJDHPANCNFSM462E6PPA
.

That's a good idea, I'll try that.

@mtheall I hope you don't mind me reusing this to avoid cluttering up the issues page. I noticed that the code in mtx_persp.c is different than that of the WolframAlpha equation it links to. Shouldn't line 16 read:
mtx->r[2].w = 0.5f*(near + far) / (near - far) - 0.5f*mtx->r[3].z;
instead of:
mtx->r[2].z = -mtx->r[3].z * near / (near - far);?

3DS GPU clip space has z in [0, 1] where e.g. OpenGL has it in [-1, 1]


Update MD file on new branch 2017-11-13_04-21-54

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[zipkin-ui] Fix install-node-and-npm

As discussed in
https://github.com/eirslett/frontend-maven-plugin/issues/294

cc @eirslett


Cookie "Orchard-"

Hi,
I add  to the Web.Config, and then all the cookies with Secure flag set except a cookie named "Orchard-", where does this one come from and why it can be not secured under this setting?
Thanks,

Maybe it's an authentication cookie, in which case it would be done here: https://github.com/OrchardCMS/Orchard/blob/dev/src/Orchard/Security/Providers/FormsAuthenticationService.cs


[BUG] Configuration not read from included files

Pyprland version
Which version did you use? (copy & paste the string returned by pypr version)
❯ pypr version
2.2.7

Describe the bug
Configuration settings in files added via the include config option are not added to overall configuration.
Example ~/.config/hypr/pyprland.toml
[pyprland]
plugins = [ "scratchpads" ]
include = ["~/.config/overrides/pyprland/99__testing.toml"]

[scratchpads.kitty]
command = "kitty --class kitty-scratchpad"
lazy = false
size = "74% 60%"
position = "13% 7%"
alt_toggle = true

And file /home/dante/.config/overrides/pyprland/99__testing.toml
[scratchpads.betterbird]
command = "betterbird"
animation = "fromRight"
lazy = true
alt_toggle = true

Yields the following behaviour when manually toggling scratchpads

❯ pypr toggle kitty working as expected
❯ pypr toggle betterbird triggering an error message saying Scratchpad betterbird not found

Having a single plugin spread into several files can be hard to predict and is then an implementation detail which I would not like have to describe and should be able to change in the future.
If you have all the scratchpads in one file does it work ?


Support include option for rsync

Hello,
Does this feature ok? I'm happy to submit a pull request.

@meoguru I think it's already done in the pending PR #7?

Yep, let's close it for now.


ARROW-10057: [C++] Add hand-written Parquet nested tests

One of the tests fails and is disabled.

LGTM, I'll look into the failing test case.

+1 thanks.


Standardize and automate event formatting

Problem Statement
Since the SDK now emits a handful of different event types, we might benefit from defining the interface of each supported event type and enforcing them in a more automated fashion (as opposed to manually adding/removing specific fields from events).
Solution Brainstorm
Find a way to define the expected fields of an event type (probably via a class) and create a mechanism that takes care of adding/removing the supported fields to/from an event based on type.

relay: https://github.com/getsentry/relay/tree/master/relay-event-schema/src/protocol

We added some typed dict for Event, so we will close this now.


Exclude err shadowing

Summary
This is a proposal to exclude variable shadowing from the linter, but only with err variables. This error has not helped me a single time, only annoyed me.
I added the exclude rule and a sample of what it lets us do (avoid err2, basically). I stole the idea from https://github.com/golangci/golangci-lint/issues/166#issuecomment-617517087.
What do you think?
Ticket Link
--
Checklist

[ ] Telemetry updated
[ ] Gated by experimental feature flag
[ ] Unit tests updated

Yes / no on this? I'm fine either way I guess. 🤷

I'm willing to give it a go :)

Merging this now, as it does not affect the code at all (I had to remove the sample I did when merging master here). The failing E2E test is not caused by this (it's failing everywhere).


Gpu optimised deferred rendering

What does the pull request do?

Currently just a hack to see if it fixes some gpu glitches.
What is the current behavior?

What is the updated/expected behavior with this PR?

How was the solution implemented (if it's not obvious)?

Checklist

[ ] Added unit tests (if possible)?
[ ] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/Avaloniaui.net with user documentation

Breaking changes

Fixed issues

@danwalmsley What is the status of this PR? Did you try to eliminate not needed dirty rect invalidation?


add good comments for linting to everything

i really need to just go through all the stuff and add all the comments so linting can work and be nice

went through the models and modules and commented all of them x_x also did a bit of clean up of stuff

ok... i think i've done all the commenting i'm going to do for now.....


vtk: 9.2.2 -> 9.2.5

Description of changes
Routine update.
results of nixpkgs-review pr on x64-NixOS (the sfepy failure is due to failing dep mpi4py and mayavi is a 3.11 issue):
2 packages failed to build:
python310Packages.sfepy python311Packages.mayavi

7 packages built:
f3d python310Packages.mayavi python310Packages.pyvista python310Packages.vtk python311Packages.vtk vtk_9 vtk_9_withQt5

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@ofborg build vtk_9 vtk_9_withQt5

Probably #187016 is still needed to get the Darwin build working.

Result of nixpkgs-review pr 212488 run on aarch64-darwin 1

3 packages failed to build:

python310Packages.pyvista
python310Packages.sfepy
python311Packages.mayavi

6 packages built:

f3d
python310Packages.mayavi
python310Packages.vtk
python311Packages.vtk
vtk_9
vtk_9_withQt5

The mayavi issue appears to be because python311Packages.apptools is broken ; the sfepy issue is because mpi4py is broken, and pyvista build on x64-NixOS so I'm not sure what the issue is on OS X.

The mayavi issue appears to be because python311Packages.apptools is broken ; the sfepy issue is because mpi4py is broken, and pyvista build on x64-NixOS so I'm not sure what the issue is on OS X.

mpi4py is only broken on x86_64-linux, so the issue is elsewhere. Anyway, sfepy and pyvista looks quite flaky on Hydra, so I think it should be fine.