Windows Groups

Description of the new feature / enhancement
Many times, when we multitask, we use several minimized windows at the same time. The problem arises when switching to a maximized application or other organized minimized ones, since the minimized windows we had can become disorganized. To bring all the minimized windows to the foreground would involve either minimizing the rest of the windows or clicking on each tab of the necessary windows. A possible feature that would facilitate this change of windows would be a function that allows us to select the windows we want to group. When you click the tab of any of those grouped windows, all the grouped windows would automatically come to the foreground. This management method would make using Windows to multitask much easier and less confusing.
Scenario when this would be used?
multitasking with various windows at the same time, but you need to review some info in a maximized window fastly, so when you go back to the layout of minimized windows you was using, you don't need to click each tab you needed
Supporting information
No response

/dup #21333


Investigate streamed meshes and textures not being freed from memory

Meshes and textures are indeed not freed from the memory, it just keeps allocating more and more ram and vram.
@atirut-w is there is any fox for that? or it's a Godot thing with GC?

I've got no earthly idea how this happens. I could only hope #21 can help fix this.

@Koalamana9 AFAIK Godot don't have a GC.


Wrong Unit Flutter performance

Build: 3.3.1, AI-182.5<IP_ADDRESS>64788,<PHONE_NUMBER>52, AI-182.5<IP_ADDRESS>64788, JRE 1.8.0_152-release-1248-b01x64 JetBrains s.r.o, OS Linux(amd64) v4.20.8-200.fc29.x86_64 unknown, screens 1920x1080, 1366x768Android Gradle Plugin: 3.3.1Gradle: (gradle version information not found)NDK: from local.properties: UNKNOWN; latest from SDK: 19.1.5304403; LLDB: pinned revision 3.1 not found; latest from SDK: (package not found); CMake: from local.properties: (not specified); latest from SDK: 3.6.0-rc2; from PATH: (not found); Source: user_sentiment_feedback IMPORTANT: Please read https://developer.android.com/studio/report-bugs.html carefully and supply all required information.
in Flutter Performance Moniter it show to me that my programe using 30.3 GB But i think it means it uses 30.3 MB

Issue moved to flutter/flutter-intellij #3229 via ZenHub


Windows intallation fi

It's about docmuentation right now, but I may add more changes later.

I'm done. Migration to 3.4.1 has broken some steps, rewritten documentation to reflect that. Some batteries such as fixes in scripts are included.

I see there is duplicate compilations on PR and push. That probably should be fixed in CI settings.
P.S. How are you, globally? Do you have some plans in further project development? We were talking about Go guys, you are busy there?

P.S. How are you, globally? Do you have some plans in further project development? We were talking about Go guys, you are busy there?

Much better (time-wise) than before!
About further project plan, at this point, I am not sure where time is best invested: 1. more module wrapper; 2. adopting existing manual wrappers, like gocv's; 3. binding generation. These directions are in an increasing order of complexity and reward.
For 3., modifying OpenCV's python script is one possibility; but last time I checked, it is not that easy to adapt. And the generated bindings are too Python specific. An alternative may be Clang libtooling (haven't explored).
For 1. and 2., it is easy to do it step by step. For 3., as I said earlier, I do not have much time to lead and can only help.

About 3rd bullet: I created an issue, but doesn't look like it get enough attention, unfortunately.


Warn about consequences of using Merge Parent to Selected

Merge commits don't work well with stacked PRs. I'll soon add a point about that to CLI FAQ.
The question is whether to show the warning on every usage of the action, or just on usage of the action when a branch that has 1+ child branches is being updated by merging in its parent 🤔

See the soon-to-be-added FAQ in CLI: https://github.com/VirtusLab/git-machete/pull/598/, question Can I use git merge for dealing with stacked PRs?

As suggested https://github.com/VirtusLab/git-machete-intellij-plugin/pull/988/files#r948166834, I'd start with at least removing Merge button from toolbar menu (it hasn't been there for too long so far, anyway). Let's bury this action slightly deeper 😅


[Task]:  Refactor dscontextserviceimpl methods to add custom map keys to avoid duplication in EE.

Is there an existing issue for this?

[X] I have searched the existing issues

SubTasks
In order to account for multiple environments changes, the DatasourceContextServiceImpl.java methods needs refactoring to achieve minimal code duplicity.

Create class to hold the key for dscontext maps.
Refactor methods in order to have minimum duplicity.

@sondermanish Tested following DS
Rest API
SAAS INtegration (Airtable)
Gsheet
Postgres
Mongo
S3
Mysql
Got issue on gsheet (which is an issue related to local) {"responseMeta":{"status":500,"success":false,"error":{"code":5000,"message":"Internal server error while processing request"}}}
Rest worked fine.


Click not open Category directly

First I wanna say nice page. I like the structure.
I found one small issue.
When I open the page and I click to category the menu is not opening. I have to click it twice.

Thank you so much for the issue. I will work on that tonight.

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
🎉 Congratulations! You've won a share of the $1.500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. But that's not all—connect now, and you'll instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1.500k in BNB! Plus, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, seize the chance to win up to $20,000—it's your golden opportunity!
Winners: @jamesjarvis, @torish14, @fygul, @WuhDaFak, @topninja, @DaltonMcCleery, @japaul527


Process Twitter archive for ingestion

Since we are looking for answers to questions, the starting point is to filter the tweet archive to only include conversations, tweets that are linked to other tweets. In my case this reduced the size of the file to about 20% of the raw feed. Code to do this was developed by asking ChatGPT to generate it, and it seemed to work. Full chat sequence follows... The final code for the script has been saved to the repo along with the output conversations file.
Prompt: I'd like a script that processes a twitter archive directory structure to remove private content like DMs and leave the public content intact
ChatGPT: Sure, I can help you with that. Here’s a Python script that processes a Twitter archive directory to remove private content like Direct Messages (DMs) while keeping public content intact. This script assumes that the Twitter archive is in the standard directory structure as provided by Twitter's data export tool.
Requirements:

Python installed on your system.
os and json modules (these are standard Python libraries).

Script:
import os
import json

def remove_private_content(archive_dir):
    # Define the paths for the private content files to be removed
    dm_paths = [
        os.path.join(archive_dir, 'data', 'direct-messages.js'),
        os.path.join(archive_dir, 'data', 'direct-messages-group.js')
    ]

    # Remove the Direct Messages files
    for dm_path in dm_paths:
        if os.path.exists(dm_path):
            os.remove(dm_path)
            print(f"Removed {dm_path}")
        else:
            print(f"{dm_path} does not exist")

    # Handle other potential private data files if necessary
    other_private_files = [
        os.path.join(archive_dir, 'data', 'account.js'),  # Contains account-related information
        os.path.join(archive_dir, 'data', 'contact.js'),  # Contains contacts data
        os.path.join(archive_dir, 'data', 'mobile.js')    # Contains mobile data
    ]

    for file_path in other_private_files:
        if os.path.exists(file_path):
            with open(file_path, 'r') as f:
                data = f.read()

            if 'window.YTD.account' in data:
                data = data.replace('window.YTD.account', 'window.YTD.account_public')
            elif 'window.YTD.contact' in data:
                data = data.replace('window.YTD.contact', 'window.YTD.contact_public')
            elif 'window.YTD.mobile' in data:
                data = data.replace('window.YTD.mobile', 'window.YTD.mobile_public')

            with open(file_path, 'w') as f:
                f.write(data)
                print(f"Processed {file_path} for public data only")

if __name__ == "__main__":
    archive_directory = input("Enter the path to your Twitter archive directory: ")
    if os.path.exists(archive_directory) and os.path.isdir(archive_directory):
        remove_private_content(archive_directory)
    else:
        print("Invalid directory path")

Explanation:

Removing DM Files: The script first attempts to remove the Direct Messages files (direct-messages.js and direct-messages-group.js). These are typically where private conversations are stored.
Processing Other Files: The script looks for other files that may contain private data (like account.js, contact.js, and mobile.js) and modifies their content to indicate they now only contain public data by renaming the JavaScript variable inside the files. This is a simplistic approach and assumes that renaming the variable is enough to "publicize" the content. Depending on the actual content, further processing might be needed.

How to Run:

Save the script as clean_twitter_archive.py.
Open a terminal or command prompt.
Navigate to the directory where you saved the script.
Run the script using python clean_twitter_archive.py.
Enter the path to your Twitter archive directory when prompted.

This script will help you remove private content from your Twitter archive while keeping your public data intact. Adjust the script as needed based on the actual structure and contents of your Twitter archive.
Prompt: remove deleted tweets as well
ChatGPT: To extend the script to remove deleted tweets as well, we'll need to identify where the deleted tweets are stored and ensure they're removed from the archive. Typically, deleted tweets might still appear in the tweets.js file but be marked in a way that indicates they were deleted.
Enhanced Script:
import os
import json

def remove_private_content_and_deleted_tweets(archive_dir):
    # Define the paths for the private content files to be removed
    dm_paths = [
        os.path.join(archive_dir, 'data', 'direct-messages.js'),
        os.path.join(archive_dir, 'data', 'direct-messages-group.js')
    ]

    # Remove the Direct Messages files
    for dm_path in dm_paths:
        if os.path.exists(dm_path):
            os.remove(dm_path)
            print(f"Removed {dm_path}")
        else:
            print(f"{dm_path} does not exist")

    # Handle other potential private data files if necessary
    other_private_files = [
        os.path.join(archive_dir, 'data', 'account.js'),  # Contains account-related information
        os.path.join(archive_dir, 'data', 'contact.js'),  # Contains contacts data
        os.path.join(archive_dir, 'data', 'mobile.js')    # Contains mobile data
    ]

    for file_path in other_private_files:
        if os.path.exists(file_path):
            with open(file_path, 'r') as f:
                data = f.read()

            if 'window.YTD.account' in data:
                data = data.replace('window.YTD.account', 'window.YTD.account_public')
            elif 'window.YTD.contact' in data:
                data = data.replace('window.YTD.contact', 'window.YTD.contact_public')
            elif 'window.YTD.mobile' in data:
                data = data.replace('window.YTD.mobile', 'window.YTD.mobile_public')

            with open(file_path, 'w') as f:
                f.write(data)
                print(f"Processed {file_path} for public data only")

    # Process tweets.js to remove deleted tweets
    tweets_path = os.path.join(archive_dir, 'data', 'tweets.js')
    if os.path.exists(tweets_path):
        with open(tweets_path, 'r') as f:
            content = f.read()

        # Strip off the JS variable assignment to parse JSON
        json_content = content[content.index('['): content.rindex(']') + 1]
        tweets = json.loads(json_content)

        # Filter out deleted tweets
        public_tweets = [tweet for tweet in tweets if not tweet.get('tweet', {}).get('is_deleted')]

        # Convert back to JSON and re-add the JS variable assignment
        new_content = 'window.YTD.tweets.part0 = ' + json.dumps(public_tweets, indent=2) + ';'

        with open(tweets_path, 'w') as f:
            f.write(new_content)
            print(f"Processed {tweets_path} to remove deleted tweets")

if __name__ == "__main__":
    archive_directory = input("Enter the path to your Twitter archive directory: ")
    if os.path.exists(archive_directory) and os.path.isdir(archive_directory):
        remove_private_content_and_deleted_tweets(archive_directory)
    else:
        print("Invalid directory path")

Explanation:

Removing DM Files: This part remains unchanged and removes files containing direct messages.
Processing Other Files: This part remains unchanged and handles other private data files by renaming their variables.
Removing Deleted Tweets:

The script opens the tweets.js file and reads its content.
It extracts the JSON part from the file content, which is enclosed within square brackets.
The script then filters out tweets marked as deleted (is_deleted flag).
It writes the filtered tweets back to tweets.js while preserving the JavaScript variable assignment at the beginning.

How to Run:

Save the script as clean_twitter_archive.py.
Open a terminal or command prompt.
Navigate to the directory where you saved the script.
Run the script using python clean_twitter_archive.py.
Enter the path to your Twitter archive directory when prompted.

This enhanced script will help you remove both private content and deleted tweets from your Twitter archive, ensuring only your public and active tweets remain. Adjust the script further based on the exact structure of your Twitter archive if necessary.
Prompt: I'd like to process the tweets.js file from a twitter archive to extract all the conversations, and ignore standalone tweets and retweets.
ChatGPT: To process the tweets.js file from a Twitter archive and extract all the conversations while ignoring standalone tweets and retweets, you can follow these steps:

Parse the tweets.js file to extract the tweet data.
Identify tweets that are part of conversations. These tweets typically have a in_reply_to_status_id field.
Ignore standalone tweets and retweets.
Save the conversation tweets to a new file or print them out.

Here’s a Python script to achieve this:
import os
import json

def extract_conversations(tweets_path, output_path):
    if os.path.exists(tweets_path):
        with open(tweets_path, 'r') as f:
            content = f.read()

        # Strip off the JS variable assignment to parse JSON
        json_content = content[content.index('['): content.rindex(']') + 1]
        tweets = json.loads(json_content)

        # Extract tweets that are part of conversations
        conversations = [tweet for tweet in tweets if tweet.get('tweet', {}).get('in_reply_to_status_id')]

        # Save conversations to a new file
        with open(output_path, 'w') as f:
            json.dump(conversations, f, indent=2)
            print(f"Extracted {len(conversations)} conversation tweets to {output_path}")
    else:
        print(f"{tweets_path} does not exist")

if __name__ == "__main__":
    archive_directory = input("Enter the path to your Twitter archive directory: ")
    tweets_file = os.path.join(archive_directory, 'data', 'tweets.js')
    output_file = os.path.join(archive_directory, 'data', 'conversations.json')

    if os.path.exists(archive_directory) and os.path.isdir(archive_directory):
        extract_conversations(tweets_file, output_file)
    else:
        print("Invalid directory path")

Explanation:

Reading the Tweets File: The script opens tweets.js and reads its content.
Parsing the JSON Data: It extracts the JSON array from the JavaScript file by removing the surrounding JavaScript code.
Filtering Conversations: The script filters tweets to find those that are part of conversations by checking the in_reply_to_status_id field.
Saving the Results: The filtered conversation tweets are saved to a new file named conversations.json.

How to Run:

Save the script as extract_conversations.py.
Open a terminal or command prompt.
Navigate to the directory where you saved the script.
Run the script using python extract_conversations.py.
Enter the path to your Twitter archive directory when prompted.

This script will extract all the conversation tweets from your Twitter archive and save them to a new file, ignoring standalone tweets and retweets. Adjust the script as necessary based on the exact structure of your Twitter archive.
Prompt: My Twitter archive also has a tweets-part1.js file. How it’s this related to the tweets.js file?
ChatGPT: In a Twitter archive, the presence of files like tweets.js, tweets-part1.js, tweets-part2.js, etc., indicates that your tweet data has been split into multiple parts due to the large number of tweets. Twitter splits these files to make it easier to manage and process the data without hitting file size limits.
Here's a brief explanation of these files:

tweets.js: Contains the first portion of your tweet data. This file is usually named tweets-part0.js in the context of multiple parts but is sometimes simply called tweets.js if there's only one part or if it is the first file.

tweets-part1.js, tweets-part2.js, etc.: These are additional parts containing subsequent tweets. They follow the same structure as tweets.js but contain different tweet data.

Understanding File Structure
Each file typically has the following structure:
window.YTD.tweets.part0 = [ ... ];
window.YTD.tweets.part1 = [ ... ];
window.YTD.tweets.part2 = [ ... ];

The variable window.YTD.tweets.partX indicates which part of the tweet data is being represented. The JSON array following the assignment contains tweet objects.
Updated Script to Handle Multiple Files
Here’s an updated Python script to process all tweet parts (tweets.js, tweets-part1.js, tweets-part2.js, etc.) and extract only conversation tweets:
import os
import json
import glob

def extract_conversations(archive_dir, output_file):
    tweet_files = glob.glob(os.path.join(archive_dir, 'data', 'tweets*.js'))
    conversations = []

    for tweet_file in tweet_files:
        if os.path.exists(tweet_file):
            with open(tweet_file, 'r') as f:
                content = f.read()

            # Find the JSON array within the JavaScript file
            json_content = content[content.index('['): content.rindex(']') + 1]
            tweets = json.loads(json_content)

            # Extract tweets that are part of conversations
            conversation_tweets = [
                tweet for tweet in tweets
                if tweet.get('tweet', {}).get('in_reply_to_status_id') or tweet.get('tweet', {}).get('in_reply_to_user_id')
            ]
            conversations.extend(conversation_tweets)
            print(f"Processed {tweet_file}: Found {len(conversation_tweets)} conversation tweets")

    # Save conversations to a new file
    with open(output_file, 'w') as f:
        json.dump(conversations, f, indent=2)
        print(f"Extracted a total of {len(conversations)} conversation tweets to {output_file}")

if __name__ == "__main__":
    archive_directory = input("Enter the path to your Twitter archive directory: ")
    output_filename = "conversations.json"

    if os.path.exists(archive_directory) and os.path.isdir(archive_directory):
        output_path = os.path.join(archive_directory, 'data', output_filename)
        extract_conversations(archive_directory, output_path)
    else:
        print("Invalid directory path")

Explanation

Using glob: The script uses the glob module to find all files matching the pattern tweets*.js in the archive's data directory. This ensures it processes all tweet parts, including tweets.js, tweets-part1.js, tweets-part2.js, etc.

Parsing JSON Content: The script reads each file's content, strips out the JavaScript variable assignment, and extracts the JSON array.

Identifying Conversations: It filters tweets that are part of conversations. This includes:

Tweets with a non-null in_reply_to_status_id (indicating they are replies).
Tweets with a non-null in_reply_to_user_id (indicating they are replies to another user's tweet).

Storing Conversations: The filtered conversation tweets are appended to a list, which is then saved to conversations.json.

How to Run

Save the script as extract_conversations.py.
Open a terminal or command prompt.
Navigate to the directory where you saved the script.
Run the script using python extract_conversations.py.
Enter the path to your Twitter archive directory when prompted.

This script will effectively extract all conversation tweets from multiple parts of your Twitter archive, ensuring you have a consolidated list of conversations across all your tweet data files.

Here's the full ChatGPT transcript https://chatgpt.com/share/8e0742c3-a44b-4fe4-979a-3096c26a588e

Working well enough for now. Conversations saved into virtual_adrianco


Improve documentation

Thank you for awesome project with clear documentation.
There was one thing that I wish that it was mentioned in the docs, so here's PR adding that. I also hid the 4k page configuration section as it is currently not working so that people do not waste time on trying to set it up.

I ran into exactly this while setting it up just about the same time the PR was opened. It's worth leaving the note, but mentioning that it may be broken. I simply commented it out while it was broken, but can enable it later once it's working. Better to at least document it.

Plus one to adding iwd recommendation. I did the install loop twice. :)


Can't Use Previews in Xcode in a Local Package if it requires SQLite.swift

First of all: I don't believe this is an error in SQLite.swift package, but I'm hoping someone has solved this problem.
I'm getting
"missing required module 'SQLiteObjc'"

when I try to use previews. I don't run into this problem in the main module, but when the view is in a local package imported by my app.
I imagine that you (or Stephen) have run into this problem when using previews (I see he makes heavy use of them in his point free episodes), and trust that one of you knows how to make the compiler happy.  I have posted this question on StackOverflow, but all I got is downvoted :(
Xcode Previews fail with: "missing required module 'SQLiteObjc'"
An issue was recently fixed for Carthage installs:
https://github.com/stephencelis/SQLite.swift/issues/1150
One suggestion I found was to try  adding: ${SRCROOT}/SQLiteObjc to the Swift Compiler Search Paths but that didn't help.
my Package.swift contains:
  .package(url: "https://github.com/stephencelis/SQLite.swift.git", from: "0.13.2"),

which resolves to 0.13.3
This problem occurs on an M1 MacBookPro running Monterey 12.5.1/Xcode 13.4.1 as well as Monterey 12.6 using (just released) Xcode 14. The app compiles without errors and runs fine. I just can't view previews.
When I compiled this morning, the missing SQLiteObjc message did not appear.
Again 🤷🏻
import SwiftUI
import TasksSQLite

struct ContentView: View {
    var body: some View {
        Text("Hello, world!")
            .padding()
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

Monterey 12.5.1
no such file or directory: '/Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Products/Debug-iphonesimulator/PackageFrameworks/TasksSQLite_584AE96A3AF58A43_PackageProduct.framework/TasksSQLite_584AE96A3AF58A43_PackageProduct'

LinkDylibError: Failed to build PrimaryPage.swift
Linking failed: no such file or directory: '/Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Products/Debug-iphonesimulator/PackageFrameworks/TasksSQLite_584AE96A3AF58A43_PackageProduct.framework/TasksSQLite_584AE96A3AF58A43_PackageProduct'
clang: error: no such file or directory: '/Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Products/Debug-iphonesimulator/PackageFrameworks/TasksSQLite_584AE96A3AF58A43_PackageProduct.framework/TasksSQLite_584AE96A3AF58A43_PackageProduct'
Edit:
I just cleaned the build folder again, and the error came back up:
<unknown>:0: error: missing required module 'SQLiteObjc'

missing required module 'SQLiteObjc'

SchemeBuildError: Failed to build the scheme "Tasklist"
missing required module 'SQLiteObjc'
Compile TasklistApp.swift (arm64):
:0: error: missing required module 'SQLiteObjc'
Emitting module for Tasklist:
:0: error: missing required module 'SQLiteObjc'
Compile ContentView.swift (arm64):
:0: error: missing required module 'SQLiteObjc'
Monterey 12.6
missing required module 'SQLiteObjc'

SchemeBuildError: Failed to build the scheme "Tasklist"
missing required module 'SQLiteObjc'
Emitting module for Tasklist:
:0: error: missing required module 'SQLiteObjc'
Compile ContentView.swift (arm64):
:0: error: missing required module 'SQLiteObjc'
Compile TasklistApp.swift (arm64):
:0: error: missing required module 'SQLiteObjc'
Copy Tasklist.abi.json (arm64):
error: /Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Intermediates.noindex/Tasklist.build/Debug-iphonesimulator/Tasklist.build/Objects-normal/arm64/Tasklist.abi.json: No such file or directory (in target 'Tasklist' from project 'Tasklist')
Copy Tasklist.swiftdoc (arm64):
error: /Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Intermediates.noindex/Tasklist.build/Debug-iphonesimulator/Tasklist.build/Objects-normal/arm64/Tasklist.swiftdoc: No such file or directory (in target 'Tasklist' from project 'Tasklist')
Copy Tasklist.swiftmodule (arm64):
error: /Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Intermediates.noindex/Tasklist.build/Debug-iphonesimulator/Tasklist.build/Objects-normal/arm64/Tasklist.swiftmodule: No such file or directory (in target 'Tasklist' from project 'Tasklist')
Copy Tasklist.swiftsourceinfo (arm64):
error: /Users/xxx/Library/Developer/Xcode/DerivedData/Tasklist-abrktmwcewhompgocivntszewxla/Build/Intermediates.noindex/Previews/Tasklist/Intermediates.noindex/Tasklist.build/Debug-iphonesimulator/Tasklist.build/Objects-normal/arm64/Tasklist.swiftsourceinfo: No such file or directory (in target 'Tasklist' from project 'Tasklist')
Once Again: I don't believe this is an error in SQLite.swift package, but I'm hoping someone has solved this problem.

Can you provide us a project to reproduce the issue? (a zip archive of your project for example)
I'm using the package in my apps and I don't have any problem with previews.

Thanks for responding. I will make the simplest demo I can that shows the problem and send it.

I was able to create an ultra simple project which demonstrates the problem.
Thursday.zip
It just prints out the name of the DB connection in a Text. Runs fine on the simulator, but ContentViewX will not preview from the package.


Focus Zone sets tabIndex to 0 for unfocusable element when it updates

Describe the bug
If an element is given a tabIndex of -1 and filtered out of a Focus Zone with focusableElementFilter, it should not participate in the Focus Zone or be tabbable.  This works as expected until some prop on the unfocusable element changes. When that happens, the Focus Zone will update the tabIndex of that element to be 0, making it tabbable which not desired.  This seems like an edge case, but it is occurring in the ReposFileTree component, which contains expand/collapse buttons in each row that should not participate in the Focus Zone.
Note: As this is a public repo, please be careful not to include details or screenshots from unreleased GitHub products or features. In most cases, a good bug report should be able to describe the new component without including business logic or feature details, but if you must discuss context relating to an unreleased feature, please open an issue in the private Design Systems repo and link to it here.
To Reproduce
Here's a simple example:
export const DefaultButton = (args: ButtonProps) => {
  const [expanded, setExpanded] = useState(false)
  const {containerRef} = useFocusZone({
    focusableElementFilter: element => element.getAttribute('data-focusable') !== 'false'
  })
  return (
    <Box ref={containerRef as RefObject<HTMLDivElement>}>
      <Button {...args}>Default</Button>
      <Button {...args}>Default2</Button>
      <Button
        {...args}
        data-focusable="false"
        tabIndex={-1}
        aria-expanded={expanded}
        onClick={() => {
          setExpanded(!expanded)
        }}
      >
        Default3
      </Button>
      <Button {...args}>Default4</Button>
    </Box>
  )
}

Paste into the DefaultButton storyboook example in this repo
Inspect the Default3 Button and notice it has a tabIndex of -1
Click on the Default3 Button and notice its tabIndex changes to 0

Expected behavior
Elements that are being filtered out of the focus zone with focusableElementFilter should not have their tabIndex updated by it.
Desktop (please complete the following information):

OS: MacOS
Browser chrome
Version 103.0.5060.134 (Official Build) (x86_64)

Additional context
Add any other context about the problem here.

@siddharthkp it looks like I'm able to reproduce in your codesandbox if the button is the first thing I click. If I tab into the focusZone before clicking then it's not updating. This isn't the behavior I'm seeing on the ReposFileTree though, the expand/collapse buttons are always changing their tabIndex to 0 when clicked regardless of whether the focus has been moved into the focusZone. My guess would be this is a problem with the FocusZone itself, it seems like it's not checking the focusableElementFilter filter somewhere that it should be.
https://user-images.githubusercontent.com/955442/186749727-9839d47f-6ead-47c8-a57a-d27e073204c9.mp4

I'm still most, I think we should pair on this :)

@siddharthkp sounds good, I'm down to pair next week!

Done, sent you an invite :)

@siddharthkp I think that works, I can update the buttons to be spans for now.


Surface Area of A Sphere

generate a random radius r, and then compute the surface are of a sphere of radius r and then display the output result.

Pls review this @Swayam221  https://github.com/Todarith/mathgenerator/pull/164


Add a workflow for publishing to NPM

Also adds a small test-npm-package that uses the published code to parse
hello world. If it fails, nothing is published.
DRY RUN ONLY - AMEND BEFORE MERGE

Weird test behavior going on here... gonna turn off valgrind for those tests. Weird that it's not reporting any races or memory unsafety, it's just hanging on memmove. Also weird that it started just now even though nothing changed with the native code.

OK, the publish dry run succeeded! Now to amend and publish for real!


Network Simulator: class Packet

Closes #10.

Thanks. I propose to go with this PR to close issue #10 as it seems more complete.

Please, ping me for review and convert this from draft to PR when ready. Thanks


[DOC] Where do you get the "opensearch-plugin" tool?

What do you want to do?

[X] Request a change to existing documentation
[ ] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

Tell us about your request.
This doc states you need a tool called opensearch-plugin, but doesn't state where you get or find that tool. I can see that it's in the bin directory, but the bin directory of what?
Do we need to be able to open up a shell inside the instance where Opensearch is running? Then how do I do that on AWS Opensearch Service? I don't see any way to connect to my domain inside the command line.
This makes plugins essentially unusable or unmanageable - the tool needed cannot be found or used.
*Version:
All versions of the documentation omit where to find this tool.
What other resources are available?
I have asked on Stack Overflow to learn if I'm missing something.

@tyrannosaurus-becks: "Tool" might be misleading. Its more of a feature or a command used to install OpenSearch plugins, packed in with OpenSearch. What plugin are you trying to install? Have you tried this syntax bin/opensearch-plugin install <plugin-name>?

Thanks @Naarcha-AWS ! I now see the command is present inside Opensearch containers. What I'm missing is how I would gain access to the command on AWS Opensearch Service where my domain doesn't appear to be reachable via the command line? Or am I missing something?

Are you running Serverless? If so, plugins are prepackaged. https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-genref.html.

This is what I needed! Thank you so much, @Naarcha-AWS !


BUG: Unable to pass middleware

Describe the bug
it is not possible to pass middlewares (ex: offset or size) as input to the directive.
Expected behavior
Have the possibility to pass middlewares as it was previously implemented with modifiers for popperjs wrapper.
Screenshots

Versions

ngx-float-ui [17.1.3]
@angular/core [17.0.0]
typescript [5.4.5]

These libraries are different, in Popper.js I had to introduce modifiers to handle the "no-flip".
Here modifiers are basically overkill and mostly risk to mess up with the compute inside.


[WIP][SPARK-35670][BUILD] Upgrade ZSTD-JNI to 1.5.0-1

What changes were proposed in this pull request?
This PR aims to upgrade ZSTD-JNI to 1.5.0-1, which uses zstd version 1.5.0.
Why are the changes needed?
Major improvements to Zstd support are targeted for the upcoming 3.2.0 release of Spark. Zstd 1.5.0 introduces significant compression (+25% to 140%) and decompression (~15%) speed improvements, described in more detail on the releases page:

https://github.com/facebook/zstd/releases/tag/v1.5.0

Does this PR introduce any user-facing change?
No.
How was this patch tested?
Build passes existing tests.
I will update this PR with the benchmark results to ensure there are no regressions, and commit the results of the benchmarks to core/benchmarks, when they are finished running.

Can one of the admins verify this patch?


add GitHub workflow that sets up a React Native project with the library

Hey @sbugert, can you maybe sign up for the GitHub Actions beta, so I can use it in this repo?
https://github.com/features/actions
Signup should be immediately accepted.

I was thinking similar things, but when I pushed it to my fork, it just worked; https://github.com/koenpunt/react-native-admob/runs/233747514
So not sure what the issue is, maybe they are still gradually updating users from the old format to the yaml format...

Btw great idea

Yeah I'm quite done with users saying "it doesn't work", while for me it works just fine. So I figured if I can demonstrate it's working on CI, I can simply refer to that :)

Btw, I'm seeing this banner in the repo;
So maybe you can change something in the settings of the repo?

I don't see a banner but I can click on the actions tab. But it only let's me create a new workflow there. And I did not find any settings related to actions.
Does it already work correctly for your fork? Then, I guess there's no reason not to try merging it to master and see if it works then. Or we could just wait to see if they're really still migrating the users :)

I've finalised the config, and it's running correctly on my fork: https://github.com/koenpunt/react-native-admob/commit/250daa4dc296d27e0072fe9a8cfddf6d9dddca9c/checks

Looks great! I can see it now in the actions tab. Maybe because it's not a draft PR anymore?
Running it every 7 days sounds good.
The only reason for it to break is Google changing something, isn't it?

The only reason for it to break is Google changing something, isn't it?

That, or the React Native implementation changes. But both are good to know early on of course.


Node-RED crashes right after node-mihome install

Hi,
I've got node-mihome installed via node-red-contrib-miio-localdevices and right after the palette install, Node-RED crashed.
Here's the last log:
[error] Error: getsockname EBADF
    at Socket.address (node:dgram:777:11)
    at Socket.<anonymous> (/Users/tazministrator/.node-red/node_modules/node-mihome/lib/protocol-miio.js:34:36)
    at Socket.emit (node:events:531:35)
    at startListening (node:dgram:184:10)
    at node:dgram:372:7
    at processTicksAndRejections (node:internal/process/task_queues:83:21)

Line 34 of protocol-miio.js is const address = this._socket.address();
I'm usually running Node-RED without issues with this config:
Node-RED version: v4.0.2
Node.js  version: v20.13.1
Darwin 23.4.0 arm64 LE

Any idea?
Thanks a lot in advance, kind regards.

Hi!
Did you find any solution?
Faced a similar problem when adding yeelink.light.colorc
Previously added viomi.aircondition.y116 and had no problems, although both have miot-local support.
https://home.miot-spec.com/s/yeelink.light.colorc
https://home.miot-spec.com/s/viomi.aircondition.y116

Nothing new sorry.

Same problem. Current solution is to use node-red version 3.0.2. Newer versions crash with EBADF error


GeoMx Normalization

target_demoData = normalize(target_demoData , data_type="RNA", norm_method="quant", desiredQuantile = .9, toElt = "q_norm")
Why do you suggest desiredQuantile = .9 ? I know GeoMx recommends to use Q3 for normalization.
How to plot boxplot using autoplot as normalisation plot ?

@pdichiaro if you would like to do Q3 normalization, change desiredQuantile = 0.75. For assay related questions such as best practices, please email<EMAIL_ADDRESS>The autoplot functionality does not include this plot at this time. However, you can view/extract data from the GeoMxSet object and plot with these outputs through the normal R plotting methods. For example, if you access the output from your normalized code as seen below, this provides you with a matrix that you can use for plotting.
countsMatrix <- assayDataElement(target_demoData, elt="q_norm")


Doesn't work properly on windows

Ok, I know where when wrong, I'm checking whether /nw exists but obviously it should be /nw.exe on Windows. 👀


Allow public access of large image settings.

Otherwise, unless you are logged in as an admin, the client can't read them.
I think Girder ultimately needs access control on individual settings, but that is a bigger issue.

LGTM.


fix(userspace/engine): store alternatives as array in -L json output

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

/kind release

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area engine

/area tests

/area proposals

/area CI

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: loresuso
Once this PR has been reviewed and has the lgtm label, please assign fededp for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: jasondellaluce, loresuso
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 3be473677ab71a99d13364b0f52f6d33c8b0f539

/milestone 0.35.0

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: jasondellaluce, leogr, loresuso
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [jasondellaluce,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


test: add info about how many instructions it takes to run benchmarks

This makes the automatic VM performance reporting also report changes in number of instructions executed. Those changes can be used to identify cases where performance hasn't actually changed but gas prices have changed.

I think it's good now. It is supposed to say N/A, as there's no opcode count for older commits.

@popzxc Thanks for the suggestions. I added (short) doc comments. But looks like I need to get a review from someone else to be able to merge.


No intent gets called - "App Launch" does work

Hi,
when using this interaction model:
{
    "interactionModel": {
        "languageModel": {
            "invocationName": "testintent",
            "intents": [
                {
                    "name": "AMAZON.CancelIntent",
                    "samples": []
                },
                {
                    "name": "AMAZON.HelpIntent",
                    "samples": []
                },
                {
                    "name": "AMAZON.StopIntent",
                    "samples": []
                },
                {
                    "name": "TestIntent",
                    "slots": [],
                    "samples": [
                        "tomato say me hello world"
                    ]
                }
            ],
            "types": []
        }
    }
}

calling "testintent" in amazons test console/alexa simulator  correctly response with "You launched the app" (also console logs it), tho when then trying to invoke an intent by calling:
"tomato say me hello world" or "testintent tomato say me hello world", it seems that the endpoint does not get loaded/called actually. So, launching app works but intents doesnt, what am i doing wrong?
Using following nodejs code:
var express = require("express");
var alexa = require("alexa-app");
var app = express();
var http = require("http"),
    https = require("https")
var alexaApp = new alexa.app("test");

alexaApp.express({
  expressApp: app,
  checkCert: false,
  debug: true
});

// now POST calls to /test in express will be handled by the app.request() function

// from here on you can setup any other express routes or middlewares as normal
app.set("view engine", "ejs");

alexaApp.launch(function(request, response) {
  console.log("yay");
  response.say("You launched the app!");
});

alexaApp.intent("TestIntent", {
    "utterances": [
      "tomato say me hello world"
    ]
  },
  function(request, response) {
      console.log("suc");
    response.say("Success!");
  }
);

var fs = require("fs");
var privateKey  = fs.readFileSync("./cer/privkey.pem", "utf8");
var certificate = fs.readFileSync("./cer/cert.pem", "utf8");
var credentials = {key: privateKey, cert: certificate};

var httpsServer = https.createServer(credentials, app);
httpsServer.listen(443);

Does someone may know, what im doing wrong?

Hi @JustMeDaFaq,
Are you using the Alexa test simulator for testing?
Also, can you verify that your http server is running properly (and the certificate is valid) against the url you provided for your alexa skill?

Yeah, certificate gets called.
Using Alexa Test Simulator, the new one on the Homepage.
Writing testintent works, it triggers the 'you launched the app" stuff correctly. (alexaApp.launch)
Just not when using alexaApp.intent :)

If you are using the test simulator, can you take a look at the request it outputs in the Skill I/O tab?
Also, try to invoke ask testintent to tomato say me hello world as your command.

ask testintent to tomato say me hello world => Works. How would i create a skill that just gets called by "tomato say me hello world " ?

You can read more about it at Invoking a Skill with a Specific Request , but I'm afraid the closest you will get is Alexa, say me hello world using tomato if your invocationName is tomato and your utterances include "say me hello world".
I'm pretty sure the usage of "connecting words" is there so Alexa could distinguish between different skills and route the request to the right one. If you want to elaborate on your use-case, we might be able to find the right utterance(s).

Good news! as Alexa's name-free interactions and skill discovery is in public beta, #378 will soon be merged and you will be able to resolve the issue you were having.
There's another issue (#367) with more links to developer documentation if you want to take a look.

I am facing the same issue when using Alexa simulator.
But when I test with Manual JSON it works!!!!
I think nothing is wrong with your code.I will check on real Alexa device just to make sure that the problem is only with Alexa simulator.

I have same problem, only app launch is working.

I am able to resolve this issue. The problem is with maintaining the session.When launch request fires, You need to keep session alive.
shouldEndSession is the Boolean parameter which is used to maintain session.
Below link explains how it works
https://developer.amazon.com/docs/gadget-skills/keep-session-open.html

now it works! Thank you


Scaling HAQ | GEWST

Scaling it to other states
Making the research more generic
Reusable tech
Dissemination Plan
Capacity building

@shreyaagrawal0809 's Inputs

Extend it to other sectors like Health, Child, etc.
A base of data suite and reference point for next build.
More grants to expand and support this work.
More advocacy calls with UP govt.
Speak about the work in conferences.

@upasanahembram 's Inputs
Research

Looking at other districts of UP as well.
Expanding to other states.
Comparative analysis of 2 districts.
Other factors affecting Girl Child Education (schemes, etc.)

Advocacy

Lot more research inputs which can be used for advocacy.
Research the policy landscape in the geography.
Advertising our work and speaking to people.
Outreach work in terms of adoption of the tool for numerous organisations.
Workshop for ed related organisations.

@TheDataAreClean 's

How does this work benefit to/from OBI or PF objectives.
Use this as a starting point for PF aadvacacy for yearly budgets.
Pitch the same suite to other states.

Preethi's Inputs:

Finding parallel's between education and our areas of interest
Working with public procurements to explore synergies
If the HAQ work can be expanded to other sectors?

Arun's Inputs:

Thinking from the perspective of OBI
Schemes dashboard

One of the scehemes is Beti Padai Beti Bachao
How can we give additional information beyond allocation / utilisation for the scheme
How do we better tell our stories?

MP / MLA dashboard

Demo / POC with HAQ work
How do we put out this data in open?

Shivam's Inputs:

Can this data / tool be a reference on OBI ?
Focus more on the impact of the project


Flix2

Closes #???
Description

For contributor use:

[ ] Targeted PR against main branch
[ ] Code follows the standards mentioned here
[ ] Updated relevant documentation
[ ] Re-reviewed Files changed in the Github PR explorer

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

6 of 39 (15.38%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.8%) to 85.5%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

flix.go
0
11
0.0%

utils.go
0
22
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.8%

Covered Lines:
3131

Relevant Lines:
3662

💛  - Coveralls

Pin using the latest time it was mutated not current block to be idempotent
flowgraph
{
  contract(id: "A.1654653399040a61.FlowToken") {
    id

  deployments(ordering:Descending, first:1) {
    edges{
      node{
        block {
          height
        }
      }
    }

  }
      code
}
  }```


User's Locale in IEventActivity

Issue
I need to get user's culture during OnEventActivityAsync so that the bot can send welcome message in the right language. When user sends a message, IMessageActivity has property locale. However, OnEventActivityAsync passes IEventActivity which does not have this property.
Proposed change
Add locale or culture to IEventActivity
Component Impact
Microsoft.Bot.Schema.IEventActivity
Customer Impact
Unable to properly determine customer's culture and start conversation in customer's language.
Tracking Status
Dotnet SDK

[ ] PR
[ ] Merged

Javascript SDK

[ ] PR
[ ] Merged

Java SDK

[ ] PR
[ ] Merged

Python SDK

[ ] PR
[ ] Merged

Emulator

[ ] PR
[ ] Merged

Samples

[ ] PR
[ ] Merged

Docs

[ ] PR
[ ] Merged

Tools

[ ] PR
[ ] Merged

[dcr]

Please try casting the activity to IMessageActivity :
protected async override Task OnEventActivityAsync(ITurnContext<IEventActivity> turnContext, CancellationToken cancellationToken)
{
    var asMessage = turnContext.Activity as IMessageActivity;
    var locale = asMessage.Locale;
}

Closing


Update website conf

This handles all the config changes needed for pydata-sphinx-theme 0.13.3. I still haven't fixed the tile spacing of the homepage image tiles, so still in draft mode. once I think that's fixed will do a circle front.
Ideally needs https://github.com/mne-tools/mne-tools.github.io/pull/27 to be merged first, but the sequencing doesn't really matter (just makes it easier to test the versionwarning changes here if they're already merged in)

Heh, needs the pyvista != pin from #11664. Feel free to push the same change here if you want to continue @drammock

... I also don't currently get a warning banner on https://mne.tools/dev/ but maybe this PR will fix that

hopefully this PR fixes that by letting the theme JS run before the versionwarning JS, so that versionwarning actually has a version dropdown menu to query.

I actually kind of liked the "breadcrumbs"

we can consider adding them back if others also like them; personally I think they make it too busy/crowded.  They're a pretty new feature of the theme so there might still be some kinks to work out too (i.e. not super thoroughly tested yet).


[Eurostep] Adapt widget-builder to multi channel (MSF)

What? Why?
The PR wants to allow the developer to publish the widget-template to a channel different from the default channel.
Starting from the automatically created environment variable in the widget folder WIDGET_BUILDER_CHANNEL_ID, the developer can add in his local a list of channels (comma separated) where he wants to publish the template, ex:
WIDGET_BUILDER_CHANNEL_ID=1,2
The change in the library removes the hardcoding to the default channel, and runs the publish for each channel inserted in the .env variable.
We preferred to manage it from the .env variable instead of using options since it's common to publish and update the widgets to every available channels during the project (so the dev shouldn't have to add options like --c=1,2 for every push, but instead change the the .env when he needs to do something different from the daily routine).
For any doubts about the implementation please send an email to:

<EMAIL_ADDRESS><EMAIL_ADDRESS>
Testing / Proof
The PR doesn't include implementations in the test files, ofc it is tested and working on Eurostep Commerce stores.
TBAdded: there is no check if the channel exists on the publish, if a channel doesn't exist the dev will receive a successful message even if nothing was published (since the channel id is not existent)

@christensenep can you merge this?

#111 supports this PR


Electron

Alright. It's here.
A few things:

Binary's are now very easy to make. (:
For Windows: npm run package-win
Linux: npm run package-linux
And for mac, npm run package-mac
Make sure these are run in admin command prompt.
They will come out in a folder called "release builds".

This has been tested on a mac.

Settings are shown but are not editable yet.
In future, I'll update the HTML and add that.

Thanks,
Sasial.

I have written it as 2.1.0 for the version.

Also, I set showOfflinePresence to true to prevent confusion when a user first starts the program.
They can always change it back. (:


Post-session retrieval instruction may be unclear

It is written that we should

Send the T1-weighted and T2-weighted scan for screening and incidental findings.

within 48 hours after the first session and that

To do so, we'll need to first download the data from PACS and then convert the data into BIDS.

However these last two instructions are to be done within one week and two week after the completed session.
Does it implies that, for the first session only, we should have everything in BIDS format, sent for screening within the first 48h ?

Does it implies that, for the first session only, we should have everything in BIDS format, sent for screening within the first 48h ?

Yes

Please reopen if you still think this is unclear.


Added btn:b

I've added btn:b|button:b|button:button" : "button[type=button]
Source: http://docs.emmet.io/cheat-sheet/

:+1: I was just about to create a issue about that.


Always have to hard refresh (CTRL + F5) to get it to work

Its probably as designed but for this to work I always have to hard refresh my youtube page else it doesn't work from the get go.

I agree with you, but i have no idea how to do that.

You would need a mutation observer for the userscript, though I don't know what you would need for the extension. Never developed one myself.

This only seems to apply when I browse the home page. The script works, but the issue I found with any script that changes the amount of thumbnails, is after a while, the cache takes over and scrolling down results in reloads and jumping back up a few rows.
Clearing the cache helps and I think we need some sort of listener or refresh to happen before page load


Strange subscriber behavior - long delays between message delivery

I recently got back to working on a project that incorporates pub/sub that had been on the shelf for a couple of months. I switched to 0.24.0-beta of the pub/sub client and I'm now seeing strangeness on the subscriber side: my subscriber often does not receive messages (for a long time). In the most recent experiment, I published a single message and the subscribe received it 20+ minutes later. Sometime the subscriber gets messages right away; often not.
I would expect all published messages to get delivered in a "reasonable" timeframe - when I used the old client a few months again, I receive them "promptly". Notes that may be pertinent:

outstanding-element-count is one as the client can handle only one pub/sub message at a time
there is currently only one subscription, with a single subscriber pulling from it (in the future there will be many)
publishing may be infrequent - it is expected that over time, there will eventually have many messages posted regularly but for now, there will often be minutes or hours between publish events.
it seems that publishing another message (or starting another client) helps get messages delivered sooner.

The setup of the client looks like this:
    val flowControl = FlowControlSettings.newBuilder
      .setMaxOutstandingElementCount(1L)
      .setLimitExceededBehavior(LimitExceededBehavior.Block)
      .build
    val name = SubscriptionName.newBuilder().setProject(project).setSubscription(subscription).build
    Subscriber.defaultBuilder(name, receiver)
      .setExecutorProvider(pubsubThreadPool)
      .setFlowControlSettings(flowControl)
      .setCredentialsProvider(credentialProvider)
//        .setAckExpirationPadding()
//        .setMaxAckExtensionPeriod()
      .build()

Related to #2502

I'm sorry I didn't see this issue. I think this is related to #2502 and #2506.
The short version is that a firewall sees an idle connection and closes it without notifying the client, so it takes the client a long time to realize the connection is bad and reconnect.
I'll close this for now as duplicate; please reopen if you think the issues are unrelated.


Allow image to scale when only given width or height

Thank for this lib. I did the following modification on the Image component:

allow to specify a size in percentage
allow to only specify the width or the height

It allows me to do the following <img src="https://images.unsplash.com/photo-1553181438-b2a9c116b959"  width="50%">
In the meantime, I'm using this fork: https://www.npmjs.com/package/react-native-render-html-image-resizable

Thank you for your contribution! I'm closing in favor of #389 which reimplements the HTMLImage component, and address the issues I raised in my previous comments.


[mambabuild] fix multi-output once more

There is an issue where a MatchSpec shoudl be a string here:
ref https://github.com/conda-forge/staged-recipes/pull/16814
{% set name = "ocp" %}
{% set version = "7.5.2beta" %}
{% set occt_version = "=7.5.2" %}

package:
  name: {{ name }}
  version: {{ version }}

source:
  # The release .tar.gz does not contain the requisite `pywrap` submodule, use
  # the tagged git version for now

  # url: "https://github.com/CadQuery/OCP/archive/refs/tags/7.5.2-beta.tar.gz"
  # sha256:<PHONE_NUMBER>64dae4628b7f536ccfdd245cf397eaf8b3c1b2f724d517c99ac171

  git_url: https://github.com/CadQuery/OCP.git
  git_rev: 7.5.2-beta

build:
  number: 0

test:
  imports:
    - OCP

outputs:
  - name: ocp-devel
    script: generate-bindings.sh
    requirements:
      host:
        - python
        - clangdev
        - clang =10.0.1
        - pybind11
        - pybind11-abi
        - occt {{ occt_version }}
        # binder requirements
        - joblib
        - toml
        - click
        - cymbal
        - jinja2
        - logzero
        - pandas
        - path.py
        - pyparsing
        - schema
        - tqdm
        - toposort

  - name: {{ name }}
    script: compile-bindings.sh
    requirements:
      build:
        - python
        - cmake
        - ninja
        - {{ compiler('cxx') }}
        - {{ cdt('mesa-libgl-devel') }}  # [linux]
        - {{ cdt('libxi-devel') }}       # [linux]
        - {{ cdt('libxext-devel') }}     # [linux]
      host:
        - python
        - pybind11
        - "{{ pin_subpackage('ocp-devel', exact=True) }}"
        - occt {{ occt_version }}
      run:
        - python
        - occt {{ occt_version }}
        - "{{ pin_subpackage('ocp-devel', exact=True) }}"

about:
  home: https://github.com/CadQuery/OCP/
  license: Apache-2.0
  license_family: Apache
  license_file: LICENSE
  summary: 'Python wrapper for OCCT using auto-generated pybind11 bindings.'
  doc_url: https://github.com/CadQuery/OCP/blob/master/README.md
  dev_url: https://github.com/CadQuery/OCP/

extra:
  recipe-maintainers:
    - whophil
    - adam-urbanczyk

Turns out the root problem here was that the name of the top level package and the output should be different.


Form options configurators

Here are the changes I was talking about in https://github.com/javiereguiluz/EasyAdminBundle/pull/678#issuecomment-166861415.
It basically adds the ability to configure dynamically the options given to the root easyadmin form, by declaring a service tagged easyadmin.form.type.configurator :
services:
    app.easyadmin.form.type.configurator.easyadmin:
       class: AppBundle\Form\Type\Configurator\EasyAdminTypeConfigurator
       arguments: ['@request_stack']
       tags: [{ name: easyadmin.form.type.configurator }]

namespace AppBundle\Form\Type\Configurator;

use Symfony\Component\Form\FormConfigInterface;
use Symfony\Component\HttpFoundation\RequestStack;

class EasyAdminTypeConfigurator implements TypeConfiguratorInterface
{
    /** @var RequestStack */
    private $requestStack;

    /**
     * @param RequestStack $requestStack
     */
    public function __construct(RequestStack $requestStack)
    {
        $this->requestStack = $requestStack;
    }

    /**
     * {@inheritdoc}
     */
    public function configure($name, array $options, array $metadata, FormConfigInterface $parentConfig = null)
    {
        $request = $this->requestStack->getCurrentRequest();

        if ($request->query->getBoolean('disable_validation', false)) {
            $options['validation_groups'] = false;
        }

        return $options;
    }

    /**
     * {@inheritdoc}
     */
    public function supports($type, array $options, array $metadata, $isRoot = false)
    {
        return $isRoot && 'easyadmin' === $type;
    }
}

Honestly, I don't have a strong opinion on this yet, besides the fact it brings consistency on the way type options are handled everywhere in EasyAdmin, and allow to decouple things from the AdminController in userland.
The second commit which adds the EasyAdminTypeConfigurator may be not really be necessary actually, and we can keep passing the initial options to the type configurators in the AdminController, as in first commit.
However, it's a good example of the feature & reminder on how easyadmin deals with request attributes.
cc @javiereguiluz

With hindsight, I've now made my opinion on this: The types configurators are a feature of the EasyAdminFormType, meant to configure its fields. Not to configure the options of a root form, which should remains in the controller.
I'm closing this for those reasons.


Revert "Add Mesos hyperkube minion server "

This breaks make quick-release @sttts
Reverts GoogleCloudPlatform/kubernetes#11928

LGTM.

Checking.

Here is an example build log: https://storage.cloud.google.com/kubernetes-jenkins/pr-logs/c9bc1456ff1d69158baf34dd682992b790ba27a8/kubernetes-pull-build-test-e2e-gce/3962/build-log.txt

Here is the fixed version: https://github.com/GoogleCloudPlatform/kubernetes/pull/12096


x-axis date formatting. Sundays appear as months

In d3 js time scale sundays are being displayed as month. For example, in the attached screen shot, instead of Sun 05, it displays Mar 05.

There is also an issue posted in another library which uses d3js as its base.the ljnk is:
https://github.com/FormidableLabs/victory/issues/352

Correct. Please read the API Reference for time.tickFormat:

The default multi-scale time format chooses a human-readable representation based on the specified date as follows:

%Y - for year boundaries, such as 2011.
%B - for month boundaries, such as February.
%b %d - for week boundaries, such as Feb 06.
%a %d - for day boundaries, such as Mon 07.
%I %p - for hour boundaries, such as 01 AM.
%I:%M - for minute boundaries, such as 01:23.
:%S - for second boundaries, such as :45.
.%L - milliseconds for all other times, such as .012.

Although somewhat unusual, this default behavior has the benefit of providing both local and global context: for example, formatting a sequence of ticks as [11 PM, Mon 07, 01 AM] reveals information about hours, dates, and day simultaneously, rather than just the hours [11 PM, 12 AM, 01 AM]. See d3-time-format if you’d like to roll your own conditional time format.

Please go through multi scale time format
where we have following code:
var format = d3.time.format.multi([   [".%L", function(d) { return d.getMilliseconds(); }],   [":%S", function(d) { return d.getSeconds(); }],   ["%I:%M", function(d) { return d.getMinutes(); }],   ["%I %p", function(d) { return d.getHours(); }],   ["%a %d", function(d) { return d.getDay() && d.getDate() != 1; }],   ["%b %d", function(d) { return d.getDate() != 1; }],   ["%B", function(d) { return d.getMonth(); }],   ["%Y", function() { return true; }] ]);
Here when value is Sunday 05, this below condition  ["%a %d", function(d) { return d.getDay() && d.getDate() != 1; }] should return true but it returns false because first part of && condition(i.e. d.getDay()) returns 0 for sunday and 0 && anything will be false...
so just change this to
["%a %d", function(d) { return d.getUTCDay() <= 6 && d.getUTCDate() !== 1; }]

@yashshree-cg Please see the 4.x code here:
https://github.com/d3/d3-scale/blob/4c8c282d5f0ac938b4841ce6851389e7f0f545ba/src/time.js#L60-L68


LAND-1058: Fetch new post authors as contacts

https://linear.app/tlon/issue/LAND-1058/contacts-on-fetch-of-posts-collect-new-authors-to-register-as-contact
This doesn't check whether we're adding someone we already have as a contact. I think that it's better for %contacts to make that idempotent than checking it here, which it looks it does but I'm not 100%.

@midsum-salrux yeah %heed is idempotent


Faster staticfiles tests

This PR makes the tests go from 7,7s to 2,9s on my machine (and I have a SSD).
Small win, but good to take anyway!

Nice


Documentation: Template Overview and Basic page template

📇 User story
As a user, I want to see documentation on how to create a basic page template using the GC Design System tools so that I can follow the pattern and create pages more efficiently.
✅ Definition of Done / Outcomes

[x] Done when content has been created and reviewed
[x] Done when design has been created and reviewed
[ ] Done when the documentation website has been updated with the content and design (through a PR that is approved and ready for merge, but not yet published)

📜 Acceptance criteria

[ ] PR on the website documentation repository is approved and ready for merge
[ ] Code follows design updates
[ ] Code follows content updates

📝 More info
This is part of the Basic page template work
Related tickets:

1056 Design: overview page for page templates #1056

Here is the figma file:
https://www.figma.com/design/nfpEteHyEJ9dhJ2YvuvLeo/Documentation-site%2FComponent-Pages?node-id=15116-3531

@SmartMouthWords this ticket needs https://app.zenhub.com/workspaces/design-system-6100624a19f4cf000e46e458/issues/gh/cds-snc/design-gc-conception/1058 to be done so we can update the website with the content for the basic page template. Would you happen to know when that will be done? TIA!

I have a PR available for review and testing here: https://github.com/cds-snc/gcds-docs/pull/430
I found a few issues which I've indicated in the summary of the PR @SmartMouthWords
@ethanWallace feel free to take over the PR next week

Overview page update design here: https://www.figma.com/design/nfpEteHyEJ9dhJ2YvuvLeo/Documentation-site%2FComponent-Pages?node-id=15046-4281&node-type=canvas&t=IEHVkEd0LXbfZu2m-0
Basic page designs here (comment on the ticket): https://github.com/cds-snc/design-gc-conception/issues/1058#issuecomment-2432477029

I have a potential solution for the code & preview pages for the templates, will discuss with the team/designers this week

@daine and @SmartMouthWords to connect and decide on version today

Here is the basic page template page (still needs to be updated):
https://pr-430.djtlis5vpn8jd.amplifyapp.com/en/page-templates/basic/
Here is what the code page looks like for the basic page template:
https://pr-430.djtlis5vpn8jd.amplifyapp.com/en/page-templates/basic/code/
Sadly the preview page doesn't run on the amplify preview URLs but here is a screenshot:

I'm not sure what the code page is. Is this only for copying the code? We'd talked about having a set up like grid where the user copy the code from the main content page. Do we need a separate page? @melaniebmn Can you clarify?

For the preview page heading: "Basic page template preview" and "Aperçu du modèle de page de base"

Final stretch for this ticket. We discussed the following:

Preview page. It will now no longer contain any heading to keep it simple. This follows the same pattern found on https://design.canada.ca/coded-layout/generic-destination-basic.html
Preview image - will be provided by design
Code - will not need a separate page, but the collapsible viewCode shortcode function needs a rework as we've identified a few bugs or issues with it namely:

It currently adds </p> and <p> tags to newlines on the code. It may be getting processed as a regular markdown format.
no syntax highlighting
"view code" button never changes into "hide code"
we'd like "copy" code button to live within the bounding box of the code
FIX: The issues above can be fixed by replacing it with the highlighter plugin used when testing the separate code page, we can just update it to be collapsible like the viewCode shortcode function

I think we should be good to go now, @melaniebmn brought the PR to completion which can be merged once we're ready.

This is done now, the PR has been updated, approved and merged.


⚠ SceneTime has degraded performance

In bb890bf, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1659 ms

Resolved: SceneTime performance has improved in 77eaeed after 7 minutes.


Update README.md

pure native android demo documentation  - updated to 'not supported'

Agreed. Although, I'm not sure we should keep the 'how to' instructions. Might be confusing for some.

Agreed, you can delete the instructions


Posts infringing community rules should be closed, not deleted

Posts which are removed due to community rules such as off-topic should not be removed, but "closed". Meaning only admins/moderators/poster can comment on it and it's hidden from the feeds.
The operation should also be reversible.
This gives a place for moderators/admins/posters to discuss the reasons why the post was closed down, and the ability of the poster not loosing its content.
This should also trigger a notification to the poster to let him know that it has been closed.
Perhaps a way for moderators to state the why is also desirable.

Duplicate of #376 (already released)


Fix: Rename class

This PR

[x] renames a class

Similar to #982.
Blocks #1009.

Thank you, @BackEndTea!


Inconsistency between dev and build with trailing slash

working with astro 1.1.5
let pathname = new URL(Astro.request.url).pathname;

with astro dev dev this doesn't return a trailing '/' whereas build does.

Thanks for reporting this @AidanNichol! This repo is meant for our docs, not for the framework itself. May I ask you to make the issue in the main Astro repo instead? https://github.com/withastro/astro/issues/new/choose


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/94250

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/96815

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/96817

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/108573

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/115892

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/116809

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/118134


Add subresource integrity

See #353 for a good attempt that backfired.
I'd like subresource integrity, but easily configurable and no hassle for those using local Bootstrap files.

I understand the complexities of managing sub-resource integrity in the previous solution (#353).  Maybe I'm missing some greater context but a sufficient middle ground could be to make enabling integrity a globally explicit option (disabled by default).  Then those that don't have these issues (me included) have a global solution and those that don't care about or actively want to avoid integrity can do so by default.

We implemented this on the Bootstrap 4 version, will see if we can port it to Bootstrap 3.
'css_url': {
        'href': "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css",
        'integrity': "sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ",
        'crossorigin': "anonymous",
    },

Bump


feature: CosmosDB execute stored procedure

There were work items for this:
https://github.com/microsoft/vscode-cosmosdb/issues/2066
https://github.com/microsoft/vscode-cosmosdb/issues/896

The UX will be:

Right click a stored procedure and click "Execute Stored Procedure"
Enter the partition key
Enter the parameters


coverage: fix from update

In #861 envoy was bumped. It included https://github.com/envoyproxy/envoy/pull/10909. https://github.com/envoyproxy/envoy/pull/10909 was a major overhaul of coverage, and I believe envoy mobile's use was broken per: https://github.com/lyft/envoy-mobile/runs/711200768

I'm temporarily disabling coverage for now since it's blocking PRs: https://github.com/lyft/envoy-mobile/pull/866
I spent a few minutes looking into fixing the breakage from https://github.com/envoyproxy/envoy/pull/10909, but it looks like the fix won't be trivial since we rely on EXTRA_QUERY_PATHS and ONLY_EXTRA_QUERY_PATHS (the latter of which was added upstream by @junr03 recently), and the file that used those was deleted in the above PR.


Avoid to write linked path

Currently, sigdump uses predictable path to write object dump.
But, in some circumstances, this implementation makes a vulnerability for dangling symlink attack.
And also, Kernel.open should use 0644 instead of 0666(wolrd-writable permission).
This will be also vulnerability part of dangling symlink attack.

@frsyuki Could you kindly take a look if you have a time.
If you don't have enough time to maintain this gem, we can handle issues/PRs on @fluent-plugins-nursery:
https://github.com/fluent-plugins-nursery/contact
We think that maintainace of this gem is important for Fluentd community.


Update for game versions 1.12.3/1.12.4

Editor update to version 1.12.3 and opening and latest game version in the editor will result in an instant crash

This is a known issue. Some people have forked and did a hotfix if you look through some of the previous threads, though!

yea idk if im just looking in the wrong places but it crashes instantly when trying to load a PC or PS4 save

Yeah it's the offsets being off. Things changed with the DLC. I am working on a new release and it seems like there's multiple forks that have already hot fixed these issues.


Added PHP Varna to the list of participating groups

I removed the email property. Should I also squash the commits?


fix(import): rule was overwritten by another

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


NEXT-10503 If a channel does not have an export, go to the next chann…

1. Why is this change necessary?
This change is necessary because we should export all feeds
2. What does this change do, exactly?
Replace a return with a continue, so all channels are checked
3. Describe each step to reproduce the issue or behaviour.
Create multiple sales channels, give one of them an export. Run the ProductExportGenerateTask and observe that if a channel has no configuration, all further channels are skipped
4. Please link to the relevant issues (if any).
https://issues.shopware.com/issues/NEXT-10503
5. Checklist

[ ] I have written tests and verified that they fail without my change
[x] I have squashed any insignificant commits
[x] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

In fact, the whole if statement could be removed as well, for the foreach loop will do nothing on an empty count. But I assumed the check was there to be explicit about not creating a message

In fact, the whole if statement could be removed as well, for the foreach loop will do nothing on an empty count. But I assumed the check was there to be explicit about not creating a message

Hello!
Sorry for the wait. In the meantime, this issue has been solved during https://issues.shopware.com/issues/NEXT-16183 and has already been merged.
Thanks anyway for your contribution :)


Insulated scope in directive

If use new scope in directive, and create new table with some specific  params(page, filter) from some controller and binding to view.
-- ngTable reset page.
-- ngTable double init.

I think changing to an isolated scope is not a good idea for the following reasons:

isolated scope is really best suited to an element directive (ie restrict: 'E')
it would probably break lots of apps already using ngTable


Added outlier analysis, public-facing dataset extraction tools, and out-of-tree pass

opt_analysis_tools.py contains tools that download bitcode modules from HuggingFace dataset, extract transformation and analysis pass time, and export as csv and json format (recommended csv for now since it works better with pandas and other data analysis library). Modular enough to expand to accommodate specific needs (random sampling for downloading bitcode modules, plot more figures with matplotlib, etc.)
outlier_analysis.py contains tools to extract and analyze outliers. Ray framework is required to run some of the functions to extract outliers.
RemoveFunctionBody pass is built out-of-tree to be compatible with local build of LLVM. To build the pass, go to llvm-ir-dataset-utils-internal/llvm_ir_dataset_utils/tools/RemoveFunctionBodyPass and run ./install command. Syntax to run with opt: opt -load build/libRemoveFunctionBody.so -load-pass-plugin=build/libRemoveFunctionBody.so -passes='remove-fn-body' -index <index in integer here> <path to bitcode module file> (this is inside RemoveFunctionBodyPass directory, if somewhere else, please modify the path to -load and -load-pass-plugin). Using both -load and -load-pass-plugin to make the pass work with argument.

I think I messed this workflow up since I forced push into upstream main branch, clearing up all previous commits, where they are in 3 separate PRs now. (#31 opt analysis tools, #30 outlier analysis, #29 out-of-tree function body removal pass)


⚠ ClamAV has degraded performance

In a5498f8, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 215 ms

Resolved: ClamAV performance has improved in 5e57daa.


CB-5320 Add cluster template for OpDb with Phoenix for Azure

This is extending CB-4551 to Azure.
In CB-4551 we have added a new OpDB blueprint that adds Phoenix, but we have only added the cluster blueprint for AWS.
This patch adds the cluster blueprint for Azure as well.
The blueprint is mostly identical to the existing opdb 7.0.2 Azure blueprint, save that it refers to the newer blueprint, and it includes the approved, but not yet merged CB-5275 fix.
Testing done:
Since I have been unable to get a local Cloudbreak instance working with Azure, I used the mow-dev environment, where created an environment on azure, uploaded the blueprint, and built an OpDB DH cluster with the latest CM and CDPD.
I have run a simple Phoenix smoke test on the cluster, and it passed.
Since the existing Azure OpDB cluster template, and this one only differs in the referred blueprint, I expect that this was sufficient testing.
Closes #CB-5320

See CB-5752 instead


OSASINFRA-3550: openstack: ingress API & octavia ingress provider

What this PR does / why we need it:
Until now, we didn't have a working Ingress on an initial deployment, and we thought we would just rely on day 2 operations to setup Ingress with e.g. MetalLB.
It turns out that we could use OpenStack Octavia (Load Balancer as a service) as an optional provider for Ingress, at least for now in dev-preview.
With this PR, we don't expect the OpenStack cloud to have Octavia enabled which is why we disable the provider by default, which means Ingress won't be working on day 1 and it's up to the user to deploy something (e.g. MetalLB).
If Octavia is used, the floating IP and the DNS record for Ingress would have to be pre-created before deploying the hosted cluster.
The new CLI would be:
hypershift create cluster openstack --openstack-ingress-provider Octavia --openstack-ingress-floating-ip <-ingress-floating-IP> (...)

We have some validation that check that if a FIP is provided, it's only accepted with the Octavia provider for now.
The HCP.Spec has been updated as well to allow the Ingress FIP to be stored and the Ingress provider (default to None now).
In the future, we might change the default and even remove the Octavia provider if we find a better way (e.g. re-using on-prem LB, based on Keepalived).
But by keeping it "disabled" by default ensure some sort of backward compatibility even if OpenStack is dev-preview now.

/cc bryan-cox

/test e2e-aws e2e-azure

/test e2e-azure
resting Azure but it seems unstable

/test e2e-openstack
to ensure there is no regression on default deployments

/test e2e-openstack

/retest-required
/test e2e-openstack
CI glitch on the registry

I'd prefer to see https://github.com/openshift/release/pull/55115 merged first so we can the e2e tests passing.

I'd prefer to see openshift/release#55115 merged first so we can the e2e tests passing.

fair

I confirm that we have no regression with that PR:
    util.go:324: ClusterVersionProgressing=True: ClusterOperatorNotAvailable(Unable to apply 4.17.0-0.ci.test-2024-08-02-142747-ci-op-xv0zc09t-latest: the cluster operator console is not available)

like before.

/test e2e-aws e2e-azure

/lgtm

/approve

/hold for CI
I'll hold cancel once we have positive results.

/lgtm

/retest-required

/test e2e-openstack
With the recent changes in openshift/release, we should make progress to have Ingress working in the CI job.

/test images e2e-aws e2e-azure

OpenStack CI will fail until we get https://github.com/openshift/release/pull/55160 (at least). let's wait and retest once ready.

/test e2e-aws

/test e2e-azure

/test e2e-aws

Status of this PR:

I want to get the aws job green to avoid we don't break anything
once https://github.com/openshift/release/pull/55196 has merged, we can run e2e-openstack and hopefully get good results. If not we'll iterate.

/test e2e-openstack

/test e2e-openstack

/test e2e-openstack

/retest-required
/test e2e-openstack

/test e2e-openstack

Note: for testing purpose, I cherry picked the commits from https://github.com/openshift/hypershift/pull/4492 until they are merged. This PR is still on hold for now, until we get green CI on e2e-openstack.

/lgtm

@sjenning I removed the 2 commits from the other PR since I got better results, this PR can now land I think. Please add the LGTM again.
Thanks
/hold cancel

/lgtm


Use digests when generating flow interfaces

Task
Use digests when generating flow interfaces
Description
Convert package to TypeScript
Adds a tsconfig.json and various dependencies for a rewrite in TypeScript.
Cache digests when generating interfaces
Defines a Digest to compute when generating a Flow interface from a TypeScript interface, which is then written to a cache on disk. Subsequent interface generation compare the digest written in the cache to the digest of the TypeScript interface if there is already a Flow interface present. If the digests match, generating the Flow interface is skipped.
Ajv is used to define the schema of digests that are serialized to the cache and then parsed into TypeScript types.

This is tested working locally:

Point package in megarepo to cloned @freckle/gen-flow repo checked out with this branch
Run yarn to update lockfile
Remove lib and run yarn build:lib to verify that interfaces are generated and .genflowcache is written
Update a TypeScript module such that the interface generated by tsc will change (i.e., rename a type identifier in an export)
Run modified yarn build:lib that does not include yarn clean:lib in the script
Build is much faster; Flow interface for corresponding updated TypeScript module has expected change

I'm testing the CI use case in this PR: https://github.com/freckle/megarepo/pull/26106

Seems to work as expected in CI: https://github.com/freckle/megarepo/pull/26106#issuecomment-1480552689

Build is much faster; Flow interface for corresponding updated TypeScript module has expected change

I wonder how much of a speedup this actually is!? Seems like something that could help morale and should be widely publicized- I know I'm pretty depressed about the speed of compiling our frontend right now 😢

Build is much faster; Flow interface for corresponding updated TypeScript module has expected change

I wonder how much of a speedup this actually is!? Seems like something that could help morale and should be widely publicized- I know I'm pretty depressed about the speed of compiling our frontend right now 😢

The difference is pretty dramatic. On CI, the first build with no cache still takes 10 minutes, but from a partial cache it takes under 2 mins.


Get rid of user-shell.sh

It makes downstream consumption outside of Fedimint repo harder to coordinate.
https://github.com/fedimint/fedimint/issues/3316#issuecomment-1781978179

@Maan2003 @dpc I know we kinda have devimint exec now, but there's still a user-shell.sh script. Is this issue still relevat?

scripts/dev/user-shell.sh still does:
eval "$(devimint env)"

twice(!?) which seems architecturally meh. The completion and aliases seem useful, but could maybe be done by devimint internally somehow (include_str! script file and make the shell in exec source it?) to avoid downstream having to copy&paste it?
And STATUS="$(devimint wait)" too, I don't like.
So yeah, the goal here is to make devimint more self-contained and turn-key, so downstream consumers can just import it in the PATH and get things rolling with one command, instead of gluing together set of scripts and binary itself.


Strong password- HackerRank

Description
Code added for Strong Password problem in C++
Fixes #2299
Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings

@ravikr126 @sameeksharl please review the pr


fix: enhance some interactive experiences

自动选择用户配置的下载器
关闭站点编辑弹窗后，清除站点表单

无法合并：Head branch is out of date. Review and try the merge again.


fixed typo

Hey there,
I fixed the typo of the ../constants/apiContants.js  to ../constants/apiConstants.js and reflected the new changes wherever it was mentioned

Thanks for the typo fix. Since it was submitted on October 1st I am adding label as hacktober-fest-accepted as mentioned in official Hacktoberfest docs here.

Thanks for the typo fix. Since it was submitted on October 1st I am adding label as hacktober-fest-accepted as mentioned in official Hacktoberfest docs here.

Thank you so much. :)

@all-contributors please add @DeepaPrasanna for updating code


External link in the game.

Hi. I am Emiliano, From Spain.
I was developing a story on GB Studio and some problems have arisen. First of all, I wanted to know if I can insert hyperlinks to a web page on the last scene of the game.
Thank you for your answer and thank you for having developed all of this.

I'm sure you could display a static url no problem with text. But as the Gameboy wasn't internet enabled there would be no way to make this link clickable and open a browser. Instead can you include think link in documentation that gets distributed with your rom?
I imagine your intended use case is to reward someone for completing your game, however I can't think of a practical way of doing this. Maybe use a url shortening service to make it easier to type and fit on the screen, as well as making it a bit more abstract than. www.mygame.com/finishscreen

Not technically possible. How about displaying a QR code instead?

Hi @Emilianomontani, it's a bit messy but there is a way you could open a web page from the final scene in your game using the method I've documented at
https://chrismaltby.itch.io/gb-api-poc
If you follow the instructions there and replace the last part with something like:
<script>
      setInterval(function(){
          var variablesPtr = 0xC545; // Make sure to change this to your _script_variables location (note the 0x at the front too)
          var variableIndex = 21; // The variable that is set to true when you want to do the redirect (using $21$ here)
          if(gameboy && gameboy.memory[variablesPtr + variableIndex]) {
            // URL redirect goes here
            window.location.href = "https://www.gbstudio.dev"
           // Reset the variable back to zero once done to stop repeated calls
            gameboy.memory[variablesPtr + variableIndex] = 0;
          }
      }, 10);
</script>

I think that should work.