Standardise Governance Process

As Lobs spread across the digital ocean, there's likely to be greater discussion, more options, disparate opinion and the potential for disharmony.
A more rigid governance process would ensure that important issues are discussed, support sought and only the highest quality proposals are voted on. This is a discussion starter, rather than a solidified proposal. My thoughts on this:

Require an issue/proposal to be discussed and support gathered informally for a set period, or have a quorum of informal support. This may require migration to a more suited platform with poll facility (eg. commonwealth).

If majority support exists, move to a formal proposal with a standardised template (we could adopt something like a stripped down version of a Maker MIP)

Proposals submitted formally through a few nominated Governance facilitators. This keeps actual voting (snapshot) clean and with proposals that meet criteria and support.

Cheers!

I would like to propose taking things a step further, either in this proposal or as something standalone, to outline what can and can't be made a proposal, what the multisig holders will and won't get involved in, if there are powers of veto in the process and who those people are.
It seems logical to discuss whether the spend of 2 ETH or the granting of 1 LOBS for a listing on Rarity Tools, to discuss changing specifics of the multisig contracts for additional safety or to fund community development of rarity trait data, but what if someone took a serious proposal forward to buy Berghain - aside from the various challenges that could be involved - could a DAO even buy a bricks and mortar building etc etc - our Multisig holders inevitably would have to sign off on this.
I believe the DAO needs a constitution, collaboratively drafted and adopted that outlines just how far the autonomy is to go, who oversees (if anyone) adherance to governance rules, what the DAOs goals and objectives are

In light of the comments above, we may want governance to remain dynamic. It's definitely up for discussion whether we want any 'blockers' inserted in the future, but in the meantime, here is a brief idea for how we can tidy up the process so that quality proposals stand out.
Step 1
Discussion in github. Issues should be prefixed with [Discussion], [Proposal], [Technical] or [Urgent]. I'd like to see some sort of signalling...we could use https://gh-polls.com/, but it's slightly technical. Maybe we could use Commonwealth plugged into Snapshot?
Step 2 - Formal LIP (snapshot)
See below for template.
LIP Template
Preamble
LIP#: <# to be assigned>
Title: <MIP title>
Author(s): <list of authors' Telegram handles or wallet address if anon>
Contributors:
Nominated Proposer: <Should be arranged in advance if author is ngmi/has not enough lobs>
Date Proposed: <yyyy-mm-dd>
Date Ends: <yyyy-mm-dd>
Replaces: <List of LIP it is replacing>

References

A list of supporting materials referenced by this LIP.

Summary

A shortened description of what the Lobster Improvement Proposal (MIP) is meant to do.

Requirements

Any work or funds that are required to fulfil this LIP.

Motivation

A short description of the motivation behind the LIP.

Proposal Details

A more in-depth description of the thinking behind this LIP.

In regards to "real" governance. We could draft Articles of Association and sign them with our wallets. Could lay out governance in a real meatspace way and coudl be drafted to incorporate blockchain architecture. Given the chorus of "do something, don't expect itt o be done", I could voluntary my services pro bono for such a project (assuming we have some guard rails in place for my own liability).
Qualifications: Managing Partner at law firm heavily focused on this space.
Pros:
Codifies things clearly
Depending on method, limits liability to all participants
Provides real world avenue for enforcement of rifhts
Cons:
Involves meatspace
may result in more rigidity than wanted (although I think that can probably be controlled for


Gemfile.lock files causes failure

Hi,
I had a gemfile.lock in my root of my project, this caused the cocoapods install to fail, i assume its because you look for any .lock file in the step.
After i removed the gemfile.lock then it worked fine.

Without the log hard to say, but yes, the step searches for Gemfile(.lock) in the repo and if you have one it expects that you defined the CocoaPods version you want to use in that.
What was/is in your Gemfile?

Archive.zip

+------------------------------------------------------------------------------+
| (4<EMAIL_ADDRESS>                                                |
+------------------------------------------------------------------------------+
| id: cocoapods-install                                                        |
| version: 1.4.2                                                               |
| collection: https://github.com/bitrise-io/bitrise-steplib.git                |
| time: 2016-06-17T13:29:08+01:00                                              |
+------------------------------------------------------------------------------+
|                                                                              |
Configs:

source_root_path: /Users/reeda/Documents/xcode/nutmeg-ios
podfile_path:
[deprecated!] is_update_cocoapods: false
install_cocoapods_version: 1.0.1

-> $ cd /Users/reeda/Documents/xcode/nutmeg-ios
update cocoapods to: 1.0.1
-> $ gem uninstall --all --executables cocoapods
You have requested to uninstall the gem:
cocoapods-1.0.1
jazzy-0.6.3 depends on cocoapods (~> 1.0)
If you remove this gem, these dependencies will not be met.
Continue with Uninstall? [yN]  N
ERROR:  While executing gem ... (Gem::DependencyRemovalException)
Uninstallation aborted due to dependent gem(s)
[!] Failed!
(i) No cleanup function defined - exiting now
|                                                                              |
+----+--------------------------------------------------------------+----------+
| 🚫  |<EMAIL_ADDRESS>(exit code: 1)                       | 316 sec  |
+----+--------------------------------------------------------------+----------+
| Issue tracker: https://github.com/bitrise-io/steps-cocoapods-install/issues  |
| Source: https://github.com/bitrise-io/steps-cocoapods-install                |
+----+--------------------------------------------------------------+----------+

Is this the same issue?

yes, when i removed the .lock file, it worked fine.

Thanks for reporting!

We're working on the revision of this step, the new version will fix this issue too.

No worries, i might be reporting some issues in the next week. Also i might make some custom steps too.

Sounds awesome! Let us know if we can help with anything! 😉

Hi @Reedyuk ,
we released a new version of the step , can you please take a look on it? it is available in steplib, please let me know, how does it work.

Yes confirmed as working. Thanks.

Thanks for reporting! 😊


Validator: Setting weights doesn't work

set_weights
you can find this method defined in masa/base/validator.py
Problems encountered
Tried to sort some of them already but didn't reach any good state where it works
Error during the query and score process: 'numpy.ndarray' object has no attribute 'to'
  (
            processed_weight_uids,
            processed_weights,
        ) = bt.utils.weight_utils.process_weights_for_netuid(
            uids=self.metagraph.uids.to("cpu"),
            weights=raw_weights,
            netuid=self.config.netuid,
            subtensor=self.subtensor,
            metagraph=self.metagraph,
        )

On this snippet you can see self.metagraph.uids.to("cpu") this is failing because some kind of type missmatch
Tried to sort this out by doing torch.from_numpy(self.metagraph.uids).to("cpu") and torch.from_numpy(self.metagraph.uids)
But this led to Error during the query and score process: '<' not supported between instances of 'builtin_function_or_method' and 'int'.  Found no solution for this, I think the torch.from_numpy think is not the right way
Maybe the metagraph.uids is returning an unexpected value, not sure
Not waiting for finalization or inclusion. Assume successful
PR I found with this https://github.com/opentensor/bittensor/pull/1692/commits/559ec182bbda95f37de2ecd693aae6f430b6f437
Tried setting weights manually from python console resulting on aboves "error". Even tho it returns True when doing subnet.W it returns an empty array
subtensor.set_weights(wallet=wallet, netuid=1, uids=[2], weights=[0.2])

Useful information
Found this thread where they talk about this topic: https://discord.com/channels/799672011265015819/799672011814862902/1209127894195109939
in order to see the the weights, you need to instantiate the subnet on the following way
 subnet = bt.metagraph(1, 'ws://<IP_ADDRESS>:9945', lite=False)
 subnet.W
 array([[0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
       [0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]], dtype=float32)

This way it returns the matrix and you can debug properly
After setting weights manually once I started getting more errors
like: BrokenPipeError: [Errno 32] Broken pipe
or No attempt made. Perhaps it is too soon to set weights! - set_weights failed -
Update
Comented out the first part of the set_weights method and seems like its being set, I am not really sure about it but maybe that works for now
This way we are skipping calling process_weights_for_netuid that was failing no matter wah
    def set_weights(self):
        """
        Sets the validator weights to the metagraph hotkeys based on the scores it has received from the miners. The weights determine the trust and incentive level the validator assigns to miner nodes on the network.
        """

        # Check if self.scores contains any NaN values and log a warning if it does.
        if torch.isnan(self.scores).any():
            bt.logging.warning(
                f"Scores contain NaN values. This may be due to a lack of responses from miners, or a bug in your reward functions."
            )

        # Calculate the average reward for each uid across non-zero values.
        # Replace any NaN values with 0.
        raw_weights = torch.nn.functional.normalize(self.scores, p=1, dim=0)

        print(f"Raw weights: {raw_weights}")
        bt.logging.debug("raw_weights", raw_weights)
        # Process the raw weights to final_weights via subtensor limitations.
        # (
        #     processed_weight_uids,
        #     processed_weights,
        # ) = bt.utils.weight_utils.process_weights_for_netuid(
        #     uids=torch.from_numpy(self.metagraph.uids),
        #     weights=raw_weights,
        #     netuid=self.config.netuid,
        #     subtensor=self.subtensor,
        #     metagraph=self.metagraph,
        # )
        # bt.logging.debug("processed_weights", processed_weights)
        # bt.logging.debug("processed_weight_uids", processed_weight_uids)

        # Convert to uint16 weights and uids.
        (
            uint_uids,
            uint_weights,
        ) = bt.utils.weight_utils.convert_weights_and_uids_for_emit(
            uids=torch.from_numpy(self.metagraph.uids), weights=raw_weights
        )
        bt.logging.debug("uint_weights", uint_weights)
        bt.logging.debug("uint_uids", uint_uids)

        print("uint_weights", uint_weights)
        print("uint_uids", uint_uids)

        # Set the weights on chain via our subtensor connection.
        result, msg = self.subtensor.set_weights(
            wallet=self.wallet,
            netuid=self.config.netuid,
            uids=uint_uids,
            weights=uint_weights,
            wait_for_finalization=False,
            wait_for_inclusion=False,
            version_key=self.spec_version,
        )

        print(f"Result {result}")
        print(f"Msg {msg}")
        if result is True:
            bt.logging.info("set_weights on chain successfully!")
        else:
            bt.logging.error("set_weights failed", msg)

Found out some answers
BrokenPipeError: [Errno 32] Broken pipe means that the metagraph is out of sync ( Needs to reinstantiate the subtensor object or do metagraph.sync )
No attempt made. Perhaps it is too soon to set weights! - set_weights failed - Is just a rate limit, configured in the hyperparameters

Hyperparams setting weights update:
Attempted to set weights on devnet netuid 1 (a subnet I created / have the owner wallet for).  Getting the following error when running btcli sudo set --param weights_rate_limit --value 5 --netuid 1 --subtensor.chain_endpoint ws://<IP_ADDRESS>:9945:
raise InvalidScaleTypeValueException("Invalid byte for Compact")
Investigating further, will update here.

@grantdfoster can you share what's the status here? thank you!

@mudler this has been fixed with both #62 and #82... solved with setting weights_rate_limit to a lower value and upgrading our devnet to the latest subtensor.

Perfect! Thanks Grant!


Add gc logging to ENI destruction

Pull Request Test Coverage Report for Build 1973

0 of 2 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 24.541%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

vpc/globalgc/globalgc.go
0
2
0.0%

Totals

Change from base Build 1968:
0.0%

Covered Lines:
2433

Relevant Lines:
9914

💛  - Coveralls


add a travis config

I've added the same config from the tjfs-core repo. This work for now, since music has tests but sketch doesn't, but we can add a build matrix if more subdirectories have tests.
To actually run the tests, I think Travis needs to be added to this repo, possibly by going here, and adding Travis CI as an installed app.

🎉🎉🎉


Crash on iOS when app is launched through custom URL scheme

I have an issue where my app crashes when launched through a custom URL scheme. This happens only on iOS with a Share Extension, and only when the Share Extension attempts to launch my app when it's not already running.
I'm using https://github.com/KasemJaffer/receive_sharing_intent and the code from its instructions to launch the app from the Share Extension:
private func redirectToHostApp(type: RedirectType) {
        let url = URL(string: "ShareMedia://dataUrl=\(sharedKey)#\(type)")
        var responder = self as UIResponder?
        let selectorOpenURL = sel_registerName("openURL:")

        while (responder != nil) {
            if (responder?.responds(to: selectorOpenURL))! {
                let _ = responder?.perform(selectorOpenURL, with: url)
            }
            responder = responder!.next
        }
        extensionContext!.completeRequest(returningItems: [], completionHandler: nil)
}

As you can see from the callstack in the Logs section below, it appears the NativeAdsPlugin is the one crashing. I tried disabling this plugin and I just get this exact crash in a different plugin. This makes me think it's something at the Flutter engine level, unless multiple plugins have made the same error. But since these plugins work correctly in normal circumstances, it seems to have something to do with how the app is launched through openURL.
The crashing function SwiftNativeAdsPlugin.register can be seen here: https://github.com/sakebook/flutter_native_ads/blob/bcd375de50c2d92c70edb3a6567911ec7bb362ac/ios/Classes/SwiftNativeAdsPlugin.swift#L6
Steps to Reproduce

Setup a custom URL scheme and an iOS Share Extension
Launch the app from the Share Extension with openURL

Expected results:
App launches correctly.
Actual results:
Crash.

Logs
Can't get running logs since the app only crashes when launched by the Share Extension.
Callstack from crash log:
0   libswiftCore.dylib            	0x00000001962215e8 swift_getObjectType + 36
1   Runner                        	0x0000000101a73478 static SwiftNativeAdsPlugin.register(with:) + 11056248 (SwiftNativeAdsPlugin.swift:0)
2   Runner                        	0x0000000101a73478 static SwiftNativeAdsPlugin.register(with:) + 11056248 (SwiftNativeAdsPlugin.swift:0)
3   Runner                        	0x0000000101a73764 @objc static SwiftNativeAdsPlugin.register(with:) + 11056996 (<compiler-generated>:0)
4   Runner                        	0x0000000101a733e0 +[NativeAdsPlugin registerWithRegistrar:] + 11056096 (NativeAdsPlugin.m:6)
5   Runner                        	0x0000000100fee480 +[GeneratedPluginRegistrant registerWithRegistry:] + 25728 (GeneratedPluginRegistrant.m:136)
6   Runner                        	0x0000000100feec14 AppDelegate.application(_:didFinishLaunchingWithOptions:) + 27668 (AppDelegate.swift:12)
7   Runner                        	0x0000000100fef0cc @objc AppDelegate.application(_:didFinishLaunchingWithOptions:) + 28876 (<compiler-generated>:0)

Output from flutter doctor -v
[✓] Flutter (Channel stable, 1.22.0, on Mac OS X 10.15.6 19G2021, locale en-US)
    • Flutter version 1.22.0 at /users/flav/dev/flutter
    • Framework revision d408d302e2 (2 weeks ago), 2020-09-29 11:49:17 -0700
    • Engine revision 5babba6c4d
    • Dart version 2.10.0

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/flav/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/flav/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.10.0.rc.1

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] Connected device (1 available)
    • iPhone SE (2nd generation) (mobile) • E583F3F5-D331-4135-BE54-45523D070BE9
      • ios • com.apple.CoreSimulator.SimRuntime.iOS-14-0 (simulator)

• No issues found!

Hi @Flawe
Can you please a complete reproducible minimal code sample with just share and not include any party code or packages
Thank you

Hi @TahaTesser,
While trying to create a small repro project, I stumbled on some more info. With an empty project containing an iOS Share Extension, I didn't get the crash. Instead, I got a black screen with the text
In iOS 14+, debug mode Flutter apps can only be launched from Flutter tooling, IDEs with Flutter plugins or from Xcode.

I verified my app again in release mode and that worked. It seems I only get the crash in debug. I wasn’t able to reproduce the crash with an empty app though, so it’s likely related to having plugins.
I'm happy enough with this.


doc: "go tool vet" still mentioned in various parts of documentation

In Go 1.12, "go tool vet" is no longer supported:

External tools that use go tool vet must be changed to use go vet.

However, there are places in the documentation where go tool vet is still mentioned as a way of running vet. I'm currently finding two instances:

https://github.com/golang/go/blob/c75ee696c341cef94b00409b3692f3df82af1c71/doc/install-source.html#L384

https://github.com/golang/go/blob/c75ee696c341cef94b00409b3692f3df82af1c71/doc/cmd.html#L20-L24

/cc @ianlancetaylor

Well spotted.


CMake: Add CMake support

Added CMakeLists.txt file to blockdevice example so that it can build via CMake
Update mbed-os.lib to latest master to pick CMake changes

@0xc0170 @hugueskamba

Shouldn't .travis.yml be updated to include CMake tests?

@evedon This PR is approved from CMake team, could you review this PR


refactor/metadata: move layer metadata into Layer

REFERENCES #16

Build is broken due to clippy.
Fixed with Manishearth/rust-clippy#463; Waiting for new release.


Circular dependencies resulting from project structure

The LockstepApi class located in lockstep_api.py  triggers circular dependency issues as a result of imported classes making use of the LockstepApi type annotation.
Consider the following:
# lockstep_api.py

class LockstepApi():

    """
    Construct a new LockstepApi client object
    """
    def __init__(self, env: str):
        from src.clients.activities_client import ActivitiesClient
...

# .clients.activities_client

from src.lockstep_api import LockstepApi     # This import causes the circular dependency as we begin to bounce between files
from src.models.lockstep_response import LockstepResponse
from src.models.activitymodel import ActivityModel

class ActivitiesClient:

    def __init__(self, client: LockstepApi):
        self.client = client

Possible Solutions

Define a base class with the same interface as the LockstepApi class that can be imported without dependency loop

Have LockstepApi inherit the base class, allowing it to given as an argument to clients
Would require user instatiates LockstepApi object prior to passing it to client objects

Convert client classes to instead simply prepare a request that can be passed to the LockstepApi object

Still requires user to instantiate both a client and LockstepApi object

Other ideas...

I think we were able to solve this by using this new pattern:
from src.models.lockstep_response import LockstepResponse

class CustomFieldDefinitionsClient:
    from src.lockstep_api import LockstepApi
    from src.models.customfielddefinitionmodel import CustomFieldDefinitionModel

    def __init__(self, client: LockstepApi):
        self.client = client

Does this work?

Tried testing locally as an installed package and this will still lead to the circular dependency issue when we get to the LockstepApi import statement

We could also simply eliminate the type condition on the "client" object.  We know we control it and it will always be the correct type - maybe that's enough?

Is this now resolved?

Everything appears to importing correctly and able to make api calls.


Analytics / notifications improvements

Check if there are ways to see which notifications trigger opens already
If not, add relevant GA events
Ensure that routes exist to be able to navigate to all items in the navigation minimum (plus consider other areas/pages).

@akinwale can this be closed?

Yes. Closing now.


How to get list of al downloading andl downloaded items.

downloaded items
For more light weight, FileDownloader doesn't maintain the downloaded items, when task is completed download, FileDownloader will delete all its data from FileDownloader for keep FileDownloader Lighter.
If you need this information, you need to maintain it by yourself.
But FileDownloader provide the method to help you perfect it: FileDownloader#getStatus, so you can use this method to make sure whether the task id & file path you know is completed download.
downloading items
FileDownloader doesn't provide any method to get downloading items, because the list is very variable.
For this feature, if you have this requests, we really recommend you to wrap your own DownloadManager, or maintain data such TasksManagerDemoActivity in demo project.


eds: introducing EDS resources cache

Commit Message: introducing EDS resources cache
Additional Description:
Currently after an EDS-cluster update, Envoy waits for an EDS response. If a timeout occurs, the EDS-cluster will be used without endpoints.
This PR introduces a cache to store EDS resources (ClusterLoadAssignments), that allows invoking a callback when a resource is removed or expired.
This will be followed up by 2 PRs:

Plumbing the cache in the cluster-manager and GrpcMux implementations.
Modifying the EdsClusterImpl class to use the cache.

Risk Level: low - introducing a new component which isn't used anywhere.
Testing: Adding a unit test for the class.
Docs Changes: N/A.
Release Notes: N/A.
Platform Specific Features: N/A.
Part of #26749
The entire change can be looked here: https://github.com/adisuissa/envoy/commit/f0b7ac8ab85776947a8332efe1c3759e8714b9ed

/assign-from @envoyproxy/envoy-maintainers

cc @abeyad as an expert on the config-plane pipeline


Whether is it possible to test consecutive several urls through vegeta?

Question
Let's consider a scenario which is common in some real businesses as the following:
If a business operation to be pressed contains three consecutive URLs, the first one encrypts parameters by some encryption method, one of which is the real-time timestamp of the operation system. The return result of this URL is one of the input parameters of the second URL, and part of the data in the response result of the second URL is the input parameter of the third URL.
My question is whether we can do stress tests for such a scenario and how to do the tests then?

Vegeta  doesn't have this capability today and there are no plans to implement it in the near future. For such user session aware load tests, I'd recommend you look into https://k6.io/ or https://gatling.io/.


rank pictures or like/dislike

Feature:
everytime i see picture i can set picture rank/score eg 1-5stars, or 'like/dislike' (eg everytime i see it i click 'like'), it is stored in metadata/EXIF and then i can filter by this or use in shuffle priority
eg:
sort by 'likes' count
or show only with 3+ stars etc

The app does not support any manipulation. See Readme

yep, too bad;]
but it is impossible by your design? or just need some code. I know a little angular/node.js and can I fork and try to add it by myself? I'm asking because I dont want waste much time if it is a lot of redesign
btw: maybe you know similar app with such feature?

The app already supports staring (1-5) that reads from exif.
I dont want to add manipulation to the main app now, but it should not be super hard to for the project and add this functionality.
I'm working on extensions and I hope a similar finctionalty will be able to develop with extensions.

I would love the ability to set the Rating 1-5 from the UI.  Understand this could be plug etc.
Just wanted to mention that on Windows 10, connecting to the Share on the server that is hosting the photos, find a photo in Windows, right-click, Properties, Details tab, set a star rating, Click Apply.  That DOES work.  The stars are saved in the format that PiGallery2 is looking for and the ratings appear in PiGallery when you click "i" icon for that photo
A suggestion: Give the option in the UI settings to put the Star Rating on the screen with the default photo view, without having to click on the "i" menu.  Maybe that gets coupled with the UI extension for "star editing"
Just to note, to get newly added Ratings stars to show up in PiGallery2, I needed to change to another Album, then back to the one with the Photo I edited, then the Star rating showed -- likely just caching in the app.

A suggestion: Give the option in the UI settings to put the Star Rating on the screen with the default photo view, without having to click on the "i" menu. Maybe that gets coupled with the UI extension for "star editing"

I think that is already possible (maybe only on the edge build, not sure). There should be a setting for that. If not, it should be easy to add.

Just to note, to get newly added Ratings stars to show up in PiGallery2, I needed to change to another Album, then back to the one with the Photo I edited, then the Star rating showed -- likely just caching in the app.

The reindexing is triggered on folder navigation. F5 also works.


Finding component stubbed using default stub

Currently if I want to find a component that is stubbed using the default stub I have to do this:
wrapper.find(wrapper.vm.$options.components.myComponentName)

Any chance this could be simplified? Some suggestions below:
Simply allow find using string to also find components:
wrapper.find('my-component-name') // or with camelCase?
wrapper.findAll(...)

This could possibly collide with tag names?
Shortcut:
wrapper.find(wrapper.components.myComponentName)
wrapper.findAll(...)

By name:
wrapper.findComponent('myComponentName')
wrapper.findAllComponents(...)

Automatic generation:
wrapper.findMyComponentName()
wrapper.findAllMyComponentName()

You can also search using the component:
import myComponentName from './myComponentName'

wrapper.find(myComponentName)

Looking at the code it seems that the only thing that is actually needed when searching for a component is the name of the component. Is this correct? In addition to that it checks if it is a vue component. But that check only check that it is an object and that is has a render function, even though that does not seem to be used in the search process itself.
I assume (can't check right now) the following would find the right component for me:
wrapper.find({
  name: 'myComponentName',
  render: function() {}
})

If so, I think a string based find method for components seems simpler than having to somehow get hold of the component instance and passing to find. (by import or options)
Unless it is done this way on purpose for possible future features, that requires more information from the component.

I think a string find for components would have a lot of bugs.
I agree, it would be a nice API, but I'm not sure it's worth the overhead of maintaining.
And yes, your example would work.

The pattern I have been using heavily is:

That gives you a wrapper with no vm property.
Then you can't call hasProp and similar methods. That is what I want to do. Related to https://github.com/vuejs/vue-test-utils/issues/163

I don't think we should add two extra methods for finding components, that would mean we have 4 methods for traversing the render tree.
I think the solution is to improve the selector system.
Currently we support a name selector (although this is normally recommended as using the original component object) and a ref selector:
const nameSelector  = {
name: 'some-name'
}
const refSelector = {
ref: 'some-ref'
}
I'm going to remove the check for a render function from the name selector, that way you can achieve the functionality you would like without having to pass a noop render function.
With that commit, I'll close this issue, as we won't be adding extra findComponent methods. If you feel strongly for adding these methods, I can reopen the issue, but I'm against adding these methods.
If you have ideas for another selector, please make a new issue.

You can now pass in a name selector without a render function(https://github.com/vuejs/vue-test-utils/commit/df706fe26b646fe3d53368135f6aeba19eda7b5c). This will be released in beta.9:


Engine RPC API metrics graph

Describe the feature
We now have metrics for the various engine API endpoints:
https://github.com/paradigmxyz/reth/pull/4912
Dashboards for these metrics should be added to the grafana dashboard
Additional context
No response

I will take up this issue

I will take up this issue

sweet, assigned!

We'd want something like this for example, since p90/p95/p99/p999 metrics are important:

okay understood

so basically these metrics: ENGINE METRICS
are needed to be added in overview.json, right??

so basically these metrics: ENGINE METRICS are needed to be added in overview.json, right??

yep exactly

so basically these metrics: ENGINE METRICS are needed to be added in overview.json, right??

@1010adigupta hi, have you had time for this? do you need any help?


Add support to load any huggingface ASR model

Two changes you may disagree with but I don't know how to solve:

Changing the  choices to simply str to allow passing arbitrary model url strings.
Adding requirements - Accelerate is optional and only needed with the "use_low_cpu_memory" option. If someone only needs regular faster whisper and not huggingface models, we don't need to install torch for example.

This also throws an error while running on the PI

Distil-whisper has gotten converted to ctranslate2 compatible Should be able to just add its model to the release, and we will be able to load it via existing code.
My PR added ability to fallback to huggingface model if its not one of the existing whisper models.
I believe it would be better if we could have generalized "wyoming-asr" and the asr can be done by one of various asr backends like huggingface, faster_whisper, etc. I'm thinking a GUI like text-generation-webui, and an easy way to apply lora.
This may not be the right place to discuss this idea, so I'll take this else where.
At the moment I'll add support for distil-whisper just like the existing whispers.

If I understand this, when I implement your PR, I can use distil-whisper or faster-whisper large-v2, etc.? Basically any HF ASR model supplied as a text string OR i can still use the rhasspy models?
I am running this on AMD64 in docker using CUDA accel and would like to use larger models than the rhasspy models repo contains (I think the largest models in the repo is medium(-int8) [908MB GPU mem]).
Im new at LLM/ASR/etc. so forgive the n00b questions, I literally started researching and implementing within the last 24 hours.

@baudneo Yes that's right.


maven release v3.3.2

To be merged after the release is complete.

Closing to re-attempt after https://github.com/GoogleContainerTools/jib/issues/4014.


tls: Do not place functional code in assert

When compiling Seastar with Redpanda's bazel build system, asserts are compiled out.  This led to a segmentation fault when using TLS in unit tests.

shall we enable clang-tidy on seastar? https://clang.llvm.org/extra/clang-tidy/checks/bugprone/assert-side-effect.html


Problem

Problem owner should be auto filled, not filled by user (BTW, an user doesn't have subjudge auth can not be problem owner)
Preview tag and actual tag doesn't match
Judge type should be listed.
Add problem name before add problem
Show pid and problem name in edit problem page
Remove search bar
Add a cancel or back button in edit problem page

@geniusgordon please fix the issue

pull request sent

fix in #112

resolved in #112


combining outputs for Phase Spiking Rate Comparison (Whole Experiment)

Add option to show combined "excited+inhibited+mixed" percentages plus error bars.

Include checkbox to allow combining of data (i.e., Show "Activity" vs "No Activity")

This function has been updated so that the any reactive cells (Inhibited, Excited or Mixed) are combined into a single grouping (i.e., reactive/un-reactive cells). This functionality can be accessed by using the plotting parameter "Combine Active Cells".


cache.prefetch() throws

If you call cache.prefetch() and an error has already been cached for that request, it will throw (because then cache.readAsync() will throw instead of returning a rejected Promise and cache.prefetch() doesn't handle that).

Good point.

Fixed in<EMAIL_ADDRESS>


When providing an list of labels, tensorflow.keras.preprocessing.image_dataset_from_directory cannot find images in root of specified directory

Please go to TF Forum for help and support:
https://discuss.tensorflow.org/tag/keras
If you open a GitHub issue, here is our policy:
It must be a bug, a feature request, or a significant problem with the documentation (for small docs fixes please send a PR instead).
The form below must be filled out.
Here's why we have that policy:.
Keras developers respond to issues. We want to focus on work that benefits the whole community, e.g., fixing bugs and adding features. Support only helps individuals. GitHub also notifies thousands of people when issues are filed. We want them to see you communicating an interesting problem, rather than being redirected to Stack Overflow.
System information.

Have I written custom code (as opposed to using a stock example script provided in Keras): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Arch Linux
TensorFlow installed from (source or binary): binary (pip install tensorflow-cpu)
TensorFlow version (use command below): v2.8.0-rc1-32-g3f878cff5b6 2.8.0
Python version: 3.10.2
Bazel version (if compiling from source):
GPU model and memory: (no GPU)
Exact command to reproduce:

You can collect some of this information using our environment capture script:
https://github.com/tensorflow/tensorflow/tree/master/tools/tf_env_collect.sh
You can obtain the TensorFlow version with:
python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"
Describe the problem.
Describe the problem clearly here. Be sure to convey here why it's a bug in Keras or why the requested feature is needed.
Describe the current behavior.
When calling tensorflow.keras.preprocessing.image_dataset_from_directory providing the labels as an array,
the function does not find the files in the specified directory, and only expects files in subdirectories of that directory.
Describe the expected behavior.
It should be able to find files in the main directory. (Because the labels are passed in as an array,
the subdirectory structure is unnecessary.)
Contributing.

Do you want to contribute a PR? (yes/no): no
If yes, please read this page for instructions
Briefly describe your candidate solution(if contributing):

Standalone code to reproduce the issue.
Provide a reproducible test case that is the bare minimum necessary to generate
the problem. If possible, please share a link to Colab/Jupyter/any notebook.

To reproduce, create a directory and put only one image, and nothing else.

../Documents/bob (NOTE: This directory name is just an example)
|- an_image.jpg

Then run the code (can be done in a Jupyter notebook):

import tensorflow as tf

directory = "../Documents/bob'

dataloader = tf.keras.utils.image_dataset_from_directory(
    directory,
    label_mode='int',
    labels=[0],
)

An error is thrown. The function fails to discover the image, and thinks there are zero images which does not match the number of labels.
If the image is moved into a subdirectory, for example:
../Documents/bob
|- subdirectory
   |- an_image.jpg

then no error is thrown, and it prints Found 1 files belonging to 1 classes. (Putting the images in this subdirectory is useless, because we have already specified the labels by passing in list of labels into the method.)
Source code / logs.
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached. Try to provide a reproducible test case that is the bare minimum necessary to generate the problem.
The full error is:
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Input In [4], in <module>
      1 import tensorflow as tf
      3 directory = '../Documents/bob'
----> 5 dataloader = tf.keras.utils.image_dataset_from_directory(
      6     directory,
      7     label_mode='int',
      8     labels=[0],
      9 )

File ~/.local/lib/python3.10/site-packages/keras/preprocessing/image_dataset.py:192, in image_dataset_from_directory(directory, labels, label_mode, class_names, color_mode, batch_size, image_size, shuffle, seed, validation_split, subset, interpolation, follow_links, crop_to_aspect_ratio, **kwargs)
    190 if seed is None:
    191   seed = np.random.randint(1e6)
--> 192 image_paths, labels, class_names = dataset_utils.index_directory(
    193     directory,
    194     labels,
    195     formats=ALLOWLIST_FORMATS,
    196     class_names=class_names,
    197     shuffle=shuffle,
    198     seed=seed,
    199     follow_links=follow_links)
    201 if label_mode == 'binary' and len(class_names) != 2:
    202   raise ValueError(
    203       f'When passing `label_mode="binary"`, there must be exactly 2 '
    204       f'class_names. Received: class_names={class_names}')

File ~/.local/lib/python3.10/site-packages/keras/preprocessing/dataset_utils.py:97, in index_directory(directory, labels, formats, class_names, shuffle, seed, follow_links)
     95 if labels not in ('inferred', None):
     96   if len(labels) != len(filenames):
---> 97     raise ValueError('Expected the lengths of `labels` to match the number '
     98                      'of files in the target directory. len(labels) is %s '
     99                      'while we found %s files in %s.' % (
    100                          len(labels), len(filenames), directory))
    101 else:
    102   i = 0

ValueError: Expected the lengths of `labels` to match the number of files in the target directory. len(labels) is 1 while we found 0 files in ../Documents/bob.

@TheImaginaryOne,
While providing the absolute path the labels should be None and
While providing the relative path the labels should be inferred or list/tuple of integer labels of the same size as the number of image files found in the directory.

Absolute/relative paths do not seem to be relevant, because the issue is still the same if I specify the directory using a relative path.

@TheImaginaryOne
The called
--> 192 image_paths, labels, class_names = dataset_utils.index_directory(
looks only in subdirectories of the given directory! I would suggest to clarify the documentation in case of provided labels without any code changes, something along the line 'and the images have to reside in subdirectories of the given directory' !?

@TheImaginaryOne This is an expected behavior.  Take a look at the code and this. The index directory makes a list of all files in the subdirs of directory, with their labels.
Since there are no subdirs and you are passing in the image directly, its throwing an error saying there are no images.

@TheImaginaryOne,
While providing the absolute path the labels should be None and While providing the relative path the labels should be inferred or list/tuple of integer labels of the same size as the number of image files found in the directory.

So when I give it a list/tuple of integer labels, it still show me ValueError: Expected the lengths of labels to match the number of files in the target directory. len(labels) is 10000 while we found 0 files in directory Runes..


vkGetInstanceProcAddr incorrectly returns NULL for vkCreateXcbSurfaceKHR

I'm getting this with the linux surface creation on version 3.2.1.  CentOS 6 with NVidia 367.57, GCC 4.9 and API 1.0.30.  If I insert
        if (!vkCreateXcbSurfaceKHR)
        {
            vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)
                _glfw_dlsym(_glfw.vk.handle, "vkCreateXcbSurfaceKHR");
        }

right after the vkGetInstanceProcAddr call in _glfwPlatformCreateWindowSurface in x11_window.c then it works fine as it will fall back to the dll loader when it can't find the extension using vkGetInstanceProcAddr.  This is a known problem with dynamically loading the Vulkan library and there's a lot of chatter about it on the Vulkan-Docs repository at KhronosGroup/Vulkan-Docs#212
Unfortunately I can't issue pull requests from where I am or I would submit the patch.

Thank you for moving it!

Are you absolutely certain that the instance you pass into glfwCreateWindowSurface has the required extensions enabled? I was able to run this code just fine on X11 with 367.57 yesterday.
Having read the linked discussion once, I could see nothing about the loader being affected by being loaded dynamically. I'll give it another look though.

The proposed fix can be made very short as glfwGetInstanceProcAddress already is a call to vkGetInstanceProcAddr with a fallback to dlsym.

I'm certain since I'm using a patched version of x11_window.c that uses the fallback and that works fine.  Actually your solution is even better since swapping out the vkGetInstanceProcAddr for glfwCreateWindowSurface is a trivial fix.

Does the Vulkan test (tests/vulkan.c) run on your machine without this workaround?

That test won't build on CentOS 6 because of aligned_alloc being undefined.

That has been fixed in master.

If I fix that manually the test does run.

Thanks! Then the issue is likely somewhere in your Vulkan setup code.

That makes sense.  Thank you!

Thank you for all the speedy replies! Hope you find the bug!


UnixPB:IPv6

Added IPv6 Role
Enables IPv6 via sysctl.conf on RHEL systems.
Allows for IPv6 testing.
<EMAIL_ADDRESS>

I'm not expecting any problems with this, but I'll run it through our test job and once that plus the above issue has been addressed I'll merge it

Looks like travis wants the tasks named. Ill add that as well

@sxa The Jenkins run didn't run the new playbook role because it skips the adoptopenjdk tag - I ran it on a CentOS6 vagrant VM though and it went through okay 👍


update RHCOS AgentServiceConfig Images and CRs for Jan 2023

This PR:
(1) refreshes RHCOS base images used for the 4.9 & 4.10 releases to a more recent version hosted on the OpenShift mirror site (mirror.openshift.com). These represent four months of RHEL fixes and should be used as a base vs their older counterparts during the provisioning process.
(2) refreshes OpenShift ClusterImageSet to align with respective RHCOS images. Customers and partners should also try to stay current with enhancements and security fixes present in these newer versions.
(3) adds support for OpenShift version 4.12.

Don't we need to add 4.11 and 4.12 ClusterImageSet?

RHACM actively creates new CIS objects in active/subscribed clusters as micro releases of OpenShift come out.  These objects are needed to be created manually in cases where someone may be using just MCE, or in cases where disconnected installs are being done.
Given this, I think it's best left as an exercise to the implementer.


use value.name as input value for enums

This is a pull request related to https://github.com/tiangolo/typer/issues/151
I did not change the value provided to the function (still an instance of the Enum class, not value.value as stated in the issue).
If you are ok with these changes I will try to update the documentation as well.

I think, this can be closed, I have a working version with green tests: https://github.com/tiangolo/typer/pull/224

I think, this can be closed, I have a working version with green tests: https://github.com/tiangolo/typer/pull/224

Thanks for the help here @sirex ! 👏  🙇
Thanks for reporting back and closing the issue @sapristi  👍

Sorry for the long delay! 🙈  I wanted to personally address each issue/PR and they piled up through time, but now I'm checking each one in order.


⚠ ClamAV has degraded performance

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

HTTP code: 200
Response time: 636 ms

Resolved: ClamAV performance has improved in 3f13554.


Improve the tempo detection algorithm

The Speed Dial widget features a "Tap" button that allows users to tap along with a beat, when choosing a duration.
Currently, this tap button only computes the time since the last tap. The computed value can be off by +-20ms. When tapping to music, this is enough to put the beat completely out-of-phase with the music in 10 seconds.
This patch records the most recent 20 taps, and computes the tempo that best passes through all of them. Within 10 taps it can compute a tempo that's correct +- 2ms. It's even robust against occasional missed taps.
The first tap uses the old (current) behavior, as does waiting more than 1.5 seconds in between a tap.

Hi, before I review this, please indent your changes like the rest of the code. Thanks.

@mcallegari Maybe you can help me out a bit, I'm not sure what you're referring to. The guidelines don't seem to be specific, but you seem to use 4-space indents, correct?

I pushed an update that changed some of the variable names and whitespace around the if tokens, hopefully that helps.
Would you be interested in a PR that adds a linter for these things?

4-space tabs is correct.
No need for a linter right now.
Thanks

Great, thanks :+1:


Product Block Type & Containers

Hey guys, thanks for a nice plugin.
We will use it for an upcoming product but we need to extend the bundle a bit. And I want to see if it is of interest of your's and on the roadmap before considering doing a PR.

Product Block Type  - We already extended our fork with a new block type adding linked products (just as a Page) since we need to control products within a block.

Containers - Next step will be to add containers to configure a layout that consist 1 or more blocks since this is not supported in a page. That would allow users to have more freedom to create more complex containers to be rendered in a twig.

Let me know your thoughts about it, and if it is any value for your project we would gladly contribute.

I would suggest adding the products to block entity to make it more flexible. This will allow creating each block type with associated products.

You mean allowing to write a filter within the content? Let's assume the user wants to add {{ bitbag_render_block([code]) within the block and display it on the store front? I think this is a great idea and I had it in my mind.

As long as you will keep the coding standards we follow (basically the Sylius ones) and support strict PHP types I can accept your PR 🙂 .

True, would just be a bit more clear to have it as an own type but yes it would be more flexible.
Yes something like that where the user can select a layout e.g. 2 columns and add rows, add a block into each column. Then it would have a routing just as Pages (maybe add support for different types for the Page entity?).

Sounds great, we will do some more work and handle the BDD, strict and code standards and then do a PR when we're done. :)

Great! It's nice to see that more and more people are enjoying our work 🎉


HDDS-8934. SCMHAInvocationHandler throws undeclared exceptions, causes SCM to exit

What changes were proposed in this pull request?
Avoid throwing "any" exception from SCMHAInvocationHandler proxy.  Wrap all exceptions in SCMException.
https://issues.apache.org/jira/browse/HDDS-8934
How was this patch tested?
CI:
https://github.com/adoroszlai/hadoop-ozone/actions/runs/5392291806

Thanks @szetszwo for the reviews.  I have two questions:

Should invokeRatis throw unchecked exceptions directly?
Should invokeLocal translate other checked exceptions?

Should invokeRatis throw unchecked exceptions directly?
Should invokeLocal translate other checked exceptions?

These two methods should be treated as the same.  By the design of SCMException, we should translate all the checked and unchecked exceptions to SCMException.

These two methods should be treated as the same. By the design of SCMException, we should translate all the checked and unchecked exceptions to SCMException.

OK, then let me update the patch accordingly.

Thanks @szetszwo for reviewing and merging this.


[BugFix] unify array_filter(array, null) to return empty array when the null value from const value or column

Signed-off-by: fzhedu<EMAIL_ADDRESS>What type of PR is this：

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #https://github.com/StarRocks/starrocks/issues/13915
Problem Summary(Required) ：

currently, array_filter(array, null) will return null, if null is a const value, but return [] if null from a column. this behavior is not consistent.
unify array_filter(array, null) to return empty array when the null value from const value or column.
Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] I have checked the version labels which the pr will be auto backported to target branch

run starrocks_clang-tidy

run starrocks_admit_test

run starrocks_admit_test

run starrocks_admit_test

run starrocks_clang-tidy

@mergify backport branch-2.5


Class 'Zipper' not found

I have configure the package using the readme file with Ubuntu 16.04 with php 7.0.22. What is my problem ?. I think facade not working with laravel 5.4

The README doesnt say anything about facades, however since it has a Service Provider and a Facade it is supported, please check if you have configured it correctly, it should look like this:
'providers' = [
    ...
    Chumper\Zipper\ZipperServiceProvider::class,
    ...
],
...
'aliases' => [
    'Zipper'  => Chumper\Zipper\Facades\Zipper::class,
],
...

@shankhadevpadam can this issue be closed?


Anopheles refactor part 3 - AnophelesGenomeFeaturesData

Here we continue towards #366 by pulling out functions for accessing and plotting genome features into a new AnophelesGenomeFeaturesData class.
Also resolves #334 along the way.

Thanks @sanjaynagi.
I've pushed a couple more commits to deal with #334 where some GFFs have exon records with multiple parent transcripts. Also some general tidying up.
Think I'm done here, plannig to merge if CI is happy.

Plotting funestus transcripts looks better...


mopidy: 3.1.1 -> 3.2.0

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

closing in favour of https://github.com/NixOS/nixpkgs/pull/134154, I've been meaning to do this for a while, and didn't check again that there was no other PR for it.


[dv,usbdev] Data toggle clear sequence

Add a test sequence for exercising the data toggle clear functionality which was subsumed into the data toggle save/restore behavior of the new registers.
Data Toggle clearing is still the most common use case for these registers, since clearing the data toggle bit is essential for handling Bus Resets and some Control Transfers to endpoint zero, and is important in some protocols.
The more general save/restore functionality is for implementing resume from Deep Sleep.

CI failures unrelated.


Update migration

This migration was introduced to fix an error when trying to load the
schema - but as it was done on foreign keys it didn't run correctly.

I also wonder if we should revert #591 and get this commit into a new PR with all the upgrade changes because it means Signon is currently in an undeployable state.

Yep makes sense to me :+1: probably better to make sure the changes are all in one merge too


Portia generate incorrect scrapy spider for domains beginning with numbers, like http://www.21jingji.com/

For that domain, it generate a scrapy spider below:
class 1Jingji(BasePortiaSpider):
    name = "www.21jingji.com"
    allowed_domains = [u'www.21jingji.com']
    start_urls = [u'http://www.21jingji.com/']
    rules = [
        Rule(
            LinkExtractor(
                allow=('.*'),
                deny=()
            ),
            callback='parse_item',
            follow=True
        )
    ]
    items = [[Item(PortiaItem, None, u'.nav > li:nth-child(3)',
                   [Field(u'field1', 'a::attr(href)', [])])]]

The class name starts with number, which causes syntax error. Also, the items seem not correctly generated as well.

Hey, @Carolusian @cathalgarvey This bug seems interesting to me and I would like to work on fixing this bug.Please guide me how and where to look for the file inside the package.Thank You in advance

Hi @ayushmankoul that code is generated using portia2code
There is a utility function that converts a string into a valid python identifier but it must not be working correctly. This utility function can be found here and is called from here

Hi, @ruairif Thank You for responding to my queries.I will try to fix this bug asap.I also want to contribute to GSOC as part of Portia Community.I found the project Increase Crawling Performance through page clustering interesting and have studied about various clustering methods and working to build proposal regarding it.I would be glad if you would share some more information regarding the same and how can I build a good proposal for it.Thank You


[Popup] - Variations bug

As you can see, when the position of the pop-up window is insufficient, it will leave the position where it should appear, or even disappear.

And this.

Finally, thank you for your work.

Hi @cstd-tudoudou, I think it might be a duplicate of #5549. Somebody will reopen this issue if we find that it’s not.

This will be fixed with #5549


Dumping sigusr1 data periodically

Added a script which captures sigusr1 data periodically in a file. This will be useful in case of crashes.
Signed-off-by: adarsh-zededa<EMAIL_ADDRESS>

Closing this PR. Can revisit this when this is really required.


zitadel.ch

[ ] Bootstrap Cluster (with orbos)

[ ] Zitadel deployment

[ ] Logs in Grafana

@thesephirot is this still open?


Embedded selenium server

What are you trying to achieve?
When I first got started; I was getting the error: Couldn't connect to selenium server
Then, I typed:
phantomjs --webdriver=4444
And my test scripts are running.
In sake of simplicity; shouldn't be nice to have a selenium server running on the fly on every codeceptjs execution? Why I should manually open a separate selenium server?
It would be easier for developers to run one command and see a headless execution outcome quickly..
Would be great to see a solution around this sometime soon :)
Thanks!

There are so much different servers and depending on your needs you can choose:

selenium webdriver + different browsers
headless selenium in docker
phantomjs
nightmare

the last one, btw starts the way you ask to: without external command, you need to use Nightmare helper for that.
I have some ideas on implementing different runners for different servers but didn't have time yet to implement them

If curious here are my thoughts on better implementation of this feature https://github.com/Codeception/CodeceptJS/pull/191#issuecomment-238716090

Fantastic!


[Feature Request] Alternate URLs based on origin

Something I would like to do, if possible, is to be able to set different URLs for different origins. For example, if I'm logged into my dashboard and accessing from my LAN, clicking an application link takes me to the local application URL. If I'm accessing it remotely via reverse proxy, I would be presented with the subdomains I've created for different apps. Is this something that could theoretically be supported in a future release?

+1 for this. Came to put up this feature request too.


Fixing image src paths for markdown files in topics

Hi! Thanks for taking the time to address it.
Unfortunately, it's not obvious, but it's not a bug, it's actually a feature :)
I've added some more details to our CONTRIBUTING.md document.
Quoting it:

Our documentation is written in Markdown format with some domain specific language (DSL) constructs that are used at
JetBrains.
Unfortunately, this means that the document might not be rendered correctly or as expected when viewing it on GitHub or
locally, as some tags and constructs work differently or are very specific.
For example, you might see this and think it to be a bug, because, normally, the <img> tag expects the src attribute
to have a relative link to the image file:
<img src="debug-person-builder.png"/>

However, in our case, it's not a bug, but a feature - it's enough to specify the file name only, and our documentation
engine will link it correctly with the actual image file correctly.
You can find this and other formatting rules in the Kotlin documentation guidelines document.

So I'm closing the issue as nothing needs to be done about this, but thank you for caring!


generate addon for elastic cloud

Signed-off-by: Nicola115<EMAIL_ADDRESS>Description of your changes
generate addon for elastic cloud
How has this code been tested?
vela addon enable ./addons/terraform-ec EC_API_KEY=xx

Checklist
I have:

[ ] Title of the PR starts with type (e.g. [Addon] or [Trait]).
[ ] Updated/Added any relevant [documentation] and [examples].
[x] Unit/E2E Tests added.

We have a new way to generate a Terraform addon, please refer to https://kubevela.net/docs/platform-engineers/addon/terraform
Please add at least one cloud resource for the addon
Please snapshot a cli  or web console or web to show one or more cloud resources are successfully provisioned.

We have a new way to generate a Terraform addon, please refer to https://kubevela.net/docs/platform-engineers/addon/terraform
Please add at least one cloud resource for the addon
Please snapshot a cli  or web console or web to show one or more cloud resources are successfully provisioned.

add resource to further verify the addon.


PGO as part of cargo install?

Is it possible to ship the PGO/BOLT profile files with a crate such that a cargo install will use them? That would be quite powerful for rust ecosystem tools where people tend to prefer installing from source.

That's an interesting idea. I don't think that it's possible with Cargo today, but even if it was, there are at least two large problems that I see with it:

PGO profiles are not portable between targets (Linux/Windows/macOS/...L), nor between different rustc versions. This means that you would have to upload pre-generated profiles for many target/compiler combinations, or devise some new, platform/rustc/LLVM independent format. This is a big technical challenge.
PGO profiles are specifically tuned to selected workloads. It could be challenging to generate profiles that are general enough that they would improve performance for most users. If the profiles do not fit your workload, your PGO optimized program can actually be slower!

Hmmm, that sounds practically intractable.Maybe a better idea is to make the flow for installing cargo binaries more amenable to pgo?
Currently you'd have to git clone, checkout the latest tag (assuming there even is one), do pgo, and finally cargo pgo install --path (is that a thing?). And you're also left out from any updates, having to manually repeat this whole process each time. It makes more sense to keep around the profiles across updates since probably not all code has changed, and therefore the quality of the profiles will decay rather become useless immediately (I think).
The ideal flow is probably something like: you cargo install as usual, but you can optionally run a separate command at any time to gather profiles for the binary and re-install.  Running the optional pgo-this-binary command would wipe the profiles if they came from an old version but append if it's the same crate version letting you build better profiles over time.
That would definitely require an RFC though, so maybe too much of a pain.

This would basically mean that cargo-pgo would need to be integrated as part of cargo, and on top of that a lot of other functionality would have to be added to cargo install. Based on the current maintainer shortage and feature freeze/slowdown of cargo, I don't think that this is going to happen anytime soon.
And I'm not really sure that it's worth all this effort. If you want the fastest possible binary for a specific use-case, you'll want to do more things than just PGO/BOLT (LTO=thin, CGU=1, -C target-cpu=native etc.). cargo install is a tool to provide a reasonably optimized binary with wide platform/CPU support, using PGO and other, more targeted optimizations, is usually done in some custom way and is hard to generalize.

Yeah, it's be quite an effort for sure. Agreed that it's probably not worth it for now.


incorrect typha resources

Seems that typha resources is lacking an "m" for refer to milicores.
In a normal cluster (without >250 cores per node) you get an error when
trying to create typha pods:
message: 'pods "calico-typha-857fd4bc7d-62jq6" is forbidden: maximum cpu usage
      per Container is 1, but limit is 250'

Codecov Report

Merging #1830 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master    #1830   +/-   ##
=======================================
  Coverage   24.59%   24.59%
=======================================
  Files          98       98
  Lines        5071     5071
=======================================
  Hits         1247     1247
  Misses       3684     3684
  Partials      140      140

Impacted Files
Coverage Δ

pkg/api/cluster.go
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

/lgtm - thanks very much for this contribution!


column_editable_list do not obey can_edit settings

When can_edit = False, columns in column_editable_list are still editable

@vvch Thank you for providing the example code. I've address the bug and opened a PR (#2161)
@mrjoes Issue approved, PR opened. Once PR is merged, issue can also be closed.

so what do you do when you want to be able to edit a couple of fields via column_editable_list but dont want the entire record to be able to be updated?
For example I only want the admin to be able to edit a users roles but I dont want them to have access to the entire record editing form

so what do you do when you want to be able to edit a couple of fields via column_editable_list but dont want the entire record to be able to be updated?
For example I only want the admin to be able to edit a users roles but I dont want them to have access to the entire record editing form

Guys, how can we do that? I need to edit a couple of fields, but I don't want to give a possibility to change all fields.


Fix the option --env does not allow values containing comma

Fixes #35

How are you supposed to set multiple environment values from the terminal after this change?

It is possible to set multiple env vars using one flag per var, like the docker cli command:
fyne-cross linux --env KEY1=value1 --env KEY2=value2


Add more mpris support

Report all the information from SongDescription to MPRIS, this meant adding album name and art url.
I would've added more but it seems unecessary to add extra information to SongDescription
just for mpris reporting

Oooh, nice!! I always assumed it would be more complicated to handle album art, that a remote URL wouldn't work
...actually doesn't show up for me in GNOME 40, is it working for you? Am I missing something?

What you using to look at the metadata? It shows up for me in playerctl and URL leads to image. Maybe gnome doesn't like the metadata name I used from freedesktops spec https://www.freedesktop.org/wiki/Specifications/mpris-spec/metadata/
To make a local image doesn't seem that hard, Could just request a temporary file name in /tmp and always write the image there when it updates (would be more complicated if we have to change name). That probably wouldn't on flatpak though.
The easiest way would be sending a base64 encoded dataURL instead imo, but idk if that's suported.

TODO:

[ ] OpenURI doesn't update UI

[ ] Now playing doesn't change
[ ] Status bar reports, no song playing
[ ] Seek bar dissapears

[ ] OpenURI should maybe support playing playlists and albums
[ ] OpenURI should maybe also support spotify URIs (because why not)
[ ] Possibly implement shuffle

[ ] Current player state only supports toggling

[ ] Need to be able to explicitly set shuffle on/off
[ ] Need to be able to query shuffle state

I see the metadata just fine, but I don't know how well mpris clients support remote urls (not great apparently).
That's why I've been putting this off for a while, it poses a few challenges: the album art must be downloaded ahead of time, and we must figure out a path outside the flatpak sandbox where to put the image. I had not though of /tmp actually -- maybe that would solve this second issue!

Nice job on OpenURI! Looks interesting! I am not familiar with how clients use it however; how do they obtain the Uris in the first place?
As for your issues with the UI not updating: the Load action only sets some track as playing, but the track has to be in queue first

Ye, noticed that. Struggling to find where I can stash a dispatcher to fetch the track data easily though.

They can obtain the URI from the metadata, I'm planning on making it support the spotify URIs as well then people can just copy paste a spotify URI and play it in spot.

There is also the TrackList reporting thing but that looks a pain to implement

Oh right, it's a plain sender right now, it should be fine to replace that with a dispatcher instead!

@xou816 sorry haven't had much time to work on this recently. I'm pretty new to rust and even newer to multithreaded rust :). I'm having problems using an ActionDispatcher instead of an UnboundedSender. I tried swapping them out but I can't get it to compile when it gets passed through threads.
I've added dispatcher: Box<ActionDispatcherImpl> (using Box<dyn ActionDispatcher> wasn't working because it doesn't implement Clone but it's a trait :man_shrugging: ) to SpotMpris but when I get to
https://github.com/Douile/spot/blob/649c8855fa7c830cd8351e4e6fa7348fed07ed18/src/dbus/mod.rs#L161-L168
It fails as I can't send between threads, I believe it's something todo with an UnboundedSender within the Worker reference in ActionDispatcherImpl. But I'm stuck, any chance you could bestow some rust wisdom upon me.
Thanks!

Oh, I figured out the clone issue I think by adding
impl Clone for Box<dyn ActionDispatcher> {
    fn clone(&self) -> Box<dyn ActionDispatcher> {
        self.box_clone()
    }
}

But I still can't send dyn ActionDispatcher + 'static between threads

nw @Douile , I too had forgotten that PR, sorry about that!
Maybe for a start we could split this PR in two parts? The first few commits (for album art, seeking maybe? etc) should be fine to be merged :)
The rest is indeed a bit more complicated :grin: indeed our replacement for the plain sender has to be Send, I had not anticipated as much.
The issue is that right now, the implementation is not Send, and the box_clone thing does not keep the Send trait either. To make it Send, we'd have to distinguish between a Send and a not Send version of the Worker (the latter allowing to execute non-Send Future tasks, for instance a task that affects a gtk widget directly).
One possible way would be to move the dispatch_local_async requirement to another trait. Then there'd be some more substantial work on having another implementation of this updated ActionDispatcher not depend on the current Worker thing, but on something similar that would be Send.
I'd gladly help you to look into this! :) if you go ahead with splitting the MR, I'll work against your branch on this part!

Ok thanks, I'll revert to before adding the API requests. I'll also open an issue with the TODO list.

OpenURI introduces a bug where if you open a song not in the queue the UI will not update

Yup, remove OpenURI for now and we'll work on it in a separate MR :)
also would you mind squashing your commits to tidy up the history a bit? Then I'll review this first MR!

My bad should've seen this

No worries, merging :) thanks for your work!!

hey  @Douile , I realize I have not taken proper time to test this; is the position/offset control working for you? Been playing with playerctl, and it's not :/ (getting a warning about trackId not being properly exposed as a dbus identifier, not sure if that's the issue or if it's an unrelated issue). Should I open an issue or am I missing something?

hey @Douile , I realize I have not taken proper time to test this; is the position/offset control working for you? Been playing with playerctl, and it's not :/ (getting a warning about trackId not being properly exposed as a dbus identifier, not sure if that's the issue or if it's an unrelated issue). Should I open an issue or am I missing something?

Set position works for me when I was testing, with something like playerctl position 10.
The trackId warning i think is fine, it's because the report the track id as a string and not as a dbus object. I looked into reporting as an object but I couldn't find an easy way to do it with our dbus library.

I think there is an issue with seeking backwards actually, It throws could not parse position. Seeking forwards work. But defiantly worth opening an issue.

That's cos I cast the offset to i32 :man_facepalming:

Sorry, I just got confused by playerctl's postfix syntax for relative seeking!
But you're right about negative seeking! Good catch!!
Also no worries AT ALL, it's not released, no big deal, and well, it wasn't even working before :)


[BUG] The menu is incorrectly sized, causing the scrollbars to appear incorrectly.

The width is sufficient, but the horizontal scrollbar still appears.

An error has occurred at the height.

Terrible height...
Version: MAKE.md 8.0.15

Thanks to the efforts of the dev team, this issue has been improved, but it doesn't seem to be completely fixed.
Version: MAKE.md 8.0.16


Consider adding 'another' way to specify visibility

The current way is not convenient when there are many associated items. Also, empty traits cannot be public.
Related: #8

Maybe it should be an attribute argument like vis = pub?

FYI: This is how to specify visibility in current easy-ext: https://docs.rs/easy-ext/0.2.0/easy_ext/attr.ext.html#visibility
(As in the readme example, if the method is pub then the trait will also be pub)

@taiki-e Can you please allow it by accepting pub as first arg, like the extend crate? :)
https://docs.rs/extend/0.3.0/extend/#configuration

@taiki-e Can you please allow it by accepting pub as first arg, like the extend crate? :)
https://docs.rs/extend/0.3.0/extend/#configuration

I can look at this next week.

I can look at this next week.

Filed #25

Filed #25

Published in 0.2.6.

Published in 0.2.6.


⚠ Bofrost.be has degraded performance

In cf2b637, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1818 ms

Resolved: Bofrost.be performance has improved in e342647.


安装php报错

Describe the bug
=> ERROR [internal] load metadata for docker.io/library/php:7.2.19-fpm-alpine                                  21.2s
------
> [internal] load metadata for docker.io/library/php:7.2.19-fpm-alpine:
------
failed to solve with frontend dockerfile.v0: failed to create LLB definition: unexpected status code [manifests 7.2.19-fpm-alpine]: 403 Forbidden

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Screenshots

The php image can be pulled down using Docker pull alone.

log.txt
new question


Could not load file or assembly 'Microsoft.CodeAnalysis.CSharp' when triggering code actions

Issue Description
Given certain code snippets, Omnisharp will reliably throw a System.Reflection.ReflectionTypeLoadException for Microsoft.CodeAnalysis.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35 (could not load file or assembly).
Steps to Reproduce
Seems to be as simple as
namespace TestNamespace;

public class Test
{
    private List<int> test;
}

and placing your cursor at the beginning of the word test and asking for code actions. Placing the cursor elsewhere, such as inside the int or List, works as expected. It's only when it's on the word test that it's an issue.
This is a .NET 6 project with nullability enabled.
Expected Behavior
Code actions to be returned.
Actual Behavior
No code actions; OmniSharp gives an error response.
Logs
OmniSharp log
My logs are on trace, so that won't work. Here's the startup logs and the full message instead.
Starting OmniSharp server at 1/27/2022, 6:25:23 PM
    Target: c:\Users\winstonliu\repos\securesource.ccp\CCP.sln

OmniSharp server started with .NET 6.0.200-preview.22055.15
.
    Path: c:\Users\winstonliu\.vscode\extensions\ms-dotnettools.csharp-1.24.0\.omnisharp\1.38.0-net6.0\OmniSharp.dll
    PID: 29760

[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.DotNetTest
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.DotNetTest, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.Host
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.Host, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.MSBuild
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.MSBuild, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.Roslyn
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.Roslyn, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.Roslyn.CSharp
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.Roslyn.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.Script
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.Script, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: OmniSharp.Shared
[dbug]: OmniSharp.CompositionHostBuilder
        Loaded OmniSharp.Shared, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7e5bf7b3b470b509
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded from path: c:\Users\winstonliu\.vscode\extensions\ms-dotnettools.csharp-1.24.0\.razor\OmniSharpPlugin\Microsoft.AspNetCore.Razor.OmniSharpPlugin.dll
[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on Windows 10.0.22544.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        Checking the 'DOTNET_ROOT' environment variable to find a .NET SDK
[info]: OmniSharp.Services.DotNetCliService
        Using the 'dotnet' on the PATH.
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[dbug]: OmniSharp.CompositionHostBuilder
        .NET SDK requires MSBuild instances version 16.3 or higher
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 1 MSBuild instance(s)
            1: .NET Core SDK 6.0.200 17.1.0 - "C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15\"
[dbug]: OmniSharp.CompositionHostBuilder
        MSBuild instance .NET Core SDK 6.0.200 17.1.0 scored at -2147483648
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: .NET Core SDK 6.0.200 17.1.0 - "C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15\"
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: Microsoft.CodeAnalysis.Features, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: Microsoft.CodeAnalysis.CSharp.Features, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: Microsoft.CodeAnalysis.ExternalAccess.OmniSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35
[trce]: OmniSharp.Services.AssemblyLoader
        Assembly loaded: Microsoft.CodeAnalysis.ExternalAccess.OmniSharp.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35
[trce]: OmniSharp.HostServicesAggregator
        Successfully added Microsoft.CodeAnalysis.Features, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35 to host service assemblies.
[trce]: OmniSharp.HostServicesAggregator
        Successfully added Microsoft.CodeAnalysis.CSharp.Features, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35 to host service assemblies.
[trce]: OmniSharp.HostServicesAggregator
        Successfully added Microsoft.CodeAnalysis.ExternalAccess.OmniSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35 to host service assemblies.
[trce]: OmniSharp.HostServicesAggregator
        Successfully added Microsoft.CodeAnalysis.ExternalAccess.OmniSharp.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35 to host service assemblies.
[trce]: OmniSharp.HostServicesAggregator
        Successfully added Microsoft.AspNetCore.Razor.OmniSharpPlugin.StrongNamed, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60 to host service assemblies.
[dbug]: OmniSharp.WorkspaceInitializer
        Starting with OmniSharp options: {"RoslynExtensionsOptions":{"EnableDecompilationSupport":false,"EnableAnalyzersSupport":true,"EnableImportCompletion":false,"EnableAsyncCompletion":false,"DocumentAnalysisTimeoutMs":10000,"LocationPaths":null},"FormattingOptions":{"OrganizeImports":false,"EnableEditorConfigSupport":true,"NewLine":"\n","UseTabs":false,"TabSize":4,"IndentationSize":4,"SpacingAfterMethodDeclarationName":false,"SpaceWithinMethodDeclarationParenthesis":false,"SpaceBetweenEmptyMethodDeclarationParentheses":false,"SpaceAfterMethodCallName":false,"SpaceWithinMethodCallParentheses":false,"SpaceBetweenEmptyMethodCallParentheses":false,"SpaceAfterControlFlowStatementKeyword":true,"SpaceWithinExpressionParentheses":false,"SpaceWithinCastParentheses":false,"SpaceWithinOtherParentheses":false,"SpaceAfterCast":false,"SpacesIgnoreAroundVariableDeclaration":false,"SpaceBeforeOpenSquareBracket":false,"SpaceBetweenEmptySquareBrackets":false,"SpaceWithinSquareBrackets":false,"SpaceAfterColonInBaseTypeDeclaration":true,"SpaceAfterComma":true,"SpaceAfterDot":false,"SpaceAfterSemicolonsInForStatement":true,"SpaceBeforeColonInBaseTypeDeclaration":true,"SpaceBeforeComma":false,"SpaceBeforeDot":false,"SpaceBeforeSemicolonsInForStatement":false,"SpacingAroundBinaryOperator":"single","IndentBraces":false,"IndentBlock":true,"IndentSwitchSection":true,"IndentSwitchCaseSection":true,"IndentSwitchCaseSectionWhenBlock":true,"LabelPositioning":"oneLess","WrappingPreserveSingleLine":true,"WrappingKeepStatementsOnSingleLine":true,"NewLinesForBracesInTypes":true,"NewLinesForBracesInMethods":true,"NewLinesForBracesInProperties":true,"NewLinesForBracesInAccessors":true,"NewLinesForBracesInAnonymousMethods":true,"NewLinesForBracesInControlBlocks":true,"NewLinesForBracesInAnonymousTypes":true,"NewLinesForBracesInObjectCollectionArrayInitializers":true,"NewLinesForBracesInLambdaExpressionBody":true,"NewLineForElse":true,"NewLineForCatch":true,"NewLineForFinally":true,"NewLineForMembersInObjectInit":true,"NewLineForMembersInAnonymousTypes":true,"NewLineForClausesInQuery":true},"FileOptions":{"SystemExcludeSearchPatterns":["**/node_modules/**/*","**/bin/**/*","**/obj/**/*","**/.git/**/*","**/.git","**/.svn","**/.hg","**/CVS","**/.DS_Store","**/Thumbs.db"],"ExcludeSearchPatterns":[]},"RenameOptions":{"RenameOverloads":false,"RenameInStrings":false,"RenameInComments":false},"ImplementTypeOptions":{"InsertionBehavior":null,"PropertyGenerationBehavior":null},"DotNetCliOptions":{"LocationPaths":null},"Plugins":{"LocationPaths":null}}
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140
[dbug]: OmniSharp.MSBuild.ProjectSystem
        MSBuild environment:
Mode: Standalone
RunningTests: False
RunningInVisualStudio: False
MSBuildToolsDirectory32: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15
MSBuildToolsDirectory64: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15
MSBuildSDKsPath: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15\Sdks
CurrentMSBuildConfigurationFile: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15\MSBuild.dll.config
CurrentMSBuildExePath: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15\MSBuild.dll
CurrentMSBuildToolsDirectory: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15
VisualStudioInstallRootDirectory:
MSBuildExtensionsPath: C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15

  "Message": "\"System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.\\r\\nCould not load file or assembly 'Microsoft.CodeAnalysis.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.\\r\\nCould not load file or assembly 'Microsoft.CodeAnalysis, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.\\r\\n   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)\\r\\n   at System.Reflection.RuntimeAssembly.get_DefinedTypes()\\r\\n   at System.Linq.Enumerable.SelectManySingleSelectorIterator`2.MoveNext()\\r\\n   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()\\r\\n   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()\\r\\n   at System.Collections.Generic.LargeArrayBuilder`1.AddRange(IEnumerable`1 items)\\r\\n   at System.Collections.Generic.SparseArrayBuilder`1.ReserveOrAdd(IEnumerable`1 items)\\r\\n   at System.Linq.Enumerable.Concat2Iterator`1.ToArray()\\r\\n   at System.Collections.Immutable.ImmutableArray.CreateRange[T](IEnumerable`1 items)\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.CachingCodeFixProviderForProjects.LoadFrom(Project project) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\CachingCodeFixProviderForProjects.cs:line 95\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.CachingCodeFixProviderForProjects.GetAllCodeFixesForProject(ProjectId projectId) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\CachingCodeFixProviderForProjects.cs:line 57\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.BaseCodeActionService`2.GetSortedCodeFixProviders(Document document) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\BaseCodeActionService.cs:line 156\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.BaseCodeActionService`2.AppendFixesAsync(Document document, TextSpan span, IEnumerable`1 diagnostics, List`1 codeActions) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\BaseCodeActionService.cs:line 0\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.BaseCodeActionService`2.CollectCodeFixesActions(Document document, TextSpan span, List`1 codeActions) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\BaseCodeActionService.cs:line 130\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.BaseCodeActionService`2.GetAvailableCodeActions(ICodeActionRequest request) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\BaseCodeActionService.cs:line 88\\r\\n   at OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.GetCodeActionsService.Handle(GetCodeActionsRequest request) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Roslyn.CSharp\\\\Services\\\\Refactoring\\\\V2\\\\GetCodeActionsService.cs:line 38\\r\\n   at OmniSharp.Endpoint.EndpointHandler`2.GetFirstNotEmptyResponseFromHandlers(ExportHandler`2[] handlers, TRequest request) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Host\\\\Endpoint\\\\EndpointHandler.cs:line 218\\r\\n   at OmniSharp.Endpoint.EndpointHandler`2.HandleRequestForLanguage(String language, TRequest request, RequestPacket packet) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Host\\\\Endpoint\\\\EndpointHandler.cs:line 234\\r\\n   at OmniSharp.Endpoint.EndpointHandler`2.Process(RequestPacket packet, LanguageModel model, JToken requestObject) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Host\\\\Endpoint\\\\EndpointHandler.cs:line 143\\r\\n   at OmniSharp.Stdio.Host.HandleRequest(String json, ILogger logger) in D:\\\\a\\\\1\\\\s\\\\src\\\\OmniSharp.Stdio\\\\Host.cs:line 258\\r\\nSystem.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.CodeAnalysis.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.\\r\\nFile name: 'Microsoft.CodeAnalysis.CSharp, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'\\r\\nSystem.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.CodeAnalysis, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.\\r\\nFile name: 'Microsoft.CodeAnalysis, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'\"",

C# log
It's blank.
Environment information
VSCode version: 1.63.2
C# Extension: 1.24.0
Dotnet Information
.NET SDK (reflecting any global.json):
 Version:   6.0.200-preview.22055.15
 Commit:    a3c3a2bf3b
Runtime Environment:
OS Name:     Windows
OS Version:  10.0.22544
OS Platform: Windows
RID:         win10-x64
Base Path:   C:\Program Files\dotnet\sdk\6.0.200-preview.22055.15\
Host (useful for support):
Version: 6.0.1
Commit:  3a25a7f1cc
.NET SDKs installed:
5.0.404 [C:\Program Files\dotnet\sdk]
6.0.200-preview.22055.15 [C:\Program Files\dotnet\sdk]
.NET runtimes installed:
Microsoft.AspNetCore.App 3.1.22 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.22 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.22 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 5.0.13 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
To install additional .NET runtimes or SDKs:
https://aka.ms/dotnet-download

Visual Studio Code Extensions

Extension
Author
Version

azure-account
ms-vscode
0.9.11

azure-pipelines
ms-azure-devops
1.195.0

azurerm-vscode-tools
msazurermtools
0.15.5

blazorwasm-companion
ms-dotnettools
1.1.0

codesnap
adpyke
1.3.4

cpptools
ms-vscode
1.7.1

csharp
ms-dotnettools
1.24.0

debugger-for-edge
msjsdiag
1.0.15

EditorConfig
EditorConfig
0.16.4

hexeditor
ms-vscode
1.9.4

jupyter
ms-toolsai
2021.11.1001550889

jupyter-keymap
ms-toolsai
1.0.0

jupyter-renderers
ms-toolsai
1.0.4

material-theme
zhuangtongfa
3.13.16

powershell
ms-vscode
2021.12.0

python
ms-python
2021.12.1559732655

remote-containers
ms-vscode-remote
0.209.6

remote-ssh
ms-vscode-remote
0.70.0

remote-ssh-edit
ms-vscode-remote
0.70.0

remote-wsl
ms-vscode-remote
0.63.13

sarif-viewer
MS-SarifVSCode
3.1.1

theme-bluloco-light
uloco
3.5.0

vscode-azdo-codereview
Microsoft
1.2021.827002

vscode-bicep
ms-azuretools
0.4.1124

vscode-dotnet-runtime
ms-dotnettools
1.5.0

vscode-edge-devtools
ms-edgedevtools
1.4.2

vscode-eslint
dbaeumer
2.2.2

vscode-power-mode
hoovercj
2.2.0

vscode-remote-extensionpack
ms-vscode-remote
0.21.0

vscode-research
albertborges
210806.0.2

vscode-theme-onelight
akamud
2.2.3

vsliveshare
ms-vsliveshare
1.0.5273

vulnerability-extension
devprod
1.2022.126001

wavework
Microsoft
1.2022.118003

@50Wliu We will need to take a new O# build to resolve this since we are currently shipping with a 4.0.0 Roslyn. As a workaround you can set your omnisharp.path setting to latest and that will pull an update O# for you, however it will continually update you with the rolling build.

I'm still getting this issue today. Downgrading .NET SDK and runtime from 7.0 to 6.0 seems to resolve it.


HTML output not escaped

Thank you for a great tool which makes testing LTI simple!
I noticed that the values printed in assessment.erb are not escaped. This will cause issues if you test agains e.g. Moodle which uses JSON for sourcedid. Anyway I think the tool should escape the html output using e.g. Rack::Utils.escape_html(text)

JSON sourcedid? That's cool. Think you could paste an example value that is sent for us to test with?

Of course, the HTML looks like this with no escaping:
<input type="hidden" name="launch_params[lis_result_sourcedid]" value="{"data":{"instanceid":"1","userid":"2","launchid":1232306510},"hash":"e26bada8e76f271680d3d014237fc54cfe747d7621589df128c6a5b0c71c6b33"}" />

I guess simply replacing " with " in the value would be enough.
I'm testing agains the latest Moodle 2.7.


time() function returns different values depending on how the program is run

If you exit the program with ESC then press ctrl+r, then the time() becomes a number between 15-20 (on my computer) on the first TIC. But if you press ctrl+r while the application is already running to restart it, then time() becomes <1.
Reproducing
cls(); print(time());

Exit to the console using ESC
Run the program with CTRL+R
Note the value
Run again with CTRL+R
Value is completely different

To me, it looks like the first value is a mistake

now time() returns < 1 in all cases
fixed in .41


Update exchange_key description to use different HMAC setting

Description
Updates the description of the Exchange Key in SAML authentication to require HMAC_SHA512 instead of HMAC256.
Issues Resolved
Fixes #4545
Checklist

[x] By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and subject to the Developers Certificate of Origin.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

After doing some testing on this by using different string sizes for the exchange_key, and also commenting it out, I would like to propose the following wording:
exchange_key	The key to sign the token. The algorithm is HMACSHA512, which mixes the exchange key with the message data and produces an output hash that is 512 bits/64 bytes in length.
The exchange_key must have a value and use base64 URL encoding.


merge commit develop

new shopping cart and checkout
added pages on User Profile

I've made some changes, I hope this worked.


FEAT Add SALT-NLP/mic Dataset

Name: SALT-NLP/mic
Link: https://www.dropbox.com/sh/m46z42nce8x0ttk/AABuSZiA6ESyrJNWmgTPrfuRa?dl=0
Relevant columns: "Q","A","rot","moral","rot-agree","A_agrees","violation-severity","worker_answer"
Note: rot is rule of thumb

Originally posted by @divyaamin9825 in #429

Describe the solution you'd like
This dataset should be available within PyRIT: https://huggingface.co/datasets/SALT-NLP/MIC
Also available here: https://github.com/SALT-NLP/mic
Associated paper: https://aclanthology.org/2022.acl-long.261/
Additional context
There are examples of how PyRIT interacts with other datasets here: https://github.com/search?q=repo%3AAzure%2FPyRIT %23 The dataset sources can be found at%3A&type=code
[[Content Warning: Prompts are aimed at provoking the model, and may contain offensive content.]]
Additional Disclaimer: Given the content of these prompts, keep in mind that you may want to check with your relevant legal department before trying them against LLMs.

Hello @nina-msft ! I would like to contribute to this issue. :)

Please go ahead @SidraEffendi ! Let us know if you need any help / pointers.


Ignore status update

What type of PR is this?
Enhancement
What this PR does / why we need it:
Ignore status update for controller, make update less frequency.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

LGTM


Privacy Center allows for both email and phone number to be used in current state.

Bug Description
Privacy Center allows for email and phone to be used in current state. Currently, it is an XOR.
Steps to Reproduce

Open Privacy Center
Add a phone
Add an email
Submit request

Expected behavior
It disables one field of the two fields to be xor
Screenshots
If applicable, add screenshots to help explain your problem.
Environment

Version: 2.6.3
OS: OSX

Additional context

bring up test_env
click Access your data
add both email and phone
log into the admin ui
add a connector (i used shopify)
approve the request
the request will error
go to view details
and view the last request and you will see the error

error:  Only one identity can be specified for SaaS connector traversal

I don't think this ticket addresses the root problem. What I think we should do is accept both email and phone number identities in the privacy center but make sure the privacy request isn't verified until both identities are verified (email verification and SMS verification).

moving to done
tested with
root_user - accessible - passed
owner -   accessible - passed
all other it is not accessible


chore: publish docs on GitHub Pages

What does this PR do?
Adds post job step to release-package to start publishing docs to github pages
What issues does this PR fix or reference?
@W-0@

The first deployment worked but since I created the branch gh-pages off main it picked up the readme file.
I've created an orphan branch: https://github.com/forcedotcom/kit/tree/gh-pages.
Running yarn docs locally generates a valid HTML.


chore(build): semantic-release initial draft/test run

attempting to use semantic-release for nicer release notes and deployment workflow

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

v1.6.92
GitHub release

Your semantic-release bot :package::rocket: