Frozen editor assets

Related ticket https://github.com/CartoDB/cartodb/issues/14067

This PR alters the way editor assets are loaded and when they are generated.
Instead of generating them always, in order to save time, they should only be generated when we bump a new version we've introduced in config/editor_assets_version.json.
To achieve this, all the editor build output ends up in /assets/editor/<editor_version>, and the s3 grunt task has a new case which should upload to the appropriate place.
Also, on the backend side of this, we have to write a new helper that loads assets from this folder and from the appropriate s3 folder in production.

A question, imagine you download cartodb and compile your assets from scratch. Since you don't have previous assets, you will need to compile both builder and editor.
Then, Rails will look for the assets in different directories (according to the assets path). So, do these tasks compile editor versions into a different folder? They probably should, so the rails-generated links can find them. So we probably need a way to expose editor version to these tasks. What do you think?
This is specially relevant for new installations, but we should not forget those.

Editor assets are ending on public/assets/editor/<editor_version> and look exactly the same as before.
About a from scratch version, that's correct. I assume you mean a development environment.
As it is right now, you'd have to manually run the task. The plan was to document it somewhere in case someone needs it. The thing is you'd never see one of the old page unless you manually remove builder from an existing user, so it's already quite a manual process.
We could check on the frontend build if the editor assets folder exists, and if it doesn't, trigger the build automagically. Problem is nothing really guarantees that even if the folder's there, everything inside is fine.

Editor assets are ending on public/assets/editor/<editor_version> and look exactly the same as before.

Oh, I took a second look at the code. THis is finally a json instead of a .rb :+1:

The thing is you'd never see one of the old page unless you manually remove builder from an existing user, so it's already quite a manual process.

That makes sense. Ok to documenting this as extra steps in the installation guide. If you need editor, compile these assets. Ok ok.

I've removed the code that conditionally deploys from the Gruntfile, so let's do it the regular way instead. There's a task that runs the editor build and performs the upload to s3
Also, since now the assets are uploaded to s3 on staging, any future deploys while maintaining version name elsa will work.

 We're only missing

Platform branch: frozen_editor_assets_deployment. However, it has a small limitation, we have to deploy a version with a blank editor_version.json first.
We could check this in the platform script, but it would become more complicated and I feel deploying a version with a dummy file is easier. Open to change it though.


Fix page not found

View cannot render frontend/home.php because the template does not exist

fixed with latest update


Raise error for streamAgg when plan contains group by key.

Enhancement

related to https://github.com/pingcap/tidb/issues/39266


[JOSS Review] Add contribution guidelines

This issue is part of the JOSS review process available here: https://github.com/openjournals/joss-reviews/issues/5128

According to JOSS review criteria:
  There should be clear guidelines for third-parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

A guide for contributing should be added to the repository, see here as a starting point.

Thank you for pointing this out. We have now supplied contribution guidelines in CONTRIBUTIONS.md in root.

Great!
Just, the sublist in the "Reporting Issues" is miss formatted.

Thanks checking this and pointing that out. It's fixed now.


Readd Matt Butcher to RCs list

We accidentally removed Matt from the RCs list when resolving merge conflicts in #3.

(Stacked on #5)


constraints for maps

@albsch This PR brings support for maps and records. The tests for maps are not active yet, because tally/subtyping is still buggy.

@albsch I had to rebase the commits. The PR is currently reject because erlang's stdlib make use of overriding record field types. I will add this feature.


Fix vulnerability in npm package dicer

Dependabot and the npm alert about a high severity issue with the npm package "dicer". We should update to the newest version of nestjs/testing. But it introduces breaking changes so we might need to update some code.
npm audit:

@Tugark FYI

@Saela I've seen that one, but you're suggesting a downgrade. We are using nest 8.x, so forcing the update will install a lower version and I am not sure that is the way to go. Besides, it is - if I remember right - just a dev dependency, so it is not present in deployed code.
It is also mentioned in https://github.com/nestjs/nest/issues/9655. I would wait until they officialy upgrade it themselves.

@Tugark Yes as it is only a dev dependency we can wait. Otherwise I would have downgraded (as this is an ok way to go if there is a security issue. Unless it introduces a lot of breaking changes of course). I'll close this issue.


[PE-D][Tester E] Add Leave Bug (Concurrent leaves)

Is it intended to allows leaves that run concurrently with one another for the same person.
Can be replicated by adding leaves for the same employee that have dates that run concurrently with one another.

Labels: severity.Low type.FeatureFlaw
original: shyanyong/ped#2

Not allowed to fix, will include in planned enhancements


Fixed version of scripts added

#176
I added the report and scripts under a folder named liveMonitor_countTests in scripts folder.
Signed-off-by: Mehmet Geylani<EMAIL_ADDRESS>

hi @brngylni - for these repositories under the adoptium github organization, contributors need to sign an ECA, otherwise the eclipsefdn/eca check will fail.  Please create an Eclipse account and fill in/sign the ECA form.  Thanks!

hi @brngylni - for these repositories under the adoptium github organization, contributors need to sign an ECA, otherwise the eclipsefdn/eca check will fail. Please create an Eclipse account and fill in/sign the ECA form. Thanks!

OK I did it now. Check passed.

Guessing you should remove the binary .odt file, and potentially add .odt file to .gitignore

I removed the .odt file and attached it to a comment under a related. AdoptOpenJDK/openjdk-tests/#1744

Please add the copyright info for both of the files.

Please add the copyright info for both of the files.

Shall I add the author informations to py files?

We do not put author info in the scripts, but it would be good to add a 'co-authored by' commit msg as these are derived from @macarte's gist scripts...

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I ran the script for same folder but output isn't same as yours. How can I produce that error again?

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I added a parameter to ignore these errors to open function. Can you try now?

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I added a parameter to ignore these errors to open function. Can you try now?

If a file contains @test has codec issue and the error is ignored, what is the expected behaviour? Will the counter miss the test?

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I added a parameter to ignore these errors to open function. Can you try now?

If a file contains @test has codec issue and the error is ignored, what is the behaviour? Will the counter miss the test? You can add @test in the end of the file and see if it gets counted.

I tried scan all tests in openjdk. Final result is same. I am going to try that scenario too now.

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I added a parameter to ignore these errors to open function. Can you try now?

If a file contains @test has codec issue and the error is ignored, what is the behaviour? Will the counter miss the test? You can add @test in the end of the file and see if it gets counted.

I tried scan all tests in openjdk. Final result is same. I am going to try that scenario too now.

After a second thought, I think it will be better to use try, except clause to catch the error and give a warning if the file has any issue to open.

Thanks @brngylni  for trying it out, even if in this case the @test is counted, we can not be sure that it will be counted in other error scenarios. So I would think the previous comment will be a better solution.

e sure that it will be counted in other error scenarios. So I would think the previous comment will be a better solution.

ok I am going to change the logic.

Is something like that appropriate or shall we just give the warning and exclude that file from counting progress?
@renfeiw
found = False
    try:
        fopen = open(filepath,mode='r')
        fread = fopen.readlines()
        for line in fread:
            if '@test' in line:
                found = True
                break
    except Exception as e:
        print("File couldn't opened.")
        print(e)
        print("Trying to open again...")
        with open(filepath, mode='r', errors="ignore") as fopen:
            fread = fopen.readlines()
            for line in fread:
                if '@test' in line:
                    found = True
                    break

Is something like that appropriate or shall we just give the warning and exclude that file from counting progress?
@renfeiw
    found = False
    try:
        fopen = open(filepath,mode='r')
        fread = fopen.readlines()
        for line in fread:
            if '@test' in line:
                found = True
                break
    except Exception as e:
        print("File couldn't opened.")
        print(e)
        print("Trying to open again...")
        with open(filepath, mode='r', errors="ignore") as fopen:
            fread = fopen.readlines()
            for line in fread:
                if '@test' in line:
                    found = True
                    break

Output of this code for the troublesome file:
Counting tests in '2/openjdk-tests/openjdk/openjdk-jdk/test/langtools/tools/javac/unicode' ...

Found 17 java files

File couldn't opened.
'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte
Trying to open again...
. ................ 15

Found 15 java files containing @test

Yes, this is correct. Print the filepath in the warning message and change the message:
Trying to open again...
to be more clear such as:
Trying to ignore error and count the tests...
Also you might want to make a function for the read logic:
             for line in fread:
                 if '@test' in line:
                     found = True
                     break

so it doesn't need to be duplicated.

Is something like that appropriate or shall we just give the warning and exclude that file from counting progress?
@renfeiw
    found = False
    try:
        fopen = open(filepath,mode='r')
        fread = fopen.readlines()
        for line in fread:
            if '@test' in line:
                found = True
                break
    except Exception as e:
        print("File couldn't opened.")
        print(e)
        print("Trying to open again...")
        with open(filepath, mode='r', errors="ignore") as fopen:
            fread = fopen.readlines()
            for line in fread:
                if '@test' in line:
                    found = True
                    break

Output of this code for the troublesome file:
Counting tests in '2/openjdk-tests/openjdk/openjdk-jdk/test/langtools/tools/javac/unicode' ...

Found 17 java files

File couldn't opened.
'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte
Trying to open again...
. ................ 15

Found 15 java files containing @test

Yes, this is correct. Print the filepath in the warning message and change the message:
Trying to open again...
to be more clear such as:
Trying to ignore error and count the tests...
Also you might want to make a function for the read logic:
             for line in fread:
                 if '@test' in line:
                     found = True
                     break

so it doesn't need to be duplicated.

Final code is that:
def control_file(file):
    fread = file.readlines()
    for line in fread:
        if '@test' in line:
            return True
    return False

# count per directory and running count
count = 0
paths = {}
for root, filepath, filename in full_file_paths:
    found = False
    try:
        found = control_file(open(filepath,mode='r'))
    except Exception as e:
        print("File couldn't opened.")
        print("File Path = ", filepath)
        print(e)
        print("\nTrying to ignore error and count the tests...")
        found = control_file(open(filepath, mode='r', errors="ignore"))
    if found:
        count = count + 1
        subdir = os.path.relpath(root, searchDir)
        if subdir in paths:
            paths[subdir] = paths[subdir] + 1
        else:
            paths[subdir] = 1

I am going to commit if it is good.

Thanks it looks good to me, please update the commit and paste the test result in this PR. Don't forget to add the copyright header.

I also run the count script found it will fail on one of the file: ../openjdk/openjdk-jdk/test/langtools/tools/javac/unicode/Unmappable.java with the following error message:
Traceback (most recent call last):
  File "scripts/count-java-tests.py", line 38, in <module>
    fread = fopen.readlines()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 311: invalid continuation byte

Looks like there is special character in the file, so you cannot assume utf-8 codec to read all files. You can search online to solve this issue, a quick search gives possible solution like this:https://stackoverflow.com/questions/33819557/unicodedecodeerror-utf-8-codec-while-reading-a-csv-file

I added a parameter to ignore these errors to open function. Can you try now?

If a file contains @test has codec issue and the error is ignored, what is the behaviour? Will the counter miss the test? You can add @test in the end of the file and see if it gets counted.

I tried scan all tests in openjdk. Final result is same. I am going to try that scenario too now.

After a second thought, I think it will be better to use try, except clause to catch the error and give a warning if the file has any issue to open.

Thanks it looks good to me, please update the commit and paste the test result in this PR. Don't forget to add the copyright header.

Ok, thank you for the good guidance by the way.

@brngylni - can you address @renfeiw's review request please

@brngylni - can you address @renfeiw's review request please

I have re-requested review.

Could you please paste the test result in this PR. And please add the copyright header.

Could you please paste the test result in this PR. And please add the copyright header.

Do you mean output of scripts by saying test results ?

Yes, you can paste part of the test results here so we can verify the output.

Yes, you can paste part of the test results here so we can verify the output.

Here is the output of count-java-tests.py :
ghost@ghost-VirtualBox:~/Desktop/TKG/TKG/scripts/liveMonitor_countTests$  python3 -u count-java-tests.py /home/ghost/Desktop/openjdk-tests/openjdk/openjdk-jdk/test/jdk/java/

Counting tests in '/home/ghost/Desktop/openjdk-tests/openjdk/openjdk-jdk/test/jdk/java/' ...

Found 6984 java files

awt/AlphaComposite ............................................. 2
awt/AppContext/ApplicationThreadsStop .......................... 1

awt/BasicStroke ................................................ 4
awt/Button/ActionEventTest ..................................... 1

awt/Checkbox/SetStateExcessEvent ............................... 1
awt/Choice/ChoiceFromMaximizedFrame ............................ 1

awt/Choice/ChoiceHiDpi ......................................... 1
awt/Choice/ChoiceLocationTest .................................. 1
...
...
.
Found 368 java files containing @test

Thanks, please add the copyright.

Thanks, please add the copyright.

I added the copyright to commits and first comment of the PR. Where else should I add ?

Yes, you can paste part of the test results here so we can verify the output.

Here is the output of jtreg-monitor.py :
ghost@ghost-VirtualBox:~/Desktop/openjdk-tests/TKG$ make _sanity.openjdk | python3 -u  /home/ghost/Desktop/TKG/TKG/scripts/liveMonitor_countTests/jtreg-monitor.py

============== MONITORING STDIN FOR JTREG RESULTS ==============

openjdk version "11.0.10" 2021-01-19
OpenJDK Runtime Environment (build 11.0.10+9-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.10+9-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)
0:00:31.863370 / java/lang/HashCode.java / {}
TEST (1) 0:00:00.000232 @ 2021-04-21 22:03:29): java/lang/HashCode.java Passed
0:00:31.863602 / java/lang/HashCode.java / {'Passed': 1}
0:00:32.291063 / java/lang/Compare.java / {'Passed': 1}
TEST (2) 0:00:00.000130 @ 2021-04-21 22:03:30): java/lang/Compare.java Passed
0:00:32.291193 / java/lang/Compare.java / {'Passed': 2}
0:00:32.428415 / java/lang/ToString.java / {'Passed': 2}
...
...
...

Thanks, please add the copyright.

Excuse me, I added Co-authored information to my commit messages and first comment of this pull request. Can you please explain where else should I add to ?

@brngylni - An example of a copyright header at the top of a python script is here: https://github.com/adoptium/TKG/blob/master/scripts/testBot/disable.py#L1-L13
I think Renfei is asking you to add that same header to the 2 python scripts you are adding in this PR.

@brngylni - An example of a copyright header at the top of a python script is here: https://github.com/adoptium/TKG/blob/master/scripts/testBot/disable.py#L1-L13
I think Renfei is asking you to add that same header to the 2 python scripts you are adding in this PR.

Thank you very much. I am going to add it now.


Allow HTML in event session descriptions

This allows special formatting for event titles. The template only requires the safe tag.

Fixed in 0.5.1, and will not currently allow HTML within titles as this will make the links harder to understand.


Sequence and scalar nested types should not generate a separate class/struct

As per the conversation in this PR and offline, it would be simpler to express sequence and scalar nested types as is instead of creating another nested class/struct for it. This will be implemented in a separate PR.
Example ISL:
type::{
   name: foo,
   fields: {
      sequence_type: { type: list, element: int },
      scalar_type: { type: string }
   }
}

Output Java:
class Foo {
   private sequence_type: ArrayList<Integer>; // current impl would treat it as `NestedTypeX`
   private scalar_type: String; // current impl would treat it as `NestedTypeY`
   ...
}

Originally posted by @desaikd in https://github.com/amazon-ion/ion-cli/issues/109#issuecomment-2128195270

Completed with #111


FileNotFound after using FFmpegMerger

Checklist

[ x] I'm asking a question
[ x] I've looked through the README and FAQ for similar questions
[ x] I've searched the bugtracker for similar questions including closed ones

Question

I'm using youtube-dl for a python script to download video and audio, then merge them as a post process. The issue I'm encountering is a FileNotFoundError that occurs after a successful merge. Can someone help me troubleshoot the issue? It appears to merge the files as expected, then delete the two files that were merged, then attempt a merge on a file that was deleted.
Here's the full output of the error:
[Reddit] llp4n1j69ir51: Downloading MPD manifest
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 24
[download] Destination: llp4n1j69ir51-llp4n1j69ir51.fhls-438.mp4
[download] 100% of 4.34MiB in 00:03
[download] Destination: llp4n1j69ir51-llp4n1j69ir51.fdash-audio_0_131726.m4a
[download] 100% of 2.41MiB in 00:00
[ffmpeg] Merging formats into "llp4n1j69ir51-llp4n1j69ir51.mp4"
Deleting original file llp4n1j69ir51-llp4n1j69ir51.fhls-438.mp4 (pass -k to keep)
Deleting original file llp4n1j69ir51-llp4n1j69ir51.fdash-audio_0_131726.m4a (pass -k to keep)
[ffmpeg] Merging formats into "llp4n1j69ir51-llp4n1j69ir51.mp4"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/code/download_videos/download_videos.py", line 60, in download_with_youtube_dl
    ydl.download([video[0]])
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 2018, in download
    res = self.extract_info(
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 808, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 863, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 1644, in process_video_result
    self.process_info(new_info)
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 2000, in process_info
    self.post_process(filename, info_dict)
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 2065, in post_process
    files_to_delete, info = pp.run(info)
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 523, in run
    self.run_ffmpeg_multiple_files(info['__files_to_merge'], temp_filename, args)
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 209, in run_ffmpeg_multiple_files
    oldest_mtime = min(
  File "/usr/local/lib/python3.8/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 210, in <genexpr>
    os.stat(encodeFilename(path)).st_mtime for path in input_paths)
FileNotFoundError: [Errno 2] No such file or directory: 'llp4n1j69ir51-llp4n1j69ir51.fhls-438.mp4'

For reference, this is my code:
    def download_with_youtube_dl(self, video_data: list):

        os.chdir(self.video_directory)

        yt_dl_opts = {
            'format': 'bestvideo+bestaudio',
            'postprocessors': [{
                'key': 'FFmpegMerger',
            }]
        }

        for video in video_data:
            with YoutubeDL(yt_dl_opts) as ydl:
                ydl.download([video[0]])

On the 9th line it says it's deleting that file before the merge. Do you need the -k flag?

On the 9th line it says it's deleting that file before the merge. Do you need the -k flag?

I'll walk through the log to answer question. Youtube-dl pulls the audio and video as two separate files. That happens here:
[download] Destination: llp4n1j69ir51-llp4n1j69ir51.fhls-438.mp4
[download] 100% of 4.34MiB in 00:03
[download] Destination: llp4n1j69ir51-llp4n1j69ir51.fdash-audio_0_131726.m4a
[download] 100% of 2.41MiB in 00:00

Then the files are merged into a new file. That happens here:
[ffmpeg] Merging formats into "llp4n1j69ir51-llp4n1j69ir51.mp4"

Then the files that were used for the merge are deleted. That happens here:
Deleting original file llp4n1j69ir51-llp4n1j69ir51.fhls-438.mp4 (pass -k to keep)
Deleting original file llp4n1j69ir51-llp4n1j69ir51.fdash-audio_0_131726.m4a (pass -k to keep)

Then it tries to merge again, but the files that were deleted. That happens here:
[ffmpeg] Merging formats into "llp4n1j69ir51-llp4n1j69ir51.mp4"

The question is: why does it try to merge again when the merge already occurred before deleting the original two files? I shouldn't have to keep the original two files around because the merge already happened. In testing, the merged video I get has the video and sound that I expect, so I'm not sure why a second merge needs to take place? It feels like a bug.

First merge is automatic by youtube-dl, second one is your designation.


upgrade sanity version

Description
This change moves to a newer version of sanity which doesn't reference a vite vulnerability. A separate PR will be created to update vitest which also references a vulnerable vite version.
helps close #274
The latest is 3.33.0, but I figured to reduce risk I'd do the minimum bumping needed to get past the vite issue. More than happy to upgrade to latest though. One benefit of 3.29.0 and up is that they're signed and have provenance turned on.
More info on vite vulnerability
Essentially, we just need to be on > 4.5.2 or later
output of pnpm why vite -r after the upgrade (vitest has been omitted since it's a dev dependency and will be handled in another pull request.)
❯ pn why vite -r
Legend: production dependency, optional only, dev only

<EMAIL_ADDRESS>/Users/sawyerburnett/git-repos/formidable/groqd/examples/playground-example

dependencies:
groqd-playground link:../../packages/groqd-playground
└─┬ sanity 3.15.0
  ├─┬ @vitejs/plugin-react 4.2.1
  │ └── vite 4.5.2 peer
  └── vite 4.5.2
sanity 3.15.0
├─┬ @vitejs/plugin-react 4.2.1
│ └── vite 4.5.2 peer
└── vite 4.5.2

<EMAIL_ADDRESS>/Users/sawyerburnett/git-repos/formidable/groqd/packages/groqd-playground

dependencies:
sanity 3.15.0
├─┬ @vitejs/plugin-react 4.2.1
│ └── vite 4.5.2 peer
└── vite 4.5.2

Type of Change

[x] dependency update

How Has This Been Tested?
Unit tests have been ran and passed. Sanity changelog was reviewed for breaking changes.
Checklist: (Feel free to delete this section upon completion)

[x] I have performed a self-review of my own code
[x] I have run all builds, tests, and linting and all checks pass

Nothing tricky about this one, thanks for updating!


Fail decreasing

This pull request implements the --fail-decreasing command line option, which allows tarpaulin to return an error if the coverage percentage has decreased, similar to --fail-under which fails the run if the coverage is under a certain threshold.
Current feature set implemented:

If --fail-under is used by it self, it should behave like before
If --fail-decreasing is used by it self, it will return an error if the coverage percentage is decreasing.
If --fail-under and --fail-decreasing is used together is works as follows, if the coverage is below the threshold, it error out if the coverage is decreasing, if the coverage is above the threshold, the coverage can increase and decrease freely.

I have had a quick look at the tests, but are uncertain how and if I should make a test case for this, becaues it would require multi step tests, a first run, one increasing, one returning the same coverage, and one where it is decreasing.
This fixes: #1411
Note: I'm new to rust, so if you have any changes you want made, there could be some terminoligy, that i'm not fluent in or familier with yet :-)

Just at work so will look properly later, but I use set_profraw_dir on the target to stop tests clobbering each other.

I tried that, but couldn't get it to work, ended up using config.set_target_dir() instead, which works nicely.

I've thought about this more and I've decided it's not something I'm looking to merge into tarpaulin, there's some complexity in the behaviour RE times when fail-decreasing doesn't fail if coverage decrease and also the vast majority of users are running in CI and then this type of functionality is provided by other services like coveralls etc.


[TypeScript SDK] Expose Call API that can call any RPC endpoint

We should add a call(endpoint, params) method in https://github.com/MystenLabs/sui/blob/main/sdk/typescript/src/providers/json-rpc-provider.ts that people can use to invoke any RPC endpoint. This will relieve some of our pressure to keep TS SDK in sync with the JSON RPC API

Completed https://github.com/MystenLabs/sui/pull/7384


fix: remove racy endpoint PENDING_ACCEPTED_ITEMS_ENDPOINT for CURRENT_ACCEPTED_ITEMS_ENDPOINT

Do we actually need to cache this? I'd imagine to only use this endpoint for the last session we want to fetch. I think that's lower complexity overall than trying to adapt the cache to potentially non-final responses.

Also needs backporting since the previous version was backported too #4134 and we don't want two different APIs to live on in the next release.
@dpc don't we also have to bump the minor API version here?

@dpc don't we also have to bump the minor API version here?

Right.

Successfully created backport PR for releases/v0.2:

#4180

I get the feeling we should also document when an API was introduced and enforce that via CI somehow. Otherwise it will be fairly hard to figure out later on.

I get the feeling we should also document when an API was introduced and enforce that via CI somehow.

Semgrep rule to put a specially formatted comment on every api_endpoint!?
Or maybe just an extra argument to the macro...


feat(volume-type): add gp3 and io2 volume types to allowed types

Description

io2 and gp3 are the latest generation IOPS and general purpose SSD volumes, allow them to be managed in this cookbook: https://aws.amazon.com/ebs/volume-types/

Issues Resolved

Check List

[x] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[ ] New functionality includes testing.
[x] New functionality has been documented in the README if applicable
[x] All commits have been signed for the Developer Certificate of Origin. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

Very cool stuff @chrisminton. Thanks for getting all the input validations added there as well


Layout backtracking

Currently Row/Column/Grid are trying to distribute their elements while respecting the maximum size of the window.
The issue is the algorithm calculates the size of each element and tries to fit that in, but if the total size of all elements in one dimension is bigger then the window, it will not try to make the other elements smaller to fit everything, cutting off elements even though it could easily wrap text in earlier elements for example.
A solution is basically to introduce some correcting code that tries to reduce the dimensions of the elements as much as possible when it sees that it hit that limit.
I plan to do that PR myself, just waiting for #189.

This will be very hard to do right and will affect layout performance considerably. It also makes layout less predictable, as you never know how much space will elements take.
We can explore alternatives to the current layout strategies, but I would do that in completely separate widgets. The current ones are meant to be explicit and fast.

This will be very hard to do right and will affect layout performance considerably.

I don't think this should be an issue, my current experiments are quite cheap, I'm basically checking limits only once at the end and then adjust them with some basic math and min/max.

It also makes layout less predictable, as you never know how much space will elements take.

So I think this will be an improvement, we can also make it opt-in, which could also "solve" the performance issue.
We could also discuss making the window scroll when something doesn't fit, but I guess thats even more off-topic.

We can explore alternatives to the current layout strategies, but I would do that in completely separate widgets.

Any thought on which ones specifically?

I don't think this should be an issue, my current experiments are quite cheap, I'm basically checking limits only once at the end and then adjust them with some basic math and min/max.

How do you do this exactly? If you decide to reduce the width of a previous element, you will need to measure it again as contents may be wrapping differently, affecting its height. That is expensive.
In the end, we will be trying to reimplement Flexbox and end up with something similar to stretch, which we used in the past and performance was much worse than now.

It's predictable in the sense that layout always will behave the same and it always forces you to be explicit. If you want things to be responsive and fit nicely, you should be using Fill or FillPortion.
I agree this is something that needs more polishing, but it's hardly our main priority right now.

Any thought on which ones specifically?

New ones.

How do you do this exactly? If you decide to reduce the bounds of a previous element, you will need to measure it again as contents may be wrapping differently, affecting its width or height. That is expensive.

Yes, that is totally true, I totally missed the remeasuring part 😕. Me derp.
Potentially this would only "double" the cost, lol.

I agree this is something that needs more polishing, but it's hardly our main priority right now.

That sounds reasonable. I was already experimenting on grid, but I can totally agree that this isn't the priority right now.

Potentially this would only "double" the cost, lol.

Not really, because widgets are recursive. You can have many levels of nested rows and columns. If they all backtrack and try to fit elements smartly, then the cost will add up quickly (i.e. remeasuring from a top-level column could trigger a lot of measurements in its children and so on).

That sounds reasonable. I was already experimenting on grid, but I can totally agree that this isn't the priority right now.

Don't get me wrong, I would love for folks to explore new layout strategies! But I think it's something we need to discuss thoroughly, measure performance, and consider tradeoffs. We are not ready to write code for this yet.


[Ethereum] Add amount to contract and fix data variable in case transfer

#1210 followup

transfer and contract underlaying is same, separate cases allow user adding Transfer, Smart Contract Call easily on UI
Fix transfer case wrong data variable
some cleanup

codecov sometimes complains decrease coverage by 0.01%.

LGTM. Let's merge and release a new version before Christmas 🎉


[North Star Applicant UI] Accessibility audit

Go through the app and look for a11y issues.
Right now, it's passing the Axe a11y test, but we should look in more depth to see if there are any issues

Notes from handoff

Filed a bug with Google Core a11y testing: https://b.corp.google.com/issues/352522787

A11y test cases. Feel free to update


add stream tag

Comparing analytics data with different GA4 tags defined to viz and as data streams for a main viz tag.

merging for testing


Complete all README info

Adds all the information to the readme file that helps the user with installing and using GridGopher.

I think this PR is ready for review and merge. There are still two sections of the README that are left unfinished but considering that we're still developing the tool, they would likely need to be revised a lot anyways. Let's get this checked for clarity, typos, and grammar mistakes and proceed with the merge if everything looks good.

Thank you @antlet for the review. I pushed all the changes that your requested. I also added table of contents for the README and Schemas markdown file to make them easier to navigate. Please take another look at the changes when you get a chance. Thanks!


I cant run the importer, and having no error

I'm submitting a bug where the importer dropdown is not working on Windows 10
[x] bug report
[ ] question about the decisions made in the repository
Action taken

i create folder on D:/askmike/gekko
i clone the reppo
i did npm install
i did node gekko --ui
i went to local data, try the importer and didnt have the combobox
i googled about the bug
i did cd D:/askmike/gekko/exchange and npm i --only=production, still failed
i googled again
i did cd D:/askmike/gekko npm i --only=production, still failed
i googled again
i did npm install lodash@2x,still failed

(image gekko1.png and gekko2.png)

it gives me no error, just blank importer (gekko4.png)

do i need to provide api key? but when i want to provide api key for binance, i can only provide it with bitfinex api, and it doesnt have any api key for other exchange (image gekko3.png), is it just me or thats an expected result?

Expected result  i want to be able to choose my exchange (such as binance)
Actual result i can not choose anything
Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, etc)

It appears your console is not actually showing the console messages because you have the what's new tab highlighted. X that or click console to the left of it and see if there are any errors.
I'm almost certain that there will be errors since your UI is not loading correctly.

i solved this issue by installing gekko using docker. and since im in windows 10, i need to switch my docker container to linux container. and its good to go. hope it helps others for those who have the same issue with me


优化warmup

PR types

PR changes

Describe

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


 SCM input should now be empty
Reload the workbench. SCM input should still be empty


[WIP] SCTP: RTCSctpTransport, RTCDtlsTransport, and RTCIceTransport

#83 This is where I started the entire proposal and this is the main PR for it. In summary I am trying to eliminate networkManager and instead break down the different functionalities into their respective protocol layers. SCTP vs. DTLS vs. ICE/UDP vs. RTP

DTLS 1.2 was implemented out of tree https://github.com/pions/dtls
ICE refactor done here https://github.com/pions/webrtc/pull/224
SCTP hasn't been done yet, but will probably be moved to github.com/pions/sctp when everything else lands


Allow users to specify data alignment

In the mailing list I raised the question about data being aligned.
I provided a small code example that showed how data could be misaligned (code in python with a recent version of netcdf4-python)
  Code Example
import xarray as xr
import numpy as np
import netCDF4
from pathlib import Path

basic_filename = "basic_file_netcdf4.nc"
if Path(basic_filename).exists():
    Path(basic_filename).unlink()

dataset = xr.DataArray(
    np.zeros((3072, 3072), dtype='uint8'),
    dims=("y", "x"),
    coords={
        "y": np.arange(3072, dtype=int),
        "x": np.arange(3072, dtype=int),
    },
    name='images').to_dataset()

dataset.to_netcdf(basic_filename, format="NETCDF4", engine="netcdf4")

import h5py
h5file = h5py.File(basic_filename)
h5dataset = h5file.get("images")
offset = h5dataset.id.get_offset()
print(offset % 4096)
print(offset % 2048)
print(offset % 1024)
print(offset % 512)
print(offset % 128)
print(offset % 64)

"""
3206
1158
134
134
6
6
"""

We came to the point where we determined that he user should set the File Access Property at Creation time, near:
https://github.com/Unidata/netcdf-c/blob/988e771a9ed99619c2e3261aea81f127dd7fa3d8/libhdf5/hdf5open.c#L772
I'm opening this as an issue to keep track of the conversation on github.
cc: @edhartnett
Mailing list link: https://www.unidata.ucar.edu/mailing_lists/archives/netcdfgroup/2022/msg00000.html

Ed asked:

Is this change always on? Or does the user turn it on and off?

I believe this change is "always on" from my understanding, at file opening time???
Data alignment
    Sometimes file access is faster if certain data elements are aligned in a specific manner.
    This can be controlled by setting alignment properties via the H5Pset_alignment function.
    There are two values involved:

        A threshhold value
        An alignment interval

    Any allocation request at least as large as the threshold will be aligned on an address that
    is a multiple of the alignment interval.

I presume you could change the alignment by closing and opening the file. It seems silly that it is a property for the file as a whole at opening time, but I understand that memory management is tricky and they might be trying to avoid a corner case.
My code for patching h5netcdf is the following, and should be quite similar
from h5py._hl.files import make_fapl as _make_fapl
import h5py
from functools import wraps

@wraps(_make_fapl)
def make_fapl(driver, libver, rdcc_nslots, rdcc_nbytes, rdcc_w0, locking,
              page_buf_size, min_meta_keep, min_raw_keep, **kwds):
    fapl = _make_fapl(driver, libver, rdcc_nslots, rdcc_nbytes, rdcc_w0, locking,
                      page_buf_size, min_meta_keep, min_raw_keep, **kwds)
    fapl.set_alignment(1024 * 1024 - 4096, 4096)
    return fapl

h5py._hl.files.make_fapl = make_fapl

fapl is called at creation / opening time:
https://github.com/h5py/h5py/blob/9c9033849e647d4254923bf9b50fcdedc1a320b3/h5py/_hl/files.py#L502
Cross referencing the post on h5py: https://github.com/h5py/h5py/issues/2034

Just writing down other notes:  it seems that there is some interplay between the file space strategy too:
https://docs.hdfgroup.org/hdf5/v1_12/group___f_a_p_l.html#gab99d5af749aeb3896fd9e3ceb273677a

cc @edwardhartnett  i realize you have two accounts.

I am going to try to set the alignment on an open file. Can it be detected by h5dump?

I don't think the data alignment is persistent.
It is part of the File Access Property List, not File Creation Property List.
I've been:
Using the following h5py code for chunked data
import h5py
h5file = h5py.File(file_saved)
h5dataset = h5file.get("data")

for i in range(h5dataset.id.get_num_chunks()):
    print(h5dataset.id.get_chunk_info(i).byte_offset % 4096)

import h5py
h5file = h5py.File(file_saved)
h5dataset = h5file.get("data")
offset = h5dataset.id.get_offset() % 4096
print(offset)

The datasets are generated by:

Using h5netcdf with a similar hack.
Data that is larger than the threshold is created.
Confirmed that it is aligned.

I think you can use:
h5ls --verbose --address YOUR_NC_FILE.nc

In light of this whole discussion (especially around the backward compatible API), there may be a slew of other options that would help those of us that are performance minded. Things like the cache size, and other access property list items.
It might be a good idea to think of how to allow the users to have the most flexibility for future tweaks.

How about this?  Add a new function to the netCDF API, to be optionally called BEFORE opening a file.  A new function does not harm backward API compatibility.  This is for the C API, similar for Python.  Tweak the name as you see fit, I don't care.
nc_set_alignment (threshold, alignment)

This would simply change the default behavior of nc_create and nc_open, and invoke H5Pset_alignment under the hood, at the appropriate moment before H5Fcreate or H5Fopen.
Because there is no existing file handle or FAPL at the user level before the netCDF open calls, the simplest implementation would be for the alignment settings to be global in some sense, and persist for multiple file opens, unless changed though another call.
My understanding is that changing object alignment like this, should have no impact at all on backward format compatibility.

That is a really good solution, thanks. And nothing is lost because the user can set and reset
the global flag before opening a file. so it would be possible to effectively make it per-file
if necessary.
Looking ahead, and as has been noted, there are other properties that may need to be set
via either an access fapl or a create fcpl. So we can either make this a one-off function,
or can generalize it to set other kinds of properties. I suppose it is ironic that we
are in-effect re-inventing the HDF5 properties mechanism :-)

In order to implement Greg's solution. I propose adding this function
to the netcdf API:
nc_set_hdf5_alignment(int threshold, int alignment)

I see alot of trouble with "global settings".
The main challenge is that you want this to happen at the "application" level, but the definition of an "application" can change quite a bit.
It starts to somewhat start a conflict between different libraries, each optimizing for a different "default" usecase. In python at least, where "loading" a library is not very different from "executing" the script, it may start to conflict with the import order of things. Things might get lazy loaded in different order causing conflict between settings.
Furthermore, global settings also start to require "an access control mechanism", locks, coordination, or other.
If you want like to have global settings to start, I think that is a good way to begin things. However, would it be possible to request have an explicit API too? I'm happy to count it a "future" addition, but so long as it is understood that the "global settings" are not always desirable.

@hmaarrfk I do not understand your point about global settings. Actually we already have some global settings:
/* Set the default nc_create format to NC_FORMAT_CLASSIC, NC_FORMAT_64BIT,
 * NC_FORMAT_CDF5, NC_FORMAT_NETCDF4, or NC_FORMAT_NETCDF4_CLASSIC */
EXTERNL int
nc_set_default_format(int format, int *old_formatp);

/* Set the cache size, nelems, and preemption policy. */
EXTERNL int
nc_set_chunk_cache(size_t size, size_t nelems, float preemption);

/* Get the cache size, nelems, and preemption policy. */
EXTERNL int
nc_get_chunk_cache(size_t *sizep, size_t *nelemsp, float *preemptionp);

So this function would act the same way and should be named similarly. I would suggest not mentioning "hdf5" in the function name, since it's certainly conceivable that some other backend might one day allow control of alignment. (Does Zarr?)
I would suggest simply:
nc_set_alignment()/nc_get_alignment().
Just as with, for example nc_set_chunk_cache(), calling nc_set_alignment() will apply to all subsequent file opens.

It is very conceivable to me, that one application may be using two netcdf files with vastly different optimization settings.
One might be on a network drive, the other on a local drive.
As such, global settings like this typically cause a clash. It would be nice to be able to override them, even if the initial API is "global-first".

Good point. I am going to have to reconsider your original solution, although
it will require some significant refactoring of existing code, I think,

I too am not too excited that you can't change the memory allocator settings in HDF5 after a file is open. It seems a little silly. However, I know they are very interested in parallel access to files in a shared underlying file system. A tough problem.
I think the API as i proposed it would also me alot of work for me exposing it to high level libraries.

In terms of exposing it to higher level libraries, the nc_set_alignment API is in my experience
the easiest. Ed is correct that the nc_set_alignment approach already has analogs in the
chunk cache API.

already has analogs in the chunk cache API.

Right. This means that you aren't really making this kind of optimization tuning any worse than it was before.
I presume once you start to understand the scope of parameters that your users want later, you can start to build an API that can override the defaults on a per function call.

Perfect is the enemy of good enough!

@hmaarrfk, by "global setting" I meant only that the alignment parameters would persist from one nc_open call to the next, if the user neglected to call nc_set_alignment between nc_open calls.  This function would not change alignment for any previously opened files.

Here is a description of what I propose to implement.
Add support for setting HDF5 alignment property when creating a file
re: https://github.com/Unidata/netcdf-c/issues/2177
re: https://github.com/Unidata/netcdf-c/pull/2178
Provide get/set functions to store global data alignment information
and apply it when a file is created.
The api is as follows:
int nc_set_alignment(int threshold, int alignment);
int nc_get_alignment(int* thresholdp, int* alignmentp);

If defined, then for every file created (via nc_create())
after the call to nc_set_alignment the HDF5 function
H5Pset_alignment is applied to the created function using
the current global threshold and alignment values.
The nc_get_alignment function return the last values set by nc_set_alignment.
If nc_set_alignment has not been called, then it returns the value 0 for both
threshold and alignment.

Add "for every file opened", as well as every file created.  (Alignment is a non-persistent access property.  As such, the same alignment options should be provided for re-opened existing files, as well as for new files.)
Same paragraph, I think you meant to say "... H5Pset_alignment is applied to the created FILE using ..."
Suggest alternate wording, "using the MOST RECENTLY SET threshold and alignment values."  This to avoid misunderstanding about the term "global".

Also, I need a test case; any suggestions?

i can provide a test case (pseudo code)

without alignment set, the variables are allocated at any offset. for uint8, they offset can quite well be anything.
Create a file with alignment settings of Threshold 512, alignment 4096
Create a variable 513 bytes in chunk size.
Write the variable will have a byte offset that is %4096 == 0 in storage.
close the file
Open the file with HDF5 API.
Find the HDF5 dataset check that the single chunk, or multiple chunks are all located at an offset of 4096.

For files that are edited, existing variables will remain in place. New variables (that are larger than the threshold) will be aligned.
In my test suite, I've avoided checking that without defining the alignment settings variable would not be aligned because there is a 1/4096 that it will be aligned.

Just an FYI:
On the HDF5 forum, it is confirmed that it must be specified at open time:
https://forum.hdfgroup.org/t/dynamically-change-the-file-access-property-list/9314/3

No, since they do not depend on the file, they are free-standing.

It is not clear to me that setting alignment on nc_open has any meaning.
because it would seem to interfere with the alignment of the variables
already in the file. Note that although alignment is technically not persistent,
it does have a detectable effect on data allocated in an existing file.

H5Pset_alignment settings operate only when allocating low-level file objects, such as data chunks, at the physical disk space level.  At this level, there is no sense of physical address alignment between chunks or other file objects.  There is never any interference with alignment of previous variables, or parts of variables, etc.
For this type of alignment API to be complete for netCDF, it should apply to re-opened files as well as newly created files.  It would be good if someone would check my analysis.
https://portal.hdfgroup.org/display/HDF5/H5P_SET_ALIGNMENT
or
https://docs.hdfgroup.org/hdf5/develop/group___f_a_p_l.html#title41

Alternatively, try a modification of the above test case from @hmaarrfk.  Close and re-open the file, then write a second chunk, then close and test as per #6-#7 above.  I predict that the first chunk will be aligned and the second chunk not aligned, unless nc_open is upgraded for alignment settings.

Here is a test program, but it does not seem to work as expected.
#include <nc_tests.h>
#include "err_macros.h"

#include <hdf5.h>
#include <H5DSpublic.h>

#define THRESHOLD 512
#define ALIGNMENT 4096

#define CHUNKSIZE 513

int
main(int argc, char **argv)
{
    int i,ncid, varid, dimids[1];
    size_t chunks[1];
    unsigned char data[CHUNKSIZE];
    hid_t fileid, grpid, datasetid;
    hid_t dxpl_id = H5P_DEFAULT; /*data transfer property list */
    unsigned int filter_mask = 0;
    hsize_t hoffset[1];

    H5Eset_auto2(H5E_DEFAULT,(H5E_auto2_t)H5Eprint1,stderr);

    printf("\n*** Testing HDF5 alignment.\n");

    if(nc_set_alignment(THRESHOLD,ALIGNMENT)) ERR;
    if (nc_create("tst_alignment.nc", NC_NETCDF4, &ncid)) ERR;
    if (nc_def_dim(ncid, "d0", CHUNKSIZE, &dimids[0])) ERR;
    if (nc_def_var(ncid, "var", NC_UBYTE, 1, dimids, &varid)) ERR;
    chunks[0] = CHUNKSIZE;
    if (nc_def_var_chunking(ncid, varid, NC_CHUNKED, chunks)) ERR;
    if (nc_enddef(ncid)) ERR;

    for(i=0;i<CHUNKSIZE;i++) data[i] = (i)%2;
    if(nc_put_var(ncid,varid,data)) ERR;

    if (nc_close(ncid)) ERR;

    /* Use HDF5 API to verify */

    if ((fileid = H5Fopen("tst_alignment.nc", H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) ERR;
    if ((grpid = H5Gopen1(fileid, "/")) < 0) ERR;
    if ((datasetid = H5Dopen1(grpid, "var")) < 0) ERR;

    memset(data,0,sizeof(data));
    hoffset[0] = 0;
    if(H5Dread_chunk(datasetid, dxpl_id, hoffset, &filter_mask, data) < 0) ERR;

    printf("offset=%lu   offset %% alignment=%lu\n",(unsigned long)hoffset, (((unsigned long)hoffset) % ALIGNMENT));
    for(i=0;i<CHUNKSIZE;i++) {
        if(data[i] != (i)%2) {
	    printf("data[%d] mismatch\n",i);
	}
    }

    if (H5Dclose(datasetid) < 0) ERR;
    if (H5Gclose(grpid) < 0) ERR;
    if (H5Fclose(fileid) < 0) ERR;

    SUMMARIZE_ERR;
    FINAL_RESULTS;
}

I also tried using H5Dget_offset on the whole dataset, I get this.
chunksize=513 threshold=512 alignment=4096
H5Dget_offset: addr=18446744073709551615 addr % alignment=4095
H5Dread_chunk: offset=140737488347024   offset % alignment=3984

Use one of the H5Dget_chunk_info* functions, not H5Dread_chunk, to get the physical offset of a chunk within the file.
H5Dget_offset should have worked for the whole dataset offset.  I do not see the problem there.  However, that might be displaying the offset of the dataset head node, rather than the first data chunk.
The utility command h5ls --verbose --address YOUR_NC_FILE.nc suggested by @hmaarrfk seems to display file offsets correctly, but labeled as "Location" rather than "Address".  You might give that a try on your test file.

For what its worth, I had to add the following patch to my builds to make the alignment workout. You have to hit both the creation of the files, and the opening of the files
diff --git a/libhdf5/hdf5create.c b/libhdf5/hdf5create.c
index 98f8b012..30eeee8c 100644
--- a/libhdf5/hdf5create.c
+++ b/libhdf5/hdf5create.c
@@ -125,6 +125,10 @@ nc4_create_file(const char *path, int cmode, size_t initialsz,
         BAIL(NC_EHDFERR);
     if (H5Pset_fclose_degree(fapl_id, H5F_CLOSE_WEAK))
         BAIL(NC_EHDFERR);
+    // if (H5Pset_alignment(fapl_id, alignment_threshold, alignment_interval) < 0) {
+    if (H5Pset_alignment(fapl_id, 15 * 4096, 4096) < 0) {
+        BAIL(NC_EHDFERR);
+    }

 #ifdef USE_PARALLEL4
     /* If this is a parallel file create, set up the file creation
diff --git a/libhdf5/hdf5open.c b/libhdf5/hdf5open.c
index 8740c44c..ed61b53c 100644
--- a/libhdf5/hdf5open.c
+++ b/libhdf5/hdf5open.c
@@ -695,7 +695,7 @@ nc4_open_file(const char *path, int mode, void* parameters, int ncid)
     NC_FILE_INFO_T *nc4_info = NULL;
     NC_HDF5_FILE_INFO_T *h5 = NULL;
     NC *nc;
-    hid_t fapl_id = H5P_DEFAULT;
+    hid_t fapl_id = -1;
     unsigned flags;
     int is_classic;
 #ifdef USE_PARALLEL4
@@ -775,6 +775,10 @@ nc4_open_file(const char *path, int mode, void* parameters, int ncid)
     if (H5Pset_fclose_degree(fapl_id, H5F_CLOSE_WEAK) < 0)
         BAIL(NC_EHDFERR);

+    // if (H5Pset_alignment(fapl_id, alignment_threshold, alignment_interval) < 0) {
+    if (H5Pset_alignment(fapl_id, 15 * 4096, 4096) < 0) {
+        BAIL(NC_EHDFERR);
+    }
 #ifdef USE_PARALLEL4
     if (!(mode & (NC_INMEMORY | NC_DISKLESS)) && mpiinfo != NULL) {
         /* If this is a parallel file create, set up the file creation

if (H5Pset_alignment(fapl_id, 15 * 4096, 4096) < 0)

where do those constants come from: 15 and 4096?

Generally speaking, for "large" reads you want things to be aligned to something.
The linux kernel likes PAGES. So things that are "4096" in size are "nice'.
I'm defining something as large when it takes more than 16 or more pages (an arbitrary number). So I'm defining the threshold as 15 * 4096. It is entirely possible that I'm off by one in my "threshold" computation. It is possible that it is 15 * 4096 + 1 but honestly, I'm not so interested in edge behavior. My data is typically multiple megabytes large. The threshold is set to be around 60 kiB

In linux, the page size seems to be 4096 across popular architectures

x86: 4096 https://elixir.bootlin.com/linux/latest/source/arch/x86/include/asm/page_types.h#L11
arm: 4096 https://elixir.bootlin.com/linux/latest/source/arch/arm/include/asm/page.h#L12
Power: 4096 https://elixir.bootlin.com/linux/latest/source/arch/powerpc/boot/page.h#L16

In my demo code, I left placeholders for variable names that might be used for the global configuration.

Of course, please see

It seems that the best way would be to allow the user to define the global constants you suggested:

alignment_threshold
alignment_interval

In my "patched" version, I didn't want to build up a parallel API to yours. This "works" for my specific application, I simply wanted to show the two locations I identified that had to be modified.
These constants would be set in the proposed nc_set_alignment.

I have a PR for this, but there are a large number of outstanding PRs, so I will wait until
Ward has had time to clear them.

I'm working through them now @DennisHeimbigner so feel free :)

wow! thank you both so much for working through this. Excited to integrated this in our system.

Fixed by https://github.com/Unidata/netcdf-c/pull/2206


executeMoveCall 504

Error: Error executing transaction with request type: Error: 504 Gateway Time-out
    at JsonRpcProvider.<anonymous> (file:///Users/admin/maker/sui/sui-test/node_modules/@mysten/sui.js/dist/index.mjs:3778:15)
    at Generator.throw (<anonymous>)
    at rejected (file:///Users/admin/maker/sui/sui-test/node_modules/@mysten/sui.js/dist/index.mjs:52:29)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

const moveCallTxn = await signer.executeMoveCall({
        packageObjectId: '0x2',
        module: 'devnet_nft',
        function: 'mint',
        typeArguments: [],
        arguments: [
            'Example NFT By Guozi-1',
            'An NFT created by GUozi',
            'ipfs://bafkreibngqhl3gaa7daob4i2vccziay2jjlp435cf66vhono7nrvww53ty',
        ],
        gasBudget: 20000,
    });
    console.log('moveCallTxn', moveCallTxn);

This was likely a network issue which has probably been resolved since March. Closing the issue for now but feel free @taerbao to create a fresh issue if you encounter any problems.


rules the binary content of damn pdfs

That's it !

Hi Tom,
What do you think about a release today ?


Update required tools check

Originating Project/Creator

Affected Component

Affected Architectures(s)

Related Issue(s)

Has Unit Tests (y/n)

Builds Without Errors (y/n)

Unit Tests Pass (y/n)

Documentation Included (y/n)

Throwing this in now to not forget about it.
Change Description
Updates tool check list with regards to https://github.com/nasa/fprime/pull/2293
Rationale
fprime-fpp is not a required package anymore, as it has been broken down in many subpackages

Should these only be
fpp-depend
fpp-to-xml found
fpp-to-cpp found
fpp-locate-defs

These seem to be the only ones the build system is checking for.

fprime-util --check needs fpp-check.
I think it's good to provide all the tools, so users can use them if desired.


feat: Allow public DSNs

The private DSNs (including secret keys) will be officially deprecated soon. This PR allows users to specify a public DSN and makes sure the sentry_secret is not included in the header anymore. For backwards compatibility, a private DSN can still be used, though.
Also, this PR updates docs to use interactive DSN code snippets and fixes an invalid try do ... rescue statement.

@jan-auer Thank you! 💖 ❤ 💜 💚 💖


DateTime in ZipEntry returns only even second values

Steps to reproduce

Set the DateTime property of a ZipEntry to a DateTime whose seconds value is an even number:
entry.DateTime = new DateTime(2018,04,14,15,30,11);
if you try to get that value back you will get
2018/04/14 15:30:10
The same is true for any odd value for seconds.

Expected behavior
You should get exactly the DateTime you set.
Actual behavior
You get a DateTime whose seconds value is the biggest even number smaller that the actual value.
Version of SharpZipLib
1.0.0-alpha2
Obtained from (place an x between the brackets for all that apply)

[ ] Compiled from source
branch: _______
commit: _______
[ ] Downloaded DLL from GitHub
[ ] Downloaded DLL from SourceForge
[ ] Downloaded DLL from _______
[ ] DLL included as part of
Package installed using:
[x ] NuGet
[ ] MyGet
[ ] Chocolatey

Posible Solution
Surfing on the source i found that the definition of DateTime is ( SharpZipLib/src/ICSharpCode.SharpZipLib/Zip/ZipEntry.cs, l. 621):
public DateTime DateTime
		{
			get
			{
				uint sec = Math.Min(59, 2 * (dosTime & 0x1f));
				uint min = Math.Min(59, (dosTime >> 5) & 0x3f);
				uint hrs = Math.Min(23, (dosTime >> 11) & 0x1f);
				uint mon = Math.Max(1, Math.Min(12, ((dosTime >> 21) & 0xf)));
				uint year = ((dosTime >> 25) & 0x7f) + 1980;
				int day = Math.Max(1, Math.Min(DateTime.DaysInMonth((int)year, (int)mon), (int)((dosTime >> 16) & 0x1f)));
				return new System.DateTime((int)year, (int)mon, day, (int)hrs, (int)min, (int)sec);
			}
			set {
				var year = (uint)value.Year;
				var month = (uint)value.Month;
				var day = (uint)value.Day;
				var hour = (uint)value.Hour;
				var minute = (uint)value.Minute;
				var second = (uint)value.Second;

				if (year < 1980) {
					year = 1980;
					month = 1;
					day = 1;
					hour = 0;
					minute = 0;
					second = 0;
				} else if (year > 2107) {
					year = 2107;
					month = 12;
					day = 31;
					hour = 23;
					minute = 59;
					second = 59;
				}

				DosTime = ((year - 1980) & 0x7f) << 25 |
					(month << 21) |
					(day << 16) |
					(hour << 11) |
					(minute << 5) |
					(second >> 1);
			}
}

There is possible to see the root of the problem. The getter generates the value of seconds by multiplying by 2.
I corrected this simply by moving the bit shifting by one to the left on the assignment of DosTime, and then correcting this by bit shifting by one to the right on the getter. With this the multiplication by 2 is not needed:
public static DateTime DateTime
        {
            get
            {
                uint sec = Math.Min(59, (DosTime & 0x3f));
                uint min = Math.Min(59, (DosTime >> 6) & 0x3f);
                uint hrs = Math.Min(23, (DosTime >> 12) & 0x1f);
                uint mon = Math.Max(1, Math.Min(12, ((DosTime >> 22) & 0xf)));
                uint year = ((DosTime >> 26) & 0x7f) + 1980;
                int day = Math.Max(1, Math.Min(DateTime.DaysInMonth((int)year, (int)mon), (int)((DosTime >> 17) & 0x1f)));
                return new System.DateTime((int)year, (int)mon, day, (int)hrs, (int)min, (int)sec);
            }

            set
            {
                var year = (uint)value.Year;
                var month = (uint)value.Month;
                var day = (uint)value.Day;
                var hour = (uint)value.Hour;
                var minute = (uint)value.Minute;
                var second = (uint)value.Second;

                if (year < 1980)
                {
                    year = 1980;
                    month = 1;
                    day = 1;
                    hour = 0;
                    minute = 0;
                    second = 0;
                }
                else if (year > 2107)
                {
                    year = 2107;
                    month = 12;
                    day = 31;
                    hour = 23;
                    minute = 59;
                    second = 59;
                }

                DosTime = (year - 1980) << 26 |
                    (month << 22) |
                    (day << 17) |
                    (hour << 12) |
                    (minute << 6) |
                    (second);
            }
        }

I hope this could be solved soon as i am willing to include the SharpZipLib in my project!
Cheers and great work!

It would make it incompatible with the zip file format though. It uses FAT/MS-DOS time, which has a resolution of 2 seconds.

Closing this since it's working as intended.


Remove old (unused?) scripts and output

create list of announced suburbs from txt input:
./code/tools.py
./results/misc/*.txt

Yeah that stuff can all go now.


Button vanishes in Clickup

OS version: macOS and Windows
Browser version: various
Extension version: 2.0.6

Relevant integration (if any):
Clickup
🐛 Describe the bug
The button vanishes. This is happening to a whole team of users.
Expected behaviour
The button should always be visible
Steps to reproduce

Steps to reproduce the behaviour:

Go to ...
...

Other details or context
Slack
[Case (with video)](https://app.intercom.com/a/apps/ayixs927/inbox/inbox/534741/conversations/106481309742909)

Hi @nidarasheed ,
any update on this? I'm having the same issue: The element is there, but somehow invisible, and I cannot click on it to start time tracking:

I'm using Microsoft Edge, Version 110.0.1587.63 (Official build) (64-bit) on Windows 11.


Please correct help section url in custom field page , 404 opens now

Please correct help section url in custom field page , 404 opens now

right url is this https://help.easycloudbooks.com/User/CustomFilterList?


fix: #9399 Changed hovering effect

Notes for Reviewers
This PR fixes #9399
Fixed hover effect in light mode on import button
Signed commits

[x] Yes, I signed my commits.

@vaibhavpnimkar Hey Sorry took a long time for it, but i guess it's done

@vaibhavpnimkar ready for review.

@leecalcote i have suggested him a change once its done it will be ready for review.

@vaibhavpnimkar I have signed off commits , are there any more changes ?

@Raj100679
you have changes this
backgroundColor: theme.palette.secondary.focused,
to this:
backgroundColor: theme.palette.secondary[promptVariant || 'primary'],
this change is not needed replace this : backgroundColor: theme.palette.secondary.focused,

and share the screen recoring of changed hovering effect also @Raj100679 so we can confirm that it is working fine

Sure @vaibhavpnimkar will update till night

@vaibhavpnimkar if i change to this "backgroundColor: theme.palette.secondary.focused" instead of "backgroundColor: theme.palette.secondary[promptVariant || 'primary']" , the hover effect and the prompt button without hover will get same style .

What should I change, can you tell me?

@vaibhavpnimkar is it correct? If it is correct I will push the changes
https://github.com/meshery/meshery/assets/85561967/5f56c7ab-2623-4c5e-90c1-490bbc6bf3c5

Yes push the changes

@vaibhavpnimkar done

@leecalcote @yash37158 THIS PR IS READY FOR REVIEW!!

@leecalcote @yash37158 @Yashsharma1911 THIS PR IS READY FOR REVIEW!!everything look good to me!

Excellent. Thank you, gentlemen.


Selleckt async

@spmason this introduces the ability to dynamically add and remove items to Selleckt.
It uses a Dom Mutation Observer to watch changes to the underlying select element. Those changes can be direct in the dom, or instead via the new 'add/remove' item(s) methods. This should allow for flexibility from the implementor.
I had to change the public api as part of this, as there was a method called removeItem in MultiSelleckt that actually 'unselected' an item. This was a naming clash with the new methods.
I've also moved to mustache 0.8 for its better partials support.

Yikes, Firefox does not like this at all. I'll look into it.

We are making MutationObserver an explicit requirement, so users will have to include mustache, underscore and a shim to use it in IE. It's not too bad but we are adding quite a bit of complexity to deal with non-native implementations. I'm looking at IS_MUTATION_OBSERVER_SHIMMED, DELAY_TIMEOUT which reads a window.MutationObserver._period seemingly only defined in MutationObserver.js, and objectIntersect() which is a bit hacky. I can think of a couple of options:

Require a MutationObserver-capable browser (i.e. 11 or anything post mid-2012)
Keep addItem and addItems in the API but remove support for MutationObserver

What are everyone's thoughts on this?

A couple of comments from me

:+1:


ProblemJson ProblemType Property is not passed to HypermediaProblemException ProblemType

Flow of data:

Server-side class ProblemJson has Property "ProblemType"
Client-Side ProblemReader deserializes into ProblemDescription that has Property "Type"
Thrown HypermediaProblemException has Property "ProblemType" which ProblemDescription.Type is mapped to.

At step 2) the data from the "ProblemType" property in the JSON does not make it into "Type", and HypermediaProblemException.ProblemType is always null.

https://github.com/RESTyard/RESTyard/pull/41


NetBSD - VM doesn't start after a 120s timeout

I'm having the following occasional issue when running NetBSD runner:
  Pseudo-terminal will not be allocated because stdin is not a terminal.
  ssh: connect to host localhost port 2847: Connection refused
  Waiting for VM to be ready...
  Executing command inside VM: true
  /usr/bin/ssh -t runner@localhost
  Pseudo-terminal will not be allocated because stdin is not a terminal.
  ssh: connect to host localhost port 2847: Connection refused
  Waiting for VM to be ready...
  Executing command inside VM: true
  /usr/bin/ssh -t runner@localhost
  Pseudo-terminal will not be allocated because stdin is not a terminal.
  ssh: connect to host localhost port 2847: Connection refused
  Waiting for VM to be ready...
  Executing command inside VM: true
  /usr/bin/ssh -t runner@localhost
  Pseudo-terminal will not be allocated because stdin is not a terminal.
  ssh: connect to host localhost port 2847: Connection refused
  Waiting for VM to be ready...
  Executing command inside VM: true
  /usr/bin/ssh -t runner@localhost
  Pseudo-terminal will not be allocated because stdin is not a terminal.
  ssh: connect to host localhost port 2847: Connection refused
  Terminating VM
  /usr/bin/sudo kill -s TERM 1370
  kill: 1370: No such process
Error: Waiting for VM to become ready timed out after 120 seconds

I'm using QEMU to run it.
Basically the VM is not ready after 120 seconds, which causes the action to be terminated.
I'm not sure what is the problem in this case - if the GHA runner is simply overloaded or whether there is a race or something caused by the action itself, which results in inability to connect to the SSH server inside the VM.
I'm wondering - is this something we have to live with or do you think that this can be fixed somehow? It's very hard to diagnose as it doesn't happen every time, but it happens frequently enough to have my attention.

Yeah, it's difficult to say. Perhaps it's possible to run through DTrace to debug it. Not sure if that works on a GHA runner though.

Do you have a link to a failing job?

I have - actually two failing jobs within 2 days:

https://github.com/asmjit/asmjit/actions/runs/6272224096/job/17033373759
https://github.com/asmjit/asmjit/actions/runs/6284915251/job/17066768332

I'm not sure that would help though, as nothing interesting happens in these runs, it just stops at the beginning.

I am seeing the same problem:
https://github.com/OpenMPT/openmpt/blob/ea8aafbdcbf07b1d2a96a0d213edb64e7872f6ae/.github/workflows/NetBSD-9.3-Makefile.yml
and a couple of failing jobs:

https://github.com/OpenMPT/openmpt/actions/runs/6282259563
https://github.com/OpenMPT/openmpt/actions/runs/6282412664
https://github.com/OpenMPT/openmpt/actions/runs/6282449434
https://github.com/OpenMPT/openmpt/actions/runs/6288164462
https://github.com/OpenMPT/openmpt/actions/runs/6288329988
https://github.com/OpenMPT/openmpt/actions/runs/6288995972
https://github.com/OpenMPT/openmpt/actions/runs/6314983647
https://github.com/OpenMPT/openmpt/actions/runs/6317196952
https://github.com/OpenMPT/openmpt/actions/runs/6321362086

The last successful NetBSD VM run was on 2023-09-21, https://github.com/OpenMPT/openmpt/actions/runs/6264853726 .

And one more:

https://github.com/asmjit/asmjit/actions/runs/6328512506/job/17186877536

I think that this is the most unstable runner at the moment - it fails in like 50% of time like this

it fails in like 50% of time like this

Oh, that's pretty bad. I'll see if I can debug the issue.

Seems like GitHub made some breaking changes again. This happens when trying to run QEMU:
dyld[1372]: Library not loaded: '/usr/local/opt/capstone/lib/libcapstone.4.dylib'

But it should always fail.
This makes it much easier to fix. I thought all the dependencies were statically linked to avoid this exact problem, but it looks like I missed one.

Yeah it always fails.
I'm removing netbsd from my CI as this just makes all builds to fail.
I think this is just really unfortunate reality that it's not natively supported by github.

Fixed in https://github.com/cross-platform-actions/action/releases/tag/v0.19.1. I've added a test to make sure this doesn't happen again. In doing that I also found another non-system dependency. But that is fixed as well.


Integrate with Lotus::Helper

Added Lotus::Helper as a dependency and added it to the application generator, as discussed in https://github.com/lotus/lotus/issues/165.
/cc @jodosha

except comments above, :+1:

:+1:

Thanks @joneslee85. Updated with you're recommendations.

@joneslee85 @tomkadwill Sorry for being late at the party. First of all, thank you Tom for this integration.
There is one problem, we add both lotus-helpers as an hard dependency in the gemspec, but we also add it to the generated Gemfile of an app. This can cause conflicts. My idea is to have that gem as an hard dependency (gemspec) and to remove it from the Gemfile.
Another issue is that we use ~> 0.0, it should be ~> 0.1 instead. @tomkadwill Can you please take care of this?


SignalR: Add BackgroundService example with IHubContext doc

It's pretty common to write to invoke SignalR clients from a background service. We should update the HubContext document to show the recommended pattern for this in ASP.NET Core applications.
E.g.
https://github.com/davidfowl/UT3/blob/fb12e182d42d2a5a902c1979ea0e91b66fe60607/UTT/Scavenger.cs#L9-L40
cc: @anurse  @mikaelm12

@anurse @mikaelm12 can you give me an ETA on when you can do the first draft/code?

We've got a pretty full plate at the moment. Maybe after 2.2 preview3?


build(cli): env show ask

Added env show ask method and unit tests.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

example manual output (there is only one env in each of these projects):
$ ecs-preview env show

? Which project's environments would you like to show?  [Use arrows to move, type to filter, ? for more help]
> dinder
  e2e-init-1583862289

$


Build out basic Content Management

[x] Add LoopBack SDK
[x] Add two-level sidebar
[x] System level

[x] Setting (read)
[x] User (create/read/update/delete)
[x] Domain (create/read/update/delete)

[ ] Domain level

[x] Event (create/read/update/delete)
[x] Post (create/read/update/delete)
[x] Product (create/read/update/delete)

[ ] No models yet (look here for definitions.)

[ ] Category (create/read/update/delete)
[x] Page (create/read/update/delete)
[x] Files (upload/read/update/delete)

@beeman Whats the procedure for adding custom models to the CMS?
Added one and running into some errors.

@beeman also fix the link provided above, returns a 404


feat: clarity highlighting

Still drafty but definitely getting somewhere. Let me know what you think

Hey @pradel, sorry I didn't mean to leave this PR open for so long.
I still have 2 things to look into:

[ ] Languages or ordered alphabetically in the drop down but "clarity" is at the end, not sure I can fix it
[ ] Patterns matching, for functions parameters for instance. It's harder than just keywords

I'd like to look into it this weekend

@pradel Hey, I'm not super happy with the result here.
There are still a few patterns missing our keywords highlightd with the wrong color. Although I won't hav many more time soon to work on it.
We could either

merge this as a beta; I could add a "(beta)" annotation in the language selector

simply close the PR as I won't be able to finish it

What do you think?

@hugocaillard thanks for the work on this!
I think option 1 makes sense to merge it as beta, then we can iterate on it :)

@pradel Alright, it sounds acceptable to me as well 👌 I just added "beta" in the name of the language

Amazing job!! It's so cool to have clarity support, thanks for taking the time to add it ✌


[FEATURE] Embedded chat: Open links returned by bot in a new tab

Describe the feature you'd like
If the chatbot returns a link (e.g. you are what's Google's homepage), then the link should open in a new tab.
This is applicable to the embedded chatmessage (pop-up or full screen).

PR merged and released! - https://github.com/FlowiseAI/FlowiseChatEmbed/pull/102


Add key authentification

Authentification with ssh keys seems like an important feature.
I've found the repo there (relevant file) that has a working implementation, as a reference.

solved by https://github.com/Miyoshi-Ryota/async-ssh2-tokio/pull/19


Tab out does not work when element is readonly

Hey there. When I set the read-only attribute on a element and try to loose focus on that element with tab it just won't work. It stay stuck on the masked element.
$('#money').inputmask();
$('#money').attr('readonly', 'readonly');

As a workaround I wish I could disable the mask, but it seems it is not a feature here. I think that is a nice-to-have.
Cheers!

@mjacobus , @Sovetnikov,
Fixed


TRUS-4508: Amended trust details mapper as per requirements in ticket.

@carrielies I believe that test was actually correct as it was. Because of the way this service was built there's a lot of inferring of answers. So because that particular test has registeredWithDeceasedSettlor = true, the 'type of trust' and 'set up in addition to will trust?' need to be inferred as deed of variation trust type that was set up in addition to a will trust as these questions would get skipped in the navigation

Yep. I realised and re-set that before I read this
On Monday, August 16, 2021, 10:03:23 AM GMT+1, jackheslop96 @.***> wrote:
@carrielies I believe that test was actually correct as it was. Because of the way this service was built there's a lot of inferring of answers. So because that particular test has registeredWithDeceasedSettlor = true, the 'type of trust' and 'set up in addition to will trust?' need to be inferred as deed of variation trust type that was set up in addition to a will trust as these questions would get skipped in the navigation
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.


commands which should run both frontend and backend simaltaniously

there should be a single command to run both front end and backend at the same time

Working on it!!


Add the metadata outside of the filter

This feels a bit cleaner. If we're going to add the filter, then we're always going to add the metadata.

When you say "outside of the filter" you mean "outside of the filter factory" yes? This doesn't save a closure or anything so it's just code/logic aesthetics?

Yes, capturing the builder seems unnecessary and the timing of when these callbacks run is a bit sketchy.


QnA Maker - Default Answer

instructions are not correct for the default answer option

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

ID: b012f1d7-50ea-1f6d-75fc-9961fb7b11b2
Version Independent ID: d51d2728-85d5-dc51-9c2e-2793de03c559
Content: Get default answer - QnA Maker - Azure Cognitive Services
Content Source: articles/cognitive-services/QnAMaker/How-To/change-default-answer.md
Service: cognitive-services
Sub-service: qna-maker
GitHub Login: @mrbullwinkle
Microsoft Alias: mbullwin

Thanks for the feedback! We are currently investigating and will update you shortly.

@nicolacm77 Thanks for reaching out again, could you please more information about what's error you are mentioning so that we can make the change quicker?

Since we have not received any response, we will now proceed to close this thread for now. If there are further questions regarding this matter, please respond here and @YutongTie-MSFT and we will gladly continue the discussion.


Choose which repair tool to use

This PR intends to fix #515

@fermadeiral I completely changed in this PR the way repair steps are integrated. In order to ease my life I explicitely remove the call to Nopol step in bears mode (see: https://github.com/Spirals-Team/repairnator/pull/522/files#diff-1932aa62da1db5921d8f10eaf10e6ef1) do you agree with that?

I explicitely remove the call to Nopol step in bears mode (see: https://github.com/Spirals-Team/repairnator/pull/522/files#diff-1932aa62da1db5921d8f10eaf10e6ef1) do you agree with that?

Yes, I do.

@fermadeiral are you ok for merging it?


Problem with fetching activity log

Hello,
I am able to store the activity log without any issue. But when i am trying to fetch it by following lines
$latestActivities = Activity::with('user')->latest()->limit(100)->get();
I am getting issue as below:
Call to undefined method Spatie\Activitylog\ActivitylogSupervisor::with()
Can you please help??

You should import the activty-model instead of the facade.
Make sure you have
use Spatie\Activitylog\Models\Activity;

at the top of your file.

Hello,
I am using it in UserController. I put use Spatie\Activitylog\Models\Activity it in very first line and now it is fetching the records in one of the function.
But now the Activity::log('logged out'); which is also in same UserController (logout method) is not working. It shows Call to undefined method Illuminate\Database\Query\Builder::log().
Both are not working in same controller.

When importing two objects with the same name from different namespaces you should alias one of the two.
More info: http://php.net/manual/en/language.namespaces.importing.php


bug: How to stop openllm start process

Describe the bug
When I run "openllm start xxx" to play with it, I can easily use crtl+C to stop it, no http server left.
But once I want to start a backend process by "nohup openllm start llama 2>&1 &", I will lose the control of backend process. It will launch the server as well as lot of http server (per core) at backend. When I kill the main process, those http listener process will be still alive, controlled by some circusd. I am frustrating about it. Everytime I need to reboot OS to restore the env.
How to make the server easy to stop?
To reproduce
No response
Logs
No response
Environment
openllm, 0.3.3 (compiled: no)
Python (CPython) 3.10.4
System information (Optional)
No response

Ye, so we definitely want to improve on this
you can do
pgrep circusd | xargs kill -9

Will translate to bentoml since this is mainly on BentoML improvement


403 error on static css and images

Hello,
** Please describe which feature you have a question about? **
I have created an Amplify application with plain JS through CloudFormation by connecting it to my private Git repository. My build commands are:

npm install
npm run build
cp -r src/assets dist
cp -r src/css dist

The last two commands copy my static assets and css into the build folder (dist). When I run the app locally using "npx serve dist" or "npm start", it works just fine. However, when I deploy the application through Amplify, I'm getting 403 errors on my css and assets files: "Failed to load resource: the server responded with a status of 403 ()."
** Provide additional details**
ARN: arn:aws:amplify:us-west-2:971684222125:apps/d175f7mxaylo6n
Region: us-west-2
Any assistance would be much appreciated!

https://d175f7mxaylo6n.amplifyapp.com/assets/wand.png I can access to your assets. Do you still have the issue?

Yeah I am still getting the 403 error. When I click on that link you sent, I am also getting a 404 error.

You need to remove the trailing slash.
/assets/wand.png -> /assets/wand.png
/assets/wand.png/ -> /assets/wand.png/index.html

Could you clarify that a little bit? I don't see any differences in the left and the right for that top example. Here is how I am referencing my images and css files:

https://master.d175f7mxaylo6n.amplifyapp.com/assets/wand.png

https://master.d175f7mxaylo6n.amplifyapp.com Looks good to me. I can see the wand image and fireball gif without issue

That is weird. I am on VPN but I tried without and I'm still getting that issue. This is what I see when I click on the wand.png link you sent.

Able to see it on my phone... interesting

I'll mark it as a bug for now. Worth to dig more, thanks for the report

Thanks Gary! Appreciate the help

Okay slight update. I can see it on Safari both on and off VPN. Just can't with Chrome for some reason.

Firefox working as well


[10.x] Add hasPackage method to Composer class

This PR adds a hasPackage method as a continuation of https://github.com/laravel/framework/pull/48096, such a method is also being used in the starter kits

We can actually used Composer Runtime API which is required by Laravel Framework 10 and is why it not added in the previous PR:
https://getcomposer.org/doc/07-runtime.md#knowing-whether-package-x-or-virtual-package-is-present

@crynobone I copied this implemetation from breeze (same thing in jetstream), I think using the Composer Runtime API in this scenario might not return the expected results since it checks for all sub-dependecies while we need to check the top level dependencies only.

this scenario might not return the expected results since it checks for all sub-dependecies while we need to check the top level dependencies only.

Have you confirm this claim?

see https://github.com/laravel/breeze/blob/1.x/src/Console/InstallCommand.php#L76C1-L79C14
if ($this->option('pest') || $this->isUsingPest()) {
    if ($this->hasComposerPackage('phpunit/phpunit')) {
        $this->removeComposerPackages(['phpunit/phpunit'], true);
    }

    // ...
}

We are checking if phpunit exists in top level deps


[fix] handling unicode in python3 test

@Pehat Thanks for the contribution. Could you please squash the changes and amend the commit message -- even the same as the MR's title. TBH I'd rather like to put the "if sys.version_info.major == 3:" in some method, but it's a simple script, so it's OK.

@WojciechMula I've taken your notes into consideration.

@Pehat Thank you very much!


fix: update initial schema to include pgsodium

What kind of change does this PR introduce?
fixes #383
What is the current behavior?
missing pgsodium schema
What is the new behavior?
include pgsodium init scripts in upstream image
Additional context
depends on

[ ] https://github.com/supabase/postgres/pull/286

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1628

Relevant Lines:
5020

💛  - Coveralls

Getting
Error response from daemon: manifest for public.ecr.aws/t3w2s2c9/postgres:<IP_ADDRESS> not found: manifest unknown: Requested image not found

There's an extra v here: https://github.com/supabase/postgres/blob/615ea0a16b881788a10650991a7cfc086b45c415/.github/workflows/dockerhub-release.yml#L38


The option to set Files as a default file manager si gone

Description
When I reinstall the File app, the option to set the Files App to become the default file manager is gone.
Steps To Reproduce

Go to Settings
Experimental
I don't see the Set Default Manager option

Expected behavior
What I expected is there an option to set the default file manager as It should be.
Files Version
Version: <IP_ADDRESS> OS Version: 10.0.22000.613
Windows Version
Windows 11 21H2 22000.613
Relevant Assets/Logs
debug.log
debug_fulltrust.log

The option is only available in the sideload version

For the sideload version it can run as default file manager without any issues. But, when I "sleep" my computer and turn it on again the Files App is not responsive again. Such as when I want to open file location when I use windows Search it can't be load and I can open my file explorer again.


Service Alias Names Containing Periods

Rancher Versions:
Server: 1.4.1
healthcheck: 0.2.3
ipsec: 0.8.7
network-services: 0.0.14
scheduler: Cattle
kubernetes (if applicable): N/A
Docker Version:
1.12.6
OS and where are the hosts located? (cloud, bare metal, etc):
Boot2Dopcker, Virtualbox guest
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
Single Node
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
Steps to Reproduce:

Use a service alias containing periods, for example, www.example.com, using compose v1 syntax (presumably) that worked with Rancher server v1.1.4, with v1.4.1. Example docker-compose:

service_name:
  ...
  links:
  - other_service_name:alias.service.name

or

Use a service alias containing periods using compose v2 syntax with server v1.4.1 (as per: http://docs.rancher.com/rancher/v1.4/en/cattle/adding-service-alias/). Example docker-compose:

alias.service.name
  image: rancher/dns-service
  links:
  - other_service_name

Results:

No error is seen but the alias does not work and lookups against the alias name result in external resolution

Rancher compose reports an error that invalid characters are being used in a service name

In summary, we could use www.example.com as a Service Alias prior to v1.2 but due to the (probably more scalable) compose changes for specifying a (now stack wide) Service Alias we no longer can.

@deniseschannon @joshwget  looks like rancher-compose bug. You can create alias with “.” in it via UI/API

I've finally got around to doing some of my own testing around this. I'm actually not seeing any problem using the GUI or rancher-compose (using the older compose format), with services using managed networking. I'm 99% sure the devs who reported this problem to me (and I sat with for a while for a demo) were using the wrong version of compose. I'm sure they showed me failed attempts using the GUI too, but perhaps that was pasting the new format compose.

we see the same issue. We have a service alias, and link to it from another service using an alias for a fqdn. In 1.1.4 the aliased link resolves to the address of the service alias, where as in 1.4.1 it returns the address found on external DNS for the fqdn.
  nginx:
    image: xxx:nnn/nginx/master:latest
    external_links:
    - global/api:api.www.7943.xxx.se
    volumes_from:
    - dddd
    labels:
      io.rancher.sidekicks: dddd
      io.rancher.container.hostname_override: container_name

in the nginx service, api.www.7943.xxx.se does not resolve to the address of global/api, as it does in 1.1.4.

The rancher dns service has records like this, both on our 1.1.4 and 1.4.1 systems, for the nginx service:
  "<IP_ADDRESS>": {
    "search": [
      "7921-dddd.rancher.internal",
      "zzz.7921-dddd.rancher.internal",
      "rancher.internal"
    ],
    "recurse": [],
    "authorative": [],
    "a": {
      "api.www.7921.dddd.mr.xxxxx.se.global.rancher.internal.": {
        "answer": [
          "<IP_ADDRESS>"
        ]
      },
      "api.www.7921.trinidad.mr.ocean.svenskaspel.se.rancher.internal.": {
        "answer": [
          "<IP_ADDRESS>"
        ]
      },
      "qqqq.7921-dddd.rancher.internal.": {
        "answer": [
          "<IP_ADDRESS>"
        ]
      },
      "qqqq.rancher.internal.": {
        "answer": [
          "<IP_ADDRESS>"
        ]
      }
    },
    "cname": {}
  },

When looking up api.www.7921.dddd.mr.xxxxx.se on 1.1.4 we get the data from answers.json but on 1.4.1 we get the data from our dns servers.

After reading this I think I see three separate issues.

Some difference between parsing service names or aliases between v1 and v2 formats. I'm not sure I entirely understand this fully though. @sjiveson can you elaborate on this a bit? Is it the actual service name and not an alias that you're trying to put a period in?

Alias lookups don't work with host mode networking.

Issue from @kaos which seems more related to the DNS microservice.

Can (2) and (3) be filed as separate issues? It'll be helpful to keep this to just the original issue (1). Thanks!

Close in favor of https://github.com/rancher/rancher/issues/8232


Issues on loader modal messages.

-The same message is being displayed here. We need random message every time.

Fixed in 151

-Only one message is visible on the loader modal and it is different each time when we trying to logged in. (edited)
-Tested in staging app version 1.3.0(151)

@cakesoft-swati yes only one message is displayed but it’s different every time.
Because login speed has increased there is no time for another message. That’s why we are showing only one message.

got it,verified on Hexa app version 1.3.0(151)