[Bug]: App crashes when toggling the mod state

I'm using the latest build release of Muse Dash Mod Tools and this problem still exists.

[X] Yes

There are no similar issues on the issue list

[X] Yes

Operating system
Windows 11
Bug Detail
Pretty self-explainatory. Happens on all mods.
Screenshots (Optional)
No response
Logs
A total of 21 logs were generated during this process. The Fatal error message looks the same, so I shall just give you this part. Everything else seems completely normal.
Unhandled exception
System.IO.FileNotFoundException: Error reading the  directory.
   at System.IO.FileSystemWatcher.StartRaisingEvents()
   at MuseDashModToolsUI.ViewModels.Tabs.ModManageViewModel.ExecuteWithWatcherDisabled(Func`2 func, Mod item)
   at MuseDashModToolsUI.ViewModels.Tabs.ModManageViewModel.OnToggleMod(Mod item)
   at CommunityToolkit.Mvvm.Input.AsyncRelayCommand.AwaitAndThrowIfFailed(Task executionTask)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at Avalonia.Threading.SendOrPostCallbackDispatcherOperation.InvokeCore()
   at Avalonia.Threading.DispatcherOperation.Execute()
   at Avalonia.Threading.Dispatcher.ExecuteJob(DispatcherOperation job)
   at Avalonia.Threading.Dispatcher.ExecuteJobsCore(Boolean fromExplicitBackgroundProcessingCallback)
   at Avalonia.Threading.Dispatcher.Signaled()
   at Avalonia.Win32.Win32DispatcherImpl.DispatchWorkItem()
   at Avalonia.Win32.Win32Platform.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam)
   at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg)
   at Avalonia.Win32.Win32DispatcherImpl.RunLoop(CancellationToken cancellationToken)
   at Avalonia.Threading.DispatcherFrame.Run(IControlledDispatcherImpl impl)
   at Avalonia.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken)
   at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)
   at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode)
   at MuseDashModToolsUI.Program.Main(String[] args)

Well I think I'm also to blame for this. I just cloned everything from https://github.com/MDModsDev/ModLinks/tree/main/Mods and put it in the Mods folder, thinking the Mod Tool could manage them easily.

yeah i think the new push in modlinks should fix the problem


feat(tools): new strings for grabbable setter tip

Needs: https://github.com/Neos-Metaverse/NeosFramework/pull/41
Some notes from, there to help folks:
This adds an ApplyToObjectRoot option to the GrabbableSetterTip, it defaults on True/On.
The option controls where the grabbable is applied to in an operation:

When set to true/on it applies it to the object root.
When set to false/off it will apply to the object which is directly hit by the tooltip.

Thank you, merged!


Using Private IP Addresses causes CF to timeout

I am attempting to setup the environment without using (associating Public IP Addresses to the servers) and the cloud formation never completes.  The lack of Public IP Addresses is a requirement within the private AWS environment.  I am editing the associatepublicIP value from true to false.
Is it possible to use this cf with only private IP addresses/ no public IP addresses?

@cedman1 This Quick Start requires instances to be in public subnet.


Deprecation warning in Rails ~> 2.3.9

DEPRECATION WARNING: ActiveSupport::Dependencies.load_paths is deprecated, please use autoload_paths instead. (called from evaluate_init_rb at vendor/plugins/fitter_happier/init.rb:10)

This issue is like if you combine haysticks with worms you donut!


add Azure Pipelines Scaler doc

This PR adds documentation for Azure Pipelines Scaler.
Relates to https://github.com/kedacore/keda/issues/1705

@troydn I think this is a solid case for a blog post talking about it end-to-end. Are you willing to write one that we publish on keda.sh where a self-hosted agent is deployed and we add autoscaling to it?

@troydn I think this is a solid case for a blog post talking about it end-to-end. Are you willing to write one that we publish on keda.sh where a self-hosted agent is deployed and we add autoscaling to it?

@tomkerkhove Yes, I could write one. Should I create a seperate PR for this?

A seperate PR would be great, thanks!
What I was thinking about was:

Deploy self-hosted agent
Schedule some pipeline runs
Apply autoscaling
Show outcome
Would that make sense to you?


Panic on resource configurator when Cloud SQL database fails to create

What happened?
A panic occurs on the sql resource configurator when a new Cloud SQL database fails to create. The specific error for starting the database was that there was no IP space available on the network.
This should fail gracefully and produce an event / status condition on the resource.
It looks like the error is here, trying to get a certificate that doesn't exist, since the instance failed to create.
panic: runtime error: index out of range [0] with length 0 [recovered]
	panic: runtime error: index out of range [0] with length 0

goroutine 1618 [running]:
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile.func1()
	sigs.k8s.io/controller-runtime@v0.14.6/pkg/internal/controller/controller.go:119 +0x1fa
panic({0x27089a0, 0xc001e317b8})
	runtime/panic.go:884 +0x212
github.com/upbound/provider-gcp/config/sql.Configure.func1.1(0xc00205c030?)
	github.com/upbound/provider-gcp/config/sql/config.go:59 +0x645
github.com/upbound/upjet/pkg/resource.GetConnectionDetails(0x7f225e7382c0?, {0x7f225e7383e8?, 0xc000d56380?}, 0xc002a76500)
	github.com/upbound/upjet@v0.9.0-rc.0.0.20230427131841-1d0b7b0c08f8/pkg/resource/sensitive.go:85 +0x87
github.com/upbound/upjet/pkg/controller.(*external).Observe(0xc00204c780, {0x2f93810, 0xc001f50de0}, {0x2fcdc80, 0xc000d56380})
	github.com/upbound/upjet@v0.9.0-rc.0.0.20230427131841-1d0b7b0c08f8/pkg/controller/external.go:206 +0x599
github.com/crossplane/crossplane-runtime/pkg/reconciler/managed.(*Reconciler).Reconcile(0xc001a29800, {0x2f93848, 0xc002024210}, {{{0x0?, 0x7f225e8614b8?}, {0xc001e0eb60?, 0x7f22860315b8?}}})
	github.com/crossplane/crossplane-runtime@v0.20.0-rc.0.0.20230406155702-4e1673b7141f/pkg/reconciler/managed/reconciler.go:805 +0x293f
github.com/crossplane/crossplane-runtime/pkg/ratelimiter.(*Reconciler).Reconcile(0xc002b9e3c0, {0x2f93848, 0xc002024210}, {{{0x0?, 0x10?}, {0xc001e0eb60?, 0x40da67?}}})
	github.com/crossplane/crossplane-runtime@v0.20.0-rc.0.0.20230406155702-4e1673b7141f/pkg/ratelimiter/reconciler.go:54 +0x16b
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile(0x2f93848?, {0x2f93848?, 0xc002024210?}, {{{0x0?, 0x23a65e0?}, {0xc001e0eb60?, 0x0?}}})
	sigs.k8s.io/controller-runtime@v0.14.6/pkg/internal/controller/controller.go:122 +0xc8
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler(0xc000ba0500, {0x2f937a0, 0xc0003d7c00}, {0x25997e0?, 0xc001bb78c0?})
	sigs.k8s.io/controller-runtime@v0.14.6/pkg/internal/controller/controller.go:323 +0x38f
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem(0xc000ba0500, {0x2f937a0, 0xc0003d7c00})
	sigs.k8s.io/controller-runtime@v0.14.6/pkg/internal/controller/controller.go:274 +0x1d9
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2()
	sigs.k8s.io/controller-runtime@v0.14.6/pkg/internal/controller/controller.go:235 +0x85
created by sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2
	sigs.k8s.io/controller-runtime@v0.14.6/pkg/internal/controller/controller.go:231 +0x333

How can we reproduce it?
Create a database instance with no IP address space available in the network like such:
apiVersion: sql.gcp.upbound.io/v1beta1
kind: DatabaseInstance
metadata:
  name: my-instance
spec:
  providerConfigRef:
    name: sql-config
  forProvider:
    project: my-gcp-project
    databaseVersion: POSTGRES_15
    region: asia-northeast1
    rootPasswordSecretRef:
      key: password
      name: "root-postgres"
      namespace: my-namespace
    settings:
      - tier: db-g1-small
        ipConfiguration:
          - ipv4Enabled: true
            privateNetwork: projects/my-gcp-project/global/networks/my-network
            requireSsl: true
        availabilityType: REGIONAL

Wait until the instance fails to create, see panic in the sql provider.
What environment did it happen in?

Crossplane Version: :v1.12.2
Provider Version: v0.34.0 (using provider family to get sql provider specifically)
Kubernetes Version:

Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.1", GitCommit:"8f94681cd294aa8cfd3407b8191f6c70214973a4", GitTreeState:"clean", BuildDate:"2023-01-18T15:58:16Z", GoVersion:"go1.19.5", Compiler:"gc", Platform:"darwin/arm64"}
Server Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.5-gke.1200", GitCommit:"4eb57372b0f0ac0023caca078161b75185febeef", GitTreeState:"clean", BuildDate:"2023-06-01T19:55:11Z", GoVersion:"go1.19.9 X:boringcrypto", Compiler:"gc", Platform:"linux/amd64"}

Kubernetes Distribution: GKE

Since this looks like a fairly minor issue, I'd like to pick it up as well if no-one's working on it yet?

Hi @turkenf
I just updated to v0.35.0, and while it has improved - namely it adds a status condition now with the GCP error - the controller still panics.
Specifically it occurs when you select private IP for the database instance, but there is no Private Service Connect range available for the region. I can reproduce it like this:

Have a VPC network with 1 PSC range (not multiple)
Deploy a database instance with sql provider, with private IP to one region e.g. asia-northeast1
Wait until deployed
Try deploy a second database instance with private IP to another region e.g. europe-west1
The panic occurs and a status condition is written to the MR

Thank you for the quick reply @dzoeteman, I will try to reproduce this at the appropriate time. You don't need to wait for this to work on it, you can start without waiting for me to reproduce.
Thank you in advance for your contribution 🙏

Hi @turkenf, sorry to bother you, but was trying to test the change, but I am unable to actually build an image for the sql subpackage so I can test this in cluster, what is the makefile command to do that? I can only figure out make SUBPACKAGES="sql" build.all, but doesn't seem like that's enough to also produce a subpackage-specific image, or I might be missing something.
Couldn't find good docs on it either, but again I might be missing something.

Could please check if this works for you: https://github.com/crossplane/crossplane/discussions/3817#discussioncomment-6428165

@turkenf Thanks, that did it! Submitted my PR #357


Clarifications around ConfigureAll and named options

ConfigureAll configures all instances, not just explicitly named instances. The "Note" section sort explains this later by mentioning that that "All options are named instances". But I think it makes the behaviour clearer to remove the "named" qualifier in this case?

I agree -IPostConfigureOptions has its own section, why not poor old ConfigureAll? 😉
I think

## Configure all options (ConfigureAll method)

... is maybe best? Or ...

## Configure all options  with the ConfigureAll method

## Configure all options with the ConfigureAll method

... seems nice.

Cool, added the section header


Superfluous parameter access when using service persistence

When using service persistence, pydase reads parameters many times instead of only once. Example:

from pydase import DataService, Server

class Device(DataService):
    _current = 0.0

    @property
    def current(self):
        # run code to get current
        result = self._current
        print(f"Reading current. Result: {result}")
        return result

    @current.setter
    def current(self, value):
        # run code to set current
        print(f"Set current to {value}")
        self._current = value

if __name__ == "__main__":
    service = Device("device_state.json")
    Server(service).run()

current is set to 10 using the web interface. Output after stopping and restarting the script:
Reading current. Result: 0.0
Reading current. Result: 0.0
Reading current. Result: 0.0
Reading current. Result: 0.0
Reading current. Result: 0.0
Set current to 10.0
Reading current. Result: 10.0

A similar issue appears when changing the value in the web interface:
Reading current. Result: 10.0
Reading current. Result: 10.0
Reading current. Result: 10.0
Set current to 9.0
Reading current. Result: 9.0

In the lab, each of the reads would lead to a hardware access which can be very slow. The number of parameter reads and writes should be kept to a minimum.

So, I can remove the first three property accesses. The fourth one should probably not be removed. It accesses the value of the property to push the update notification to the frontend. As the setter can be very complicated, and the value passed to the setter does not have to be the value the property getter returns, you will have to access the property to get the correct value.

I haven't looked at service persistence yet, sorry about that. But I reckon that this is not a problem as this will only happen when the service is started?

The first access when starting the server is in the _set_start_and_stop_for_async_methods method, which creates start- and stop-methods for async methods. This function inspects the members of the service class using inspect.getmembers which apparently accesses the properties.
The second access when loading the state from a json file corresponds to a serialization of the class. With this, it checks if the serialization of the current service contains the entries in the json file.


[Bug]: Wrong Navigation Path

Describe the bug
The "What's next" section on the page https://docs.chain.link/vrf/v2-5/overview/direct-funding points to v2 links instead of v2.5.
To Reproduce

Go to https://docs.chain.link/vrf/v2-5/overview/direct-funding
Scroll to the "What's next" section at the Bottom of the page.
Click on the "Get Random Number" and "Supported Networks"
It redirects to v2 pages instead of v2.5

URLs
https://docs.chain.link/vrf/v2-5/overview/direct-funding
Expected behavior
The URL paths should connect to v2.5 pages.
Additional context
No response

Thank you very much @emmaodia!


add compound-v2

[x] Add in schema 1.1.0
[x] Accrue interest on inputBalances / totalBorrowNative
[x] fix inputTokenBalances - (ie, market liquidity = (deposits - withdraws + interest))
[x] fix outputTokenBalances - decrease on withdraw
[x] figure out how to setCollateralActive
[x] Find calculation error for totalBorrowUSD/totalDepositUSD
[ ] ensure all is working properly

Remove TODO?


Feature request

Hi Gregory, great component you've created. Successfully integrated it in my Home Assistant install so I can control my Dreamscreen inputs in my harmony hub activities. One thing I think would be a nice improvement is to be able to set the device entity fixed or auto discovered.
I don't have my dreamscreen always powered on, only when my TV is switched on. So now if I restart my home assistant I need to make sure the dreamscreen is on otherwise it won't create a device entity. So being able to create a fixed entity, for example through the configuration, or through auto discovery would make my life a bit easier. :-) Let me know your thoughts on it. Thanks!

As I also dislike restarting HA everytime I will look into this asap. It may could take some days.

Totally forgot about this. I'm not sure when i will be able to dig into this.

The restart function works to a degree I am having issues with it working on more than one of my 3 DS but after @J3n50m4t added the Entity option I got it working on 1 for now.


[Identity] Not all morphs that should have hands have hands

Add arms for horse, donkey, mule, zombie horse, skeleton horse, fox, wolf, strider, warden, allay, creeper, zoglin & hoglin
Original isuse: https://github.com/Draylar/identity/issues/433

in the normal morph mod like ichuns they do thats wht i suggested this one on identity github

hmm.
Maybe I'll integrate it in v1.11.

the ones that had hands in og morph that dont have them here are wolf and foxes and horses

I know this took way to long, but finally it's implemented! 🥳🥳


Child Coordinator is deallocated if presented too quickly

Presenting a child coordinator too quickly sometimes results in the Coordinator getting deallocated. Find the attached sample project as proof.
https://github.com/chefnobody/DeallocSample
In the attached project, you will find NavigationCoordinators that trigger some action after 1.0 second:
RootCoordinator pushes ListCoordinator, which presents ProfileCoordinator, which presents OnboardingCoordinator.
Line ~73 of AppDelegate reads like this:
// Change this line's dispatch time to `.now() + 1.0` to avoid the bug:
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { [weak self] in
   self?.trigger(.profile)
}

Run the code as-is should result in a log like this:
*****
ProfileCoordinator deinit

Changing the dispatch delay time on line 73 to 1.0:
DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) { [weak self] in
   self?.trigger(.profile)
}

Does not cause ProfileCoordinator to deallocate and successfully presents the final OnboardingCoordinator

@chefnobody I am facing the same issue, did you find anyway to avoid it rather than adding a manual delay?

The only think that worked for me was to manually manage the coordinator reference.
var fooCoordinator: FooCoordinator?

func showFoo() -> NavigationTransition {
    let coordinator = FooCoordinator()
    fooCoordinator = coordinator // and latter fooCoordinator = nil
    return .present(coordinator)
}

@ericklborges it's been a long time since I looked at this and no, I didn't solve it w/o the delay. Also, I just stopped using this lib as its not really being maintained.


[Opt](parquet reader) Optimize the performance of reading decimal in parquet reader.

Proposed changes
Optimize the performance of reading decimal in parquet reader.

Static dispatch DecimalScaleParams.
Optimize memcpy, static dispatch copy size in fixed length cases.
Use right shift bit operator to convert decimals.

Optimize Result:
TPCDS Q28 (3 be * 16 cores * 64G): 3.5 s->2.6 s.


SEPG Automated Release - v2.2.2

SEPG Details
Release Build Link: http://sou-jenkins2.swinfra.net:8080/job/Auto-Release/170/
Build Token: github.com/CAFapi/buildenv-dotnet-image/master/43ea3850cd214d3bba58cf231d63e7ca89772a07
Versioning Behaviour: Roll on to next minor
Artifacts For Release
Docker

cafapi/buildenv-dotnet:2.2.2 (Static Tag)
cafapi/buildenv-dotnet:2.2 (Dynamic Tag)
cafapi/buildenv-dotnet:2 (Dynamic Tag)
cafapi/buildenv-dotnet:latest (Dynamic Tag)

 Build Stage
Action
Status

Release Checks
completed
:heavy_check_mark:

Gather Release Data

:white_small_square:

QA Documentation Site Deployment

:white_small_square:

QA Deployment Branch Promotion

:white_small_square:

Docker Image Promotion

:white_small_square:

Maven Artifact Promotion (Closed Source)

:white_small_square:

NuGet Artifact Promotion

:white_small_square:

Artifactory Release Artifact Tagging

:white_small_square:

Generic Artifact Promotion

:white_small_square:

Maven Artifact Promotion (Open Source)

:white_small_square:

Maven Staging Repository Removal (Open Source)

:white_small_square:

Git Tagging

:white_small_square:

Git Release

:white_small_square:

Git Release Asset Deployment

:white_small_square:

Pull Request Merge

:white_small_square:

Release Branch Deletion

:white_small_square:

view the build log here


fontSize issue

I'm queuing two animations, the first changes fontSize to 1.4em and the second changes it to 1em. The first animation is ok, the second somehow starts with a very small fontSize (maybe 0?), instead of the size after the first animation, of 1.4em. An interesting fact is that after the first animation el.style.fontSize is calc(0px + 1.4em). Also, using forcefeeding for the second animation (fontSize: ['1em', '1.4em']) works.
Am I missing something obvious?
You can check the behavior here: https://codesandbox.io/embed/mql6zw40yx .

You are - but only if you're psychic or read through the open issues as the documentation is somewhat behind ;-)
When anything (such as Velocity) reads a css value it gets a pixel number (yes, that's simplifying things, but the full answer isn't relevant). Even if it's originally set as another unit. Velocity is trying to animate from that pixel value to an em value, and as such it is trying to use calc(10px + 0em) and eventually get to calc(0px + 1.4em).
Using forcefeeding bypasses that pixel value and lets it just animate a single number.
Sadly there's not much that can be done to improve this. Velocity v2 (currently in beta) will behave somewhat better, and will actually work the second way from the second call onwards as it'll remember the values used (rather than the pixel numbers). In the meantime, you can use forcefeeding for anything now, including box-shadow, and even multi-layered backgrounds. See #697 for more details on it.

I should just point out that Velocity v1 can (and does) also change the units used to pixels without forcefeeding - this behaviour is removed in v2, but that won't be ready for normal use for some time yet.

@Rycochet Thank you for the quick answer. On a related issue, can you also take a look at https://codesandbox.io/embed/vyzmw5nv5 ?

Also, did it use to work in previous versions? Because the example here https://vuejs.org/v2/guide/transitions.html#JavaScript-Hooks seems to work.

Sorry - got really busy (with being sick meh) - will have a look at earlier versions later, but the behaviour was very different before - it couldn't animated between different units, it just changed everything to a px size and animate that. Basically that means that if some part is dynamic (such as a font size that depended on the device orientation for example) then that would suddenly become static and the animating element would keep the old px value. The new code bypasses that by letting the units stay as part of it - unfortunately as I said earlier, there's no easy way to get the unit value for something short of totally rewriting the css parsing and matching rules - or simply providing the first value as a forcefeeding one.

@Rycochet No worries, hope you're feeling better! Did you take a look at the second link https://codesandbox.io/embed/vyzmw5nv5? It only uses 'px', but still behaves strange.


typo and grammar fixes

resolve #184 =

Description
Fixed all the issues I found in the book folder and changed them.
Change List

Fix typo error of chapter 00, 01, 02, 03, 04, 05, 06, 07, 09, 10

Thanks for the amazing fix. I will review it later tomorrow.


added support for file-input

My attempt to implement 'File Input'.
Unfortunately, I don't know how to run 'Docs' locally, so I was unable to test my code. Hope this is more useful than a plain feature request.

Thanks for that, I'll have a look!


File got locked even after uploaded successfully in retries after getting error

Describe the bug
I have a node service which uploads files to server. As per the documentation, I am using the filestream in tus client and a chunkSize defined is 300MB. Also, it retries 5 times if any error occurs from server / network. If I receive any error during upload, it retries and upload file successfully. But file gets locked by service. As per the documentation, I haven't destroy the stream on success. If there isn't any error-retry occured while uploading file, it got released. I am deleting a file from folder once it is uploaded. This is how I got to know that it is locked.
To Reproduce
You can run below code with lower internet upstream speed (~200kbps , so that you can get some error or network disconnection) and start uploading 3GB file. It will take around 6-7 hours to upload and hope you get an error.
Please try to reproduce the problem when uploading to our public tus instance at https://tusd.tusdemo.net/files/, if applicable to your situation. This helps us to determine whether the problem may be caused by the server component.
const fileDataStream = fs.createReadStream(filepath);
const stats = fs.statSync(filepath);
const fileSizeInBytes = stats['size'];
let tusClient = new tus.Upload(fileDataStream, {
      endpoint: 'my-server-url',
      headers: {
        Authorization: 'Bearer ' + apiKey,
        'Upload-Length': fileSizeInBytes,
      },
      chunkSize: 1024 * 1024 * 300, // 300MB
      retryDelays: [0, 3000, 5000, 10000, 20000],
      metadata: { filename: fileName },
      onError: function (error) {
        console.log(error);
        fileDataStream.destroy();
        removeFileSync(filepath);
      },
      onShouldRetry: function (err, retryAttempt) {
        console.log(`err: ${err} retryattempt: ${retryAttempt}`)
        return true;
      },
      onSuccess: async function () {
        fs.unlinkSync(filepath);
      }
    });

    tus.start();

Expected behavior
A file should be released once a upload is completed successfully in any case.

I am deleting a file from folder once it is uploaded. This is how I got to know that it is locked.

What exactly do you mean by saying "locked" here? Is the upload resource on the server locked (i.e. tus server responds with 423 status) or is tus-js-client still holding an open file descriptor to the file? What is the exact error you are getting?

Upload resource on client got locked. File could not be deleted if I try to delete it. So could not do any operation on file after I got an error.
My server responds with different errors other than 423. ex. 400, 500, socket hangup, network failure..

Ok, I understand. What OS are you using?
I am wondering if the behavior of the autoClose option from fs.createReadStream is different than we though. We do not close the streams manually but let autoClose handle it. Maybe that is not sufficient for error cases.


Feature/2406 Generate basic programme Gantt chart view

What's included?
Closes #2406
Who should test?
✅ Product owner
✅ Developers
✅ UTG
How to test?
Preview link:

Dev
Production

Steps:

Ensure the top row is always visible onscreen.

Ensure the top row displays a 6-month period starting from one month in the past and continuing to 5 months in the future (default view).

Ensure to scroll to the left (the past) as far back as the opening date of the oldest live exercise.

Ensure to scroll to the right (the future) as far forward as the final outcome to candidates date of the latest live exercise.

Below the timeline row, ensure each live exercise has its own row with the first column being the exercise reference number.

Ensure the reference number column should also be locked onscreen.

On hovering over the exercise reference, ensure the name of the exercise appears.

On each row, ensure a sequential list of activities appears, each in a separate lozenge.

Ensure the length of the lozenge aligns with the start and end dates of the activity.

Ensure one-day events, e.g. Eligibility SCC, are shown as a line.

On hover over the line, ensure the name of the activity appears.

Ensure the default sort of exercises is by launch date.

When you hover over the activity, ensure the full title and the start and end dates appear.

Ensure the activities to be included on each timeline are shown below, along with their colour-coding.

Risk - how likely is this to impact other areas?
🟢 No risk - this is a self-contained piece of work
Additional context
Demo:
https://github.com/user-attachments/assets/0f8f4f89-67f2-4819-905c-c26e17f8714c
Related permissions
Have permissions been considered for this functionality?

No permission changes required
Permissions have been added / updated. Details:

PREVIEW:PRODUCTION
can be OFF, DEVELOP or STAGING

@HalcyonJAC Thx for your work on this. Can you pls make two amends that will really support internal testing?

Amend the launch to close item - it should only cover the dates between when the application window opens and closes - usually about 2-4 weeks at the start of the exercise.
Create a preview url on production so that we can see how it looks with live data.

@HalcyonJAC Thx for your work on this. Can you pls make two amends that will really support internal testing?

Amend the launch to close item - it should only cover the dates between when the application window opens and closes - usually about 2-4 weeks at the start of the exercise.
Create a preview url on production so that we can see how it looks with live data.

@nickaddy

I guess it's because the configuration (e.g. open date, close date) of some exercises on Dev is not quite clean and correct.
Here is the preview URL on Production.

Chrs @HalcyonJAC. How do I navigate to the GC from the preview url?

@nickaddy It's in the submenu of exercises.

@HalcyonJAC The feedback from PO has been really positive 👍 Could you pls action the following points?

Add a full screen button to the page
Amend the link text under Exercises to 'Programme view' and have it appear under 'Archived exercises'
Explore the following: is it possible to hide the scroll bar and then navigate up/down/left/right by moving mouse whilst clicking and holding?

I had one other thought about whether we should add a colour key but that could be in a future iteration.

@nickaddy

A Full-screen button has been added.

The link text has been amended.

I can hide the scrollbar but it will look like below. Is it okay?

@HalcyonJAC Now you have added the control panel, I think it's fine as it is. Happy for you to merge and close and we can release on Monday :-)


Improve three german translations

Changed three translations:

collapseLabel from "Zusammenbruch" to "Einklappen" (Zusammenbruch is when you are ill and collapse on the ground)
expandLabel from "Expandieren" to "Ausklappen" (to match collapse.. it's the more colloquial term)
selectLabel from "Wählen" to "Auswählen" (Wählen is more like elect than select)

Yes, the translations apply for de-at as well. I added another commit to this request.

thank you @m-meier !

You're welcome :-) I've added a watch for the de.json file and will be happy to make further suggestions in the future.


Not possible to call xcode_select from Swift

Question Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Question Subject
It does not seem to be possible to call xcodeSelect in the Swift version of fastlane.
Question Description
Background:
From Ruby, xcode_selectrequires an unnamed parameter to be provided, you call it like:
xcode_select("/Applications/Xcode10.2.0.app").
This appears to be unusual in fastlane (to have an unnamed parameter) - usually there is either no parameters or they are named, e.g. build_ios_app(   scheme: "Release",   ... )
Unfortunately I don't think this is supported in Swift Fastlane.
The Problem:
In the Swift version of fastlane, the equivalent of xcode_select does not take any parameters at all: func xcodeSelect(){}. This means it cannot be used, as you cannot provide the Xcode path that is required by the underlying action.
Calling it logs the error:

Path to Xcode application required (e.g. xcode_select("/Applications/Xcode.app"))

I tried to modify the function myself to take a parameter, but digging into the code, the RubyCommand itself doesn't seem to support passing an unnamed parameter, so at that point I was stumped.
So I guess the way the Swift function stubs/bridging functions (not sure of term) are being generated are not supporting this edge-case

I agree.
Here is the code of the ruby action: https://github.com/fastlane/fastlane/blob/master/fastlane/lib/fastlane/actions/xcode_select.rb
A possible solution would probably be to add a real, optional parameter to the action that is used as a fallback (although I am not sure how compatible that would or could be with the current way it works). That could then create code in Swift that works...
But looking at the ruby code, the action only seems to set ENV["DEVELOPER_DIR"] and nothing else, is this correct? If so, you should be able to replicate that easily.

Haha good point, xcode_select itself is very simple - I'll look into just doing that manually from Swift then. Thanks for your help


Mod menu compatibility

Was wondering if you can add mod menu support?
tho i understand if there isn't enough to configure to justify adding support or if you're uninterested in adding support

The only option that would make sense for would be toggling the particles and maybe configuring their amount. I'll keep this in mind for future additions but it's low on my priority list right now.


Update client vendor

We're moving the sock path on macOS (into a place accessible to the sandbox)
Ran govendor update on all existing client/go:
govendor update github.com/keybase/client/go/auth
govendor update github.com/keybase/client/go/externals
govendor update github.com/keybase/client/go/gregor
govendor update github.com/keybase/client/go/kex2
govendor update github.com/keybase/client/go/libkb
govendor update github.com/keybase/client/go/logger
govendor update github.com/keybase/client/go/protocol/chat1
govendor update github.com/keybase/client/go/protocol/gregor1
govendor update github.com/keybase/client/go/protocol/keybase1
govendor update github.com/keybase/client/go/pvl

@strib

Looks good to me, thanks!


Example with page search

I have this in my code.
data = api.search.search(
text,thumbsize="small",page=3)
I always get the same result by changing the page.
What am I doing wrong?

Hi @InigoMarin, thx for interest to the project!
I just checked on the latest version the search engine with a snippet that looks correct.
from pornhub_api import PornhubApi

api = PornhubApi()
response = api.search.search("nice", page=3)
print(response.videos[0].title)

response = api.search.search("nice", page=1)
print(response.videos[0].title)
>>> Asian f*cking nice big tiits
>>> Thick Step Sis Weird Game - "Challenge you to not get a boner" S10:E5

Can I see the whole context of using search? It may well turn out that there is much less data than the requested page and api works strangely, always returning data “from the last page”

Hi @Derfirm, thx for your respond.
def search(text):
    data = api.search.search( text,ordering="mostviewed",period="weekly",)
    for vid in data.videos:
        print(vid.title,";",vid.url)

I have revised the code again and delete period in search.
The problem was mine.


Steps to Reproduce
const sketch001 = startSketchOn('XY')
|> startProfileAt([2, 1], %)
|> arc({
angleStart: 0,
angleEnd: 60,
radius: 1
}, %)
|> close(%)
|> patternCircular2d({
center: [0, 0],
repetitions: 5,
arcDegrees: 360,
rotateDuplicates: true
}, %)
const extrude001 = extrude(0.1, sketch001)
Expected Behavior
The circular pattern seems to work fine otherwise.
I have also noticed that defining an arc based on a desired start and end angle sometimes gives an unexpected section of the pie, which may be related to this bug
Screenshots and Recordings
No response
Desktop OS
Win11
Browser
Chrome
Version
v0.25.5
Additional Context
No response

simplified the reproduce steps a little bit. odd behavior as you change the arc angles / # of sketch elements. always seems to reproduce in/around the 4th quadrant.
const sketch001 = startSketchOn('XY')
|> startProfileAt([1, 0], %)
|> arc({
angleStart: 30,
angleEnd: 50,
radius: 1
}, %)

|> patternCircular2d({
center: [0, 0],
repetitions: 100,
arcDegrees: 360,
rotateDuplicates: true
}, %)


No CDN

Please add the option to connect via CDN

Sure, I'll look into it.
A current solution would be to just download the index.js or index.mjs from the dist folder on npm.

CDN option now available.
More info.


box_iou doesn't work with degenerated boxes

🐛 Bug
torchvision.ops.boxes.box_iou works only if (x1,y1) < (x2,y2) and calculates zero IoU otherwise

To Reproduce
Steps to reproduce the behavior:

Consider a hypothetical bbox array:

hboxes = torch.arange(5,5*25,5).view(-1,4).float(); hboxes

tensor([[  5.,  10.,  15.,  20.],
        [ 25.,  30.,  35.,  40.],
        [ 45.,  50.,  55.,  60.],
        [ 65.,  70.,  75.,  80.],
        [ 85.,  90.,  95., 100.],
        [105., 110., 115., 120.]])

As all the (x1,y1) are less than (x2,y2) in this case, the box_iou output with itself is a perfect identity matrix
from torchvision.ops.boxes import box_iou

box_iou(hboxes,hboxes)

tensor([[1., 0., 0., 0., 0., 0.],
        [0., 1., 0., 0., 0., 0.],
        [0., 0., 1., 0., 0., 0.],
        [0., 0., 0., 1., 0., 0.],
        [0., 0., 0., 0., 1., 0.],
        [0., 0., 0., 0., 0., 1.]])

However, if the said condition doesn't hold (x1y1 > x2y2)

hboxes[[2,4],:] = torch.cat([hboxes[[2,4],2:],hboxes[[2,4],:2]],dim=1); hboxes

tensor([[  5.,  10.,  15.,  20.],
        [ 25.,  30.,  35.,  40.],
        [ 55.,  60.,  45.,  50.],
        [ 65.,  70.,  75.,  80.],
        [ 95., 100.,  85.,  90.],
        [105., 110., 115., 120.]])

like the row 2nd and 4th in this case
The box_iou output is 0
box_iou(hboxes,hboxes)

tensor([[1., 0., 0., 0., 0., 0.],
        [0., 1., 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., 1.]])

Expected behavior
The coordinates should be handled beforehand and output for the 2nd case mentioned above should also be an Identity Matrix
Environment
PyTorch version: 1.6.0
Is debug build: No
CUDA used to build PyTorch: 10.2
OS: Manjaro Linux
GCC version: (GCC) 10.1.0
Clang version: Could not collect
CMake version: version 3.17.3
Python version: 3.8 (64-bit runtime)
Is CUDA available: Yes
CUDA runtime version: Could not collect
GPU models and configuration: GPU 0: GeForce 940MX
Nvidia driver version: 440.100
cuDNN version: Could not collect
Versions of relevant libraries:
[pip3] numpy==1.19.1
[pip3] pytorch-lightning==0.7.6
[pip3] torch==1.6.0
[pip3] torchvision==0.7.0
[conda] blas                      1.0                         mkl
[conda] cudatoolkit               10.2.89              hfd86e86_1
[conda] mkl                       2020.1                      217
[conda] mkl-service               2.3.0            py38he904b0f_0
[conda] mkl_fft                   1.1.0            py38h23d657b_0
[conda] mkl_random                1.1.1            py38h0573a6f_0
[conda] numpy                     1.19.1           py38hbc911f0_0
[conda] numpy-base                1.19.1           py38hfa32c7d_0
[conda] pytorch                   1.6.0           py3.8_cuda10.2.89_cudnn7.6.5_0    pytorch
[conda] pytorch-lightning         0.7.6                    pypi_0    pypi
[conda] torchvision               0.7.0                py38_cu102    pytorch
Willing to work
I'd be glad to fix this behaviour :slightly_smiling_face:

Hi,
Thanks for opening the issue! Sorry for the delay in replying, I just came back from holidays.
For my understanding, what do you mean by "unaligned coordinates"? Do you mean something like rotated boxes?
And if that's the case, how would you plan to solve this?

Sorry if the title isn't relevant. I might have misquoted the issue. I've tried to explain the scenario with an example.
For a given bounding box coordinates (x1,y1,x2,y2) where (x1,y1) being top left corner and (x2,y2) being the bottom right, the box_iou op implicitly expect the coordinates to be in the said order (x1 < x2 and y1 < y2). If the given condition doesn't satisfy, the calculations result in negative values and eventually clamped to 0.
However, I think the order shouldn't affect the calculations and we should bring the coordinates in the appropriate order before calculating the IoU. So, let's say the box coordinates have x1 > x2 or y1 > y2, we can simply swap these values before any calculation to ensure positive results all the time.

Oh, now I get your point.
I'm not sure if this is something that should be handled by box_iou (or nms for what is worth, as it also uses a variant of IoU computation). There is an explicit ordering in the box coordinates, and they should be respected. The case you are referring to is what I would call a "degenerate box".
In my view, this is something that should be handled on the user-side. Indeed, those degenerate boxes generally indicate that there are issues with the user modeling that should be handled somehow -- either by clamping to a valid size (like 0), always reordering the coordinates if they are degenerate, or something else.
What we could potentially do is to raise an error if the boxes do not satisfy the "non-degenerate" criteria, if that makes it easier for users to spot this situation.
Thoughts?

Yes. "degenerate boxes" is what it's also referred to as in generalized_rcnn. There's a TODO talking exactly about the issue I was concerned. We could extract that snippet in a separate function and use the same in both the places.
Providing an op to do the degeneration is also possible but I'm not sure if that's necessary.

I would be happy to accept a PR adding some checks to box_iou asserting that the boxes are not degenerate.
My only concern is that there might be downstream applications/users leveraging this current behavior (which sets the IoU to zero if the boxes are degeneraet), so adding an assert would break downstream users code.
cc @ppwwyyxx for thoughts if we should add an assert on box_iou to ensure that the boxes are non degenerate.

Adding the check sounds reasonable to me. However I often tend to not add a lot of them because python-side asserts may affect cuda performance https://github.com/pytorch/pytorch/issues/36853. Addressing this issue would make robust code without perf hit.

I opened https://github.com/pytorch/vision/pull/3425 to explicitly document the expected coordinate constraints.
I would suggest to wait for  pytorch/pytorch#36853 before introducing assert statements. I tend to think that as long as the documentation is good, we can choose to leave it up to the user to ensure that the input format is correct.


Please clear up old Incubator resources

Please remove the following directories:
https://dist.apache.org/repos/dist/release/incubator/druid/
https://dist.apache.org/repos/dist/dev/incubator/druid/

@sebbASF Sorry about that, I cleared out all of the contents, is there anything else to do to close this out?

Thanks. The directories are now empty; please also remove them.

should be good now i think

Yes, thanks for dealing with this promptly.


install script can't create scheduled tasks

this cmdlet doesn't like the -user parameter for some reason. I can't figure out how to get it to work in any capacity, so i just removed it. the task was still created with the correct user account. making a pr to remove the parameter and also run a later version of powershell.

fixed with your pr #12


Try the "Vector Store" example but hit error

Describe the bug
I took try of the "Vector Store" example by the import/examples/Vector Store icon.
I just fill in the api key of OpenAIEnbeddings and OpenAI, then upload a docx file and do the export.
when I try to run it, it raise exception of :
  File "/Users/lipeng/workspaces/github.com/logspace-ai/langflow/.langflow/lib/python3.10/site-packages/openai/api_requestor.py", line 687, in _interpret_response_line
    raise self.handle_error_response(
openai.error.InvalidRequestError: This model's maximum context length is 4097 tokens, however you requested 45374 tokens (45118 in your prompt; 256 for the completion). Please reduce your prompt; or completion length.
Exception ignored in: <function DuckDB.__del__ at 0x1553bf6d0>
Traceback (most recent call last):
  File "/Users/lipeng/workspaces/github.com/logspace-ai/langflow/.langflow/lib/python3.10/site-packages/chromadb/db/duckdb.py", line 387, in __del__
AttributeError: 'NoneType' object has no attribute 'info'

Browser and Version

Browser [e.g. chrome, safari]
Version [e.g. 22]

To Reproduce
Steps to reproduce the behavior:

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

Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

On the OpenAI component in the flow, try increasing your Max Token from 256.

The CharacterTextSplitter should have a chunk_size around 1000 to reduce the size of the docs returned by the vector store.

Where can I get the code of vector store example in python?


The default Dask serialization protocol fails when using Pennylane's QAOA optimizer.

Environment

Covalent version: 0.110.0
Python version: 3.8.13
Operating system: Linux/MacOS

What is happening?
The default Dask serialization protocol fails when using Pennylane's QAOA optimizer. Thus electrons that call the QAQA optimizer currently have to be executed with the Local Executor.
How can we reproduce the issue?
A workflow/electron that uses Pennylane's QAOA optimizer will fail execution when dispatched to the Covalent server.
What should happen?
Dask should properly serialize objects in electrons that use the QAOA optimizer.
Any suggestions?
No response

Does setting serializers=["pickle"] help?


Processing flow of MovieChat-1K_train

Hi!
Could you provide the processing script or procedure for MovieChat-1K_train dataset? We plan to fine-tune our model on this dataset and need to ensure that pre-training phase follows the same processing procedure.

For each video in MovieChat-1K_train dataset, we average sample 8192 frames with eva_clip_g, set the image_size to 224 and store in hdf5. Our feature extraction data is as follow:
import os
import cv2
import numpy as np
import torchvision.transforms as transforms
import torch
import einops
import h5py
from MovieChat.models.eva_vit import create_eva_vit_g

device = "cuda:0"

input_folder = 'our_train_data'

output_folder = 'feature_hdf5'

if not os.path.exists(output_folder):
    os.makedirs(output_folder)

subfolders = [f.name for f in os.scandir(output_folder) if f.is_dir()]
mp4_files = [f for f in os.listdir(input_folder) if f.endswith('.mp4')]

frames_to_read = 8192

transform = transforms.Compose([
    transforms.ToPILImage(),
    transforms.Resize((224, 224)),
    transforms.ToTensor(),
])

def init_vision_encoder(
    img_size=224, drop_path_rate=0, use_grad_checkpoint=False, precision="fp16"
):
    model_name = "eva_clip_g"
    visual_encoder = create_eva_vit_g(
        img_size, drop_path_rate, use_grad_checkpoint, precision
    ).float()
    visual_encoder.eval()

    return visual_encoder

image_encoder = init_vision_encoder().to(device)

count = 0
for mp4_file in mp4_files:
    if mp4_file.split('.')[0] not in subfolders:
        try:
            video_path = os.path.join(input_folder, mp4_file)

            cap = cv2.VideoCapture(video_path)

            total_frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
            frame_interval = total_frames // frames_to_read

            features_list = []

            frame_count = 0
            batch_size = 64
            piece_count = 0
            current_batch = []
            while frame_count < total_frames:
                ret, frame = cap.read()

                if not ret:
                    break

                if frame_count % frame_interval == 0:
                    frame_tensor = transform(frame)
                    frame_tensor = frame_tensor.unsqueeze(0).to(device)
                    current_batch.append(frame_tensor)

                    if len(current_batch) == batch_size:
                        batch = torch.cat(current_batch, dim=0).to(device)
                        with torch.no_grad():
                            features = image_encoder(batch).cpu()
                            output_dict = os.path.join(output_folder, os.path.splitext(mp4_file)[0])
                            if not os.path.exists(output_dict):
                                os.makedirs(output_dict)
                            output_filename = str(piece_count) + '.h5'
                            output_path = os.path.join(output_dict, output_filename)
                            with h5py.File(output_path, "w") as hdf5_file:
                                dataset_name = f"frames_{piece_count}"
                                print(dataset_name)
                                hdf5_file.create_dataset(dataset_name, data=features)
                            print(output_filename)
                            piece_count += 1
                        current_batch = []

                frame_count += 1

            if len(current_batch) > 0:
                batch = torch.cat(current_batch, dim=0).to(device)
                with torch.no_grad():
                    features = image_encoder(batch).cpu()
                    output_dict = os.path.join(output_folder, os.path.splitext(mp4_file)[0])
                    if not os.path.exists(output_dict):
                        os.makedirs(output_dict)
                    output_filename = str(piece_count) + '.h5'
                    output_path = os.path.join(output_dict, output_filename)
                    with h5py.File(output_path, "w") as hdf5_file:
                        dataset_name = f"frames_{piece_count}"
                        print(dataset_name)
                        hdf5_file.create_dataset(dataset_name, data=features)
                    print(output_filename)
                    piece_count += 1

            cap.release()

        except Exception as e:
            print(e)

However, we didn't use the extracted feature to run MovieChat. I think the main difference is about frame reading in inference.py and frame encoding in moviechat.py.
Hope this can be helpful to you! :)

@Espere-1119-Song
Thanks very much!

Hi @Espere-1119-Song !
I'm uncertain if I'm grasping this accurately. In the provided code snippet, the video frames obtained through cv2.VideoCapture are in BGR format, whereas the images passed into transforms.ToPILImage() should adhere to the RGB format, leading to potential inconsistency.

Thanks

We upload the raw videos of the training set :)


[Enhancement] Add meta incomplete check (#14246)

What type of PR is this：

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

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

If the bdb dir is cleared, the restarted fe will be a new leader, which will result in a cluster with two leaders, besides the new leader's meta is outdated because it only contains image data. We should avoid this operation.
But for the recovery scenario, if the bdb data is corrupted, we should allow users to load only the image data, so add a config param start_with_incomplete_meta to cover this case, but this is not the default behavior.
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

Bugfix cherry-pick branch check:

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

[x] 2.5
[x] 2.4
[ ] 2.3
[ ] 2.2

run starrocks_fe_unittest

run starrocks_fe_unittest


Fix validation of signature in schema so that we can send a meta-tx w…

…ith empty signature to query for fees

Codecov Report

Merging #355 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master     #355   +/-   ##
=======================================
  Coverage   64.12%   64.12%
=======================================
  Files          47       47
  Lines        3325     3325
=======================================
  Hits         2132     2132
  Misses       1193     1193

Impacted Files
Coverage Δ

relay/api/schemas.py
95.03% <100%> (ø)
: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 10a074d...078db77. Read the comment docs.

if the len is 65 bytes, then the signature isn't even a string, right? then it's a bytes object?

I can make it a Hexbytes if you like

Thanks, that makes much more sense. Sorry, that I didn't spot it on the first look at it.


Update index.md

[ ] I have read freeCodeCamp's contribution guidelines.
[ ] My pull request has a descriptive title (not a vague title like Update index.md)
[ ] My pull request targets the master branch of freeCodeCamp.
[ ] None of my changes are plagiarized from another source without proper attribution.
[ ] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

This is my last one pls accept all the shirt is very cool

Hi,
Thanks for this pull request (PR).
Unfortunately, we are marking this PR invalid for hacktoberfest. We believe it does not follow the recommended guidelines:

Quality Standards
In line with Hacktoberfest value #2 (Quantity is fun, Quality is key), we have provided examples of the quality standards we encourage. This applies mainly to beginners.

PRs that are automated e.g. scripted opening PRs to remove whitespace / optimize images.
PRs that are disruptive e.g. taking someone else's branch/commits and making a PR.
PRs that are regarded by a project maintainer as a hindrance vs. helping.
Something that's clearly an attempt to simply +1 your PR count for October.

Learn more at https://hacktoberfest.digitalocean.com/details


Resolve all typescript errors

Recommend this isn't just one big PR, especially if a few of us are working on it.


Use opam2 branch when pulling from opam-repository-mingw

There seem to be no users of all_ocaml_compilers in all the pipelines I've examined, which explains why this had not been caught before.

cc @dra27


include atomic in Linux and Android

In code for Linux, std::atomic_bool is required.
https://github.com/e-dant/watcher/blob/release/0.9.0/include/wtr/watcher.hpp#L1550
But <atomic> is not included.
It causes a compilation error.
This PR try to fix it.

LGTM, but can we merge into the next branch, and add the same line to: https://github.com/e-dant/watcher/blob/next/devel/include/detail/wtr/watcher/adapter/linux/inotify/watch.hpp#L11
Also, if it's easier, I usually edit the files in devel/include directly, then just run tool/hone > include/wtr/watcher.hpp, but editing both sets of files has the same effect.
TYVM

@e-dant
Thanks a lot for detail information.
I try to provide a simple patch for conan packaging only for 0.9.0.
I close this PR.
Looking forward to the next Watcher release!


Document the math power command

New to GLS for #hacktoberfest? Welcome!
Be sure to read the docs at glslang.org and play on aka.ms/gls-demo to familiarize yourself.

E.g. Math.pow(2, 3) gives 8.
Note: should also update docs/math.md.

@JoshuaKGoldberg, I'd like to try and take this.

Super!

As of #377, the command exists. It just needs to have a row added in docs/math.md now.

@JoshuaKGoldberg, I take this, of course. However I would ask for help about how to proceed: there are no docs about various math commands such as floor or min, there is just an example about how to call such native commands. that's why I didn't document it properly when working on #377, sorry about that.

Good point. There should probably be a second table in docs/math.md for these native commands. Could you add that as the documentation part of this issue? I'm thinking it should have the GLS syntax, C# equivalent, and Python equivalent.
Thoughts?

OK, I'll do it.


v22.7.14 do not use proxy CommonControllerContext::$_client

Current coverage is 99.54% (diff: 100%)

Merging #656 into master will decrease coverage by 0.45%

@@           master       #656   diff @@
========================================
  Files          29         29
  Lines         439        439
  Methods       111        111
  Messages        0          0
  Branches        0          0
========================================
- Hits          439        437     -2
- Misses          0          2     +2
  Partials        0          0

Powered by Codecov. Last update 7d91fe8...25238d6


The QSG has not been updated for the next release (3.1.0)

The QSG (https://apim.docs.wso2.com/en/next/getting-started/quick-start-guide/) is outdated. The next release is 3.1.0 and it seems like some parts of it are still as per version 3.0. The subscription based screens are outdated and the apictl add env command is wrong (v15 should be updated to v16).

updated.


Dark mode

This is missing a dark mode and it's burning my eyes! Please fix!

If you want to send a Pull Request with the CSS files for a dark theme I'd be happy to integrate some sort of Dark theme into the server scripts and push the changes to master. Unfortunately it's at the bottom of my list of things to do so don't expect me to add it myself any time soon.


[BUG] Installing 3.1.0 via pip fails due to "HTTP error 403 Client Error: VirusFound"

Describe the bug
Installing version 3.1.0 in Windows 10 via pip 23.0.1 failes with this error message:
cmd:  py -m pip install charset-normalizer==3.1.0
Collecting charset-normalizer==3.1.0
  ERROR: HTTP error 403 while getting https://files.pythonhosted.org/packages/ad/83/994bfca99e29f1bab66b9248e739360ee70b5aae0a5ee488cd776501edbc/charset_normalizer-3.1.0-cp311-cp311-win_amd64.whl (from https://pypi.org/simple/charset-normalizer/) (requires-python:>=3.7.0)
ERROR: Could not install requirement charset-normalizer==3.1.0 from https://files.pythonhosted.org/packages/ad/83/994bfca99e29f1bab66b9248e739360ee70b5aae0a5ee488cd776501edbc/charset_normalizer-3.1.0-cp311-cp311-win_amd64.whl because of HTTP error 403 Client Error: VirusFound for url: https://files.pythonhosted.org/packages/ad/83/994bfca99e29f1bab66b9248e739360ee70b5aae0a5ee488cd776501edbc/charset_normalizer-3.1.0-cp311-cp311-win_amd64.whl for URL https://files.pythonhosted.org/packages/ad/83/994bfca99e29f1bab66b9248e739360ee70b5aae0a5ee488cd776501edbc/charset_normalizer-3.1.0-cp311-cp311-win_amd64.whl (from https://pypi.org/simple/charset-normalizer/) (requires-python:>=3.7.0)

Connection to pypi goes via a proxy server.
Versions 2.x, 3.0.0 and 3.0.1 work fine.

To Reproduce
I think it is not as simple as installing 3.1.0 fails on every W10 system because of the small number of complains...
Migth have something to do with our anti virus solution checking the file.
Expected behavior
Installing the package should not fail.
Logs
If applicable, add console outputs to help explain your problem.
Desktop (please complete the following information):

OS: Windows 10.0.19045 Build 19045
Python version: 3.11.0
Package version 3.1.0

Hello,
While it is probably a false positive / falsely flagged by your protection I sent the report so it could be analyzed by experts. Action will be taken in case something come up.
Next time, use the security contact/procedure specified in the repo for anything related. https://github.com/Ousret/charset_normalizer/security/policy
Regards


Dependency against old FakeItEasy version?

I'm using:

AutoFixture 3.50.1
AutoFixture.AutoFakeItEasy 3.50.1
AutoFixture.Xunit2 3.50.1
FakeItEasy 2.2.0
Xunit 2.0.0

I'm writing tests that extend Xunit's AutoData attribute to add the AutoFakeItEasy customization, and then use abstract class types in the test method parameters. The expected behaviour is that FakeItEasy will handle the creation of the abstract type test doubles, however instead I'm getting the following exception:

Could not load type 'FakeItEasy.Creation.IFakeOptionsBuilder`1' from assembly 'FakeItEasy, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=eff28e2146d5fd2c'.

Stack trace:

at Ploeh.AutoFixture.AutoFakeItEasy.FakeItEasyMethodQuery.FakeMethod1.Invoke(IEnumerable1 parameters)
at Ploeh.AutoFixture.Kernel.MethodInvoker.Create(Object request, ISpecimenContext context)

Here's some test code to replicate this exception:
using Ploeh.AutoFixture;
using Ploeh.AutoFixture.AutoFakeItEasy;
using Ploeh.AutoFixture.Xunit2;
using Xunit;

namespace Tests
{
    public abstract class AbstractClass
    {
    }

    public class AutoFixtureBugTest
    {
        public class ArrangeAttribute : AutoDataAttribute
        {
            public ArrangeAttribute() : base(new Fixture().Customize(new AutoFakeItEasyCustomization())) { }
        }

        [Theory, Arrange]
        public void TestMethod(AbstractClass test)
        {
        }
    }
}

Looking through FakeItEasy's github repo, I noticed that there hasn't been a FakeItEasy.Creation.IFakeOptionsBuilder since version 1.25.3; the interface appears to have been renamed to IFakeOptions since version 2.0.0.
So this leads me to wonder, was the AutoFixture 3.50.1 nuget package built against a pre-2.0.0 version of FakeItEasy?

Since you're using different versions of the various libraries than the glue libraries were compiled against, have you tried adding the appropriate assembly binding redirects?

Was this ever fixed? I'm having the same problem with:
AutoFixture 3.50.2
AutoFixture.AutoFakeItEasy 3.50.2
FakeItEasy 2.2.0

After some investigation, this seems to be related to the way FakeItEasy 2 creates abstract base class instances. When testing compatibility with interfaces, everything seems to work, but apparently, it looks like this isn't the case for abstract classes.
Perhaps @blairconrad has some insights on this...

IOW, this works:
public class Class1
{
    [Fact]
    public void Test()
    {
        var fixture = new Fixture().Customize(new AutoFakeItEasyCustomization());
        var foo = fixture.Create<IFoo>();
        Assert.NotNull(foo);
    }
}

but this doesn't:
public abstract class AbstractClass { }

public class Class1
{
    [Fact]
    public void Test()
    {
        var fixture = new Fixture().Customize(new AutoFakeItEasyCustomization());
        var foo = fixture.Create<AbstractClass>();
        Assert.NotNull(foo);
    }
}

Thanks for thinking of me, @ploeh. Will investigate over the next day or so. (In UTC-4, so my activities are constrained right now).

I think I understand the cause.
Pre-2.0, FakeItEasy's Fake<T> class had this constructor:
public Fake(Action<IFakeOptionsBuilder<T>> options)

But in 2.0, we changed to
public Fake(Action<IFakeOptions<T>> optionsBuilder)

because IFakeOptionsBuilder wasn't quite the right name for this concept, and we wanted the name for elsewhere.
So, AutoFixture compiles against FakeItEasy 1.7.whatever, and it thinks that Fake<T> has the first constructor. Then it calls
return new Fake<T>(
    b => b.WithArgumentsForConstructor(parameters));

Thinking that b is an IFakeOptionsBuilder<AbstractClass>.
I expect our (my) testing with AutoFixture and FakeItEasy 2.0 passed because we just dropped FIE 2.0 into the AutoFixture sandbox, rebuilt the world, and so Ploeh.AutoFixture.AutoFakeItEasy.UnitTest.FixtureIntegrationTest.FixtureAutoFakesAbstractType passed.
I'm not sure what to do without reinstating AutoFixture.AutoFakeItEasy2.
One partial workaround would be to call new Fake<T>().in the case that we want to use the faked class's parameterless constructor. But that only helps with classes that have parameterless constructors. That's not particularly satisfying.

In case it becomes relevant, the type was renamed in FakeItEasy/FakeItEasy#520.

I'm not sure what to do without reinstating AutoFixture.AutoFakeItEasy2.

That's still an option. The code base is still around, and is being published with each new release (it's just unlisted in NuGet.org).

Yeah, I saw the code.
It occurred to me while I was out strolling that if we tried to locate the Fake<T> constructor by reflection and build up an appropriate b => b.WithArgumentsForConstructor(parameters) that way, we may be able to support 1.x and 2.x FakeItEasy without users having do anything.
I bet the code would be ugly. And I'm not entirely sure it's possible, but it might work.
Would you be interested?

The code base is still around, and is being published with each new release (it's just unlisted in NuGet.org).

So... right now users of FakeItEasy 2.0 and AutoFixture could probbaly grab the latest published AutoFakeItEasy2, a modern AutoFixture, a modern FakeItEasy, and get a working solution with the appropriate binding redirects? To tide them over until something better comes along?

probably grab the latest published AutoFakeItEasy2, a modern AutoFixture, a modern FakeItEasy, and get a working solution

Confirmed. You do get the annoying

warning CS0618: 'AutoFakeItEasyCustomization' is obsolete: 'The AutoFakeItEasy2 package has been retired; use the AutoFakeItEasy (without the trailing "2") package instead. Details: it's turned out that it's possible to enable AutoFakeItEasy to also work with FakeItEasy 2. From version 3.49.1, you should be able to use AutoFakeItEasy with FakeItEasy 2 by adding an assembly binding redirect. This enables us, the maintainers of AutoFixture, to maintain only one code base for FakeItEasy, instead of two. If this causes problems, please create an issue at https://github.com/AutoFixture/AutoFixture/issues. We apologise for any inconvenience this may cause.'

though.

At the moment you get those compiler warnings (which you can suppress with a pragma directive), but we could remove the [Obsolete] attributes from that library if we decide that that's the way to go.

No, not at all. I think it's a good solution.

Note that FakeItEasy 3.0.0 is due out soon, see https://github.com/FakeItEasy/FakeItEasy/issues/902

Gents, AutoFixture.AutoFakeItEasy2 is  not listed on nuget (including pre-releases) - how can I get this package?

Glad you got it, @pmcevoy. For anyone else reading it,  the package is listed, just no versions. They still exist, but have been delisted.
Version 3.50.2 is the latest, which depends FakeIteasy >= 2.0.0. and  AutoFixture >= 3.50.2.

@adamralph @blairconrad Hi guys.
In AutoFakeItEasy2 I see the following comment, but it is not quite clear how to do it. Could you please provide an example of bindingredirects which should be used to make it functioning?

"The AutoFakeItEasy2 package has been retired; use the AutoFakeItEasy (without the trailing "2") package instead. Details: it's turned out that it's possible to enable AutoFakeItEasy to also work with FakeItEasy 2. From version 3.49.1, you should be able to use AutoFakeItEasy with FakeItEasy 2 by adding an assembly binding redirect. This enables us, the maintainers of AutoFixture, to maintain only one code base for FakeItEasy, instead of two. If this causes problems, please create an issue at https://github.com/AutoFixture/AutoFixture/issues. We apologise for any inconvenience this may cause."

@oleksiishevchuk the general procedure is outlined
at Redirecting Assembly Versions.
However, note that this will not work for you if you fake classes instead of interfaces. You'll get the error listed in this issue. Sadly, until (unless) my fix for this issue is merged, if you want to use AutoFixture + FakeItEasy to fake classes, AutofFakeItEasy2 is the only game in town. :(

@blairconrad Ah. Thanks for the quick reply.. Yeah, I have an issue with abstract classes. Your comment is very valuable, at least it is clear that we should use AutofFakeItEasy2 for now. Is there any chance that your PR will be merged soon? or you don't aware about it?

@oleksiishevchuk, sadly I have no knowledge. It seems that merging would have to wait for a new AutoFixture governance model to be established. See #703 for more details.

Released as v3.50.3

Released as v3.50.3

@zvirja, are you on Twitter? If so, maybe you could tweet about this? 😃

@moodmosaic, @zvirja, http://twitter.com/autofixture seems to be available.
Over at FakeItEasy International, we've enjoyed having an account for the organization.

Congratulations on releasing a new version of AutoFixture 🎉

http://twitter.com/autofixture seems to be available.

In that vein, I (still) own autofixture.com, autofixture.net, autofixture.org, and autofixture.dk (because I'm Danish). If there was an organisation that could take ownership of those domain names, I don't mind handing them over.
Taking care of domain names requires the presence of some sort of legal entity, plus an organisation that can bear the (small) cost of domain name renewal.
As @jongalloway mentioned in another thread, the .NET Foundation could be an option.

@moodmosaic I'm registered there, but don't have any tweats so far..
It might be a good idea to create an official AutoFixture account like it was suggested above and use it for such announcements.
@ploeh That's cool that you have reserved that domains! ATM I don't know how we can use them, but later we might want to place some documentation there.. Unfortunately, currently I don't have enough time to investigate Net Foundation further and perform actions in that direction.. Probably, will allocate some time in future to see whether it's realistic and what are the benefits/requirements.

I've created a twitter account for us: https://twitter.com/autofixture. I'll post information about new releases there.
@AutoFixture/core could you please reach out to me via email (find it in the commit history) so I'll share the credentials with you?
@moodmosaic I see that your twitter account is alive, so it would be nice if you could care about our one as well (e.g. reply if needed). Is that possible? :)
@ploeh Could you please retweet the welcome tweet, so people will see it? 😉

@AutoFixture/core could you please reach out to me via email (find it in the commit history) so I'll share the credentials with you?

Having the credentials for the https://twitter.com/autofixture account is fine by me. @zvirja, IIRC, you have my email address already for this, so you're free to send them over via email.

@moodmosaic I see that your twitter account is alive, so it would be nice if you could care about our one as well (e.g. reply if needed). Is that possible? :)

For backup reasons, I'm fine storing the credentials in a safe place, but I don't have enough time to monitor the AutoFixture twitter account.
If someone with a question mentions the AutoFixture twitter account, then feel free to /cc me on Twitter (@nikosbaxevanis), and I'll try to reply if I have helpful answers.


Loosen argument type restrictions on a few methods

Restrictions on the argument types caused some MethodErrors in example files in an internal repo, and were more loose in a previous version of this package.
In general I find things work more smoothly within and between Julia packages if you let the argument types be pretty loose. I think the reason to be more specific with argument types is mainly for disambiguation of methods. There's no performance impact from widening the types; type inference is happy so long as the type returned from the method can be solely determined by looking at the input types when the method is called.

To give a little more insight, I had a Circuit{Substring} and a Vector{String}of port names and these didn't satisfy the method signature.


global name 'Sequential' is not defined(after add 'from keras.models import Sequential, Graph')

I used the next command:
print(type(model))
Then it return: 'keras.models.Sequential'
And I found that in visulize_util.py:  if type(model) == Squeential
Is  type(model) == Squeential?
or should I add 'from keras.models import Sequential, Graph' in  visulize_util.py.

I don't get what your problem is. Does
from keras.utils.visualize_util import to_graph
from keras.models import Sequential
to_graph(Sequential())

work for you?
And yes, indeed:
>>> type(Sequential()) == Sequential
True

I am also getting the same issue regarding the "Global name sequential is not defined even i am importing model from keras also I am getting the error. While using the keras model in  the code.
model = Sequential()


Build and execution errors in Service Fabric .NET 3.0 Services

@yatli Thanks for the quick responses. I am getting some build errors and some very strange execution errors in Service Fabric runtime. I'm still researching and will create a separate issue when I have the problem properly documented. I understand the iOS and Android reservations but really do need to run in the macOS environment.
Originally posted by @TaviTruman in https://github.com/microsoft/GraphEngine/issues/297#issuecomment-540293282

@yatli I'm still testing the migration of my native GE services into GE/SF integrations and running into a few (seamingy critical) issues. Here I am trying to build a .NET Core 3.0 Stateless/Stateful services and getting these warnings. I'm still gathering documentation so I will come back to you item and update it.
Severity	Code	Description	Project	File	Line	Suppression State
Warning	NU1701	Package 'GraphEngine.ServiceFabric.Remoting 2.0.10057' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework '.NETCoreApp,Version=v3.0'. This package may not be fully compatible with your project.	IKW.GraphEngine.TripleStoreRemotingClientService	I:\IKW-Azure-GE-SF-Dev\IKWSemanticTripleStoreGraphEngineSFApp\IKW.GraphEngine.TripleStoreRemotingClientService\IKW.GraphEngine.TripleStoreRemotingClientService.csproj	1

we should upgrade Microsoft.ServiceFabric.Services.Remoting to netstandard2.0 compatible version

Yes, I've made the change locally and things have improved; there's another item to update and we should be golden.


Trigger new workflow

When a new workflow request is received (see #51) the workflow manager component is notified and should begin processing a new workflow.
Implementation Notes

A workflow execution instance should be created for each registered workflow which matches the AE title of the input payload. This includes workflows that specify that AE title, as well as workflows that on specify any AE title.
If the payload notification contains specific workflow IDs, those workflows should be executed-and no others.
Each workflow execution instance should be persisted to disk.
After the workflow has been created and persisted to disk, the workflow manager should determine the first task to be executed and add it to the task manager's queue to be processed asynchronously.
Only after the workflow has been persisted to disk and the task creation event added to the task manager's event queue should the payload listener be given a success response.
For each workflow, a namespaced area should be created within the storage bucket of the payload. This is where artefacts of that specific workflow will be saved.
All workflow instances should be stored in the DB as part of a single transaction. This means that if we can't save a specific workflow instance, the others shouldn't be saved either. This is to avoid data duplication when the event is picked up for second time by the payload listener.
Workflow creation should be idempotent-if we have more than one workflow to create, and the 2nd one fails, the whole event will be retried-we need to make sure that recreating the first workflow won't lead to any undesired side effects. If possible, we should refrain from recreating it altogether, for example by checking its status in the database if it already exists.

Acceptance criteria

Given a registered workflow for a specific AE title, when a payload is received from that AE title then that workflow should be triggered.
Given a registered workflow without a specified AE title, when a payload is received from any AE title then that workflow should be triggered.
Given multiple workflows match a specific payload, when that payload is processed, both workflows should be created and launched.
Given multiple workflows match a specific payload and launching the second payload failed, when the event is processed for second time then the first workflow shouldn't be started for second time.
Given a payload is received which contains specific workflow IDs, when it is being processed only those workflows should be launched, regardless of any other workflows that may match it based on AE title.

Database schema
For each workflow instance, a document such as the below should be created:
{
    'id': string - a newly generated unique ID,
    'workflow_id': reference to the workflow definition,
    'payload_id': string - payload ID as received from the informatics gateway,
    'start_time': datetime,
    'end_time': datetime,
    'status': string,
    'bucket_id': string,
    'tasks': [
        {
            'execution_id': string,
            'task_id': string,
            'start_time': datetime,
            'end_time': datetime,
            'previous_task_id': string,
            'status': string,
            'input_directory': string,
            'output_directory': string,
            'metadata': {}
        }
    ]
}

Please note that for the scope of this ticket, the tasks array will be empty- it will be populated as part of running the workflow.

If a workflow request (with a single payload) matches multiple workflows, do you need to make multiple copies of the payload, one for each workflow/namespace?

@joshliberty in the flow chart, can you explain the line "Add task to dispatch queue"? Also the last "Acknowledge" flow line too? Is there a high level design system architecture that shows how all the components interact? Thanks

I am very much in favor of drafting a high-level arch diagram to facilitate the discussion. A visual = 1000 words. As we make decisions, we can modify. It can be a collaborative effort so @joshliberty doesn't do all the work. WDYT?

Thanks @joshliberty I think we discussed this in our last meeting with respect to invoking a new task. If the Task Manager and Workflow Manager are part of the same process (ie in the same Pod/Container) then it does not make sense to use pub/sub for communication.
Also for the "Acknowledge", what if you have multiple instances of Workflow manager and two Workflow managers read the same message. I say that because you are sending the "Acknowledge" message for RabbitMQ to clear a message after a long list of tasks.

Babar, Jack, as discussed in our meeting – for the purpose of this ticket you can make the following assumptions:

The first task in the workflow (input-router, where the type is null) is not ready task – it only serves as a logical step for the workflow manager, so that destination conditions can be attached to it to route the initial payload
For the scope of this ticket, we don't need to support evaluators. Any task destination should be executed. There is a separate ticket to support evaluators.
For the sake of keeping this ticket at a manageable size, if it's more convenient you can extract out the bit about creating temporary MinIO credentials

Example mapping outcomes for this ticket


feat: automatically generate manifests using ap4k.

This pull request uses ap4k in order to genrate the manifests.
For local development, a simple:
  mvn clean install

will do the trick!
To add an external docker registry to the mix, you can:
mvn clean install -Dap4k.docker.registry=quay.io

thanks for this @iocanel , will try and let you know what I feel. On the outset it looks very cool.

Currently, in the tutorial we are just providing the Docker images already produced so we don't have to build the Docker image every time.

We should use dekorate.io as that uses ap4k
Get Outlook for iOShttps://aka.ms/o0ukef

From: Alex Soto<EMAIL_ADDRESS>Sent: Monday, October 7, 2019 2:32:18 PM
To: redhat-developer-demos/istio-tutorial<EMAIL_ADDRESS>Cc: Kamesh Sampath<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [redhat-developer-demos/istio-tutorial] feat: automatically generate manifests using ap4k. (#191)
Currently, in the tutorial we are just providing the Docker images already produced so we don't have to build the Docker image every time.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fredhat-developer-demos%2Fistio-tutorial%2Fpull%2F191%3Femail_source%3Dnotifications%26email_token%3DAAHHMIN5SNVNOMS76QXEZTLQNL3JVA5CNFSM4G2RRPHKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAPQ4JA%23issuecomment-538906148&data=02|01||1fa22312ad7940a3667f08d74b050ee3|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637060357401714518&sdata=rRzuJ5MOfYLWnkF7CxWE8WGlYNuYS5OiEJp3EKvyJks%3D&reserved=0, or mute the threadhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAAHHMIK34A7CW2U6P3PESGTQNL3JVANCNFSM4G2RRPHA&data=02|01||1fa22312ad7940a3667f08d74b050ee3|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637060357401724529&sdata=IEfDDeMPXsAZvpsQN1x7M8vp7e0JScGRSNpUvyptfyk%3D&reserved=0.


feat: ban a peer if it's still in IBD with a very high probability

The IBD status judgement condition is copied from CKB.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (86865db) 71.39% compared to head (d180c49) 71.45%.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #171      +/-   ##
===========================================
+ Coverage    71.39%   71.45%   +0.05%
===========================================
  Files           25       25
  Lines         6479     6492      +13
===========================================
+ Hits          4626     4639      +13
  Misses        1853     1853

Flag
Coverage Δ

unittests
71.45% <100.00%> (+0.05%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Remove buildbot_8 and certain dependencies

Motivation for this change
We now have a newer version and the older version didn't work anymore
anyway because it depended on sqlalchemy7 which was itself broken,
because it depended on an older version of sqlite.
cc @nand0p @copumpkin @lancelotsix

Maybe just drop the commit e161df3 since the tag it adds is removed with the entire derivation just after


Enable telemetry opt-out #254

Users can opt out of telemetry by setting the environment variable CREWAI_TELEMETRY_OPT_OUT
Fixes:

#254
#241
#372

This branch has been published to https://pypi.org/project/crewai-clean for testing.

As an software architect within a bank which has tons of firewall, such requests for enabling firewall will never get approved , without opting out feature, we will get errors in logs, and we will have a sub standard experience. Unfortunately for us, it would be a no go with crewai if we don't have an opt out of telemetry.

+1 on disabling telemetry for running in airgapped environments, any updates on this?

@joaomdmoura Can you have a look at this one, please?
Note in an enterprise environment this is a blocking point

@CodiumAI-Agent /review

PR Review 🔍

 ⏱ Estimated effort to review [1-5]
2, because the PR is small and the changes are straightforward, but it requires careful consideration of the environment variable handling and its impact on the telemetry system.

 🧪 Relevant tests
No

 ⚡ Possible issues
Possible Bug: The environment variable check os.environ.get("CREWAI_TELEMETRY_OPT_OUT", False) will not work as intended because os.environ.get will return a string and not a boolean. This could lead to the telemetry not being disabled even if the environment variable is set.

 🔒 Security concerns
No

 Code feedback:
relevant filesrc/crewai/telemetry/telemetry.py
suggestion

Consider explicitly checking for a specific string value to determine if telemetry should be disabled. This ensures that setting the environment variable to any string will not unintentionally disable telemetry. For example, you could check if the environment variable is set to 'true' or '1'. [important]

relevant lineif os.environ.get("CREWAI_TELEMETRY_OPT_OUT", False):

We are really loving this framework but this feature is important. will this be making it to a release soon. Must have as most of the enterprises will have approve a tool without opt-out.

This is a required option in order to gain enterprise adoption. For the future of crewAI I hope this gets approved by project owners.

I'm still keen to see this merged.


Improve iceberg commit logic to so that we can avoid restarting streaming job when commit conflicts happens.

According to user's comment, paimon supports concurrent writes, but it doesn't work well when facing committing conflicts, which may lead to restart of flink streaming job.
We should try to avoid job restarting when facing committing conflicts.

duplicated with https://github.com/risingwavelabs/risingwave/issues/18003


Getting Stated

I loaded the test example onto my site, the page looks identical to the demo from https://castjs.io/, however I am getting an error
Casting is not supported in this browser. Do I need to setup something on my side (recieve id?) before the casting becomes available - I am running this in Chrome Version 87.0.4280.88 (Official Build) (64-bit) on windows 7.

Are you using a custom receiver?

Are you using a custom receiver?

You might need to enable the casting feature in your browser.
        if (navigator.userAgent.toLowerCase().indexOf('firefox') > -1){
            return "Firefox: Please enable casting, click here: https://googlechromecast.com/how-to-cast-firefox-to-tv/"
        }
        if (navigator.userAgent.toLowerCase().indexOf('opr/') > -1) {
            return "Opera: Please enable casting, click here: https://googlechromecast.com/how-to-cast-opera-browser-to-tv-using-google-chromecast/"
        }
        if (navigator.userAgent.toLowerCase().indexOf('iron safari') > -1) {
            return "Iron Safari: Please enable casting, click here: https://googlechromecast.com/how-to-cast-opera-browser-to-tv-using-google-chromecast/"
        }
        if (navigator.brave) {
            return "Brave: Please enable casting, click here: https://googlechromecast.com/how-to-cast-brave-browser-to-chromecast/"
        }
        ```


Update gsudo.json

Make bash and pwsh scripts accessible

It exists already.

Hey, sorry for pinging again but I think my description wasn't very clear.
The gsudo archive now contains bash and powershell scripts, which need to be in your path so that gsudo works as expected from everywhere - powershell, git bash, cygwin and WSL.
The current method just creates a shim to the gsudo.exe binary and will cause unexpected results in WSL/cygwin.
More info here and here.

Updated.


chore: bump Microsoft.Extensions.* from 8.0.0 to 8.0.1

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (132e143) 73.02% compared to head (d86a43d) 73.02%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #787   +/-   ##
=======================================
  Coverage   73.02%   73.02%
=======================================
  Files         260      260
  Lines        3355     3355
  Branches      573      573
=======================================
  Hits         2450     2450
  Misses        752      752
  Partials      153      153

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Converter refactor

The current Unity implementation of RecursiveConverter was written with only .NET objects in mind
And doesn't properly convert custom object models.
The main issue we were facing is with IFC imported geometry.
I have refactored the RecursiveConverter class to operate more similar to how it does in our Unreal Engine connector.
I also think it's a much cleaner approach (but happy to discuss this)

@haitheredavid I would appreciate if you could take a look at this change (at some point, no rush), since this one might cause you some conflicts that you'd rather I dealt with.

@JR-Morgan thanks for the tag - I did a quick a look and the overall logic seems pretty similar. The only thing I would point out is the use of RecursiveConverter as a MonoBehaviour. This component is only used from within the Receiver component, while the Sender component   handles all of that tree behavior, so it feels a bit weird to have another mono object just for handling those commands but this could just be my personal approach to unity. I tend to lean towards only using mono objects if that component needs to relay on unity's runtime methods (i.e. Start, Update, OnEnable, etc.)

@haitheredavid I'm tempted to combine the ToSpeckle and ToNative recursive conversion into this class. I think that would be nice in consolidating shared behaviour.
I kept it a monobehaviour for now, because I'm thinking we might need to expose some properties/settings for conversion. But if we don't end up doing this, then I see no reason to keep it as a monobehaviour 😁

Closed as changes have been incorporated in #75


clh: Remove or document kernel hypervisor specific command line options.

Which feature do you think can be improved?
Kata clh driver has has the next options while they describe what does, does not explain
why is used.
 {"panic", "1"},         // upon kernel panic wait 1 second before reboot
 {"no_timer_check", ""}, // do not check broken timer IRQ resources
 {"noreplace-smp", ""},  // do not replace SMP instructions

I will close this issue, in general is not an issue not have it documented.


Test 3 node cluster running for multiple hours

Write data against a 3 node cluster for multiple hours and ensure there aren't any memory leaks or it doesn't go down.

related issues:
https://github.com/influxdb/influxdb/issues/1278
https://github.com/influxdb/influxdb/issues/1228
https://github.com/influxdb/influxdb/issues/941

Going to close this as we're actively doing this already on the 0.9.0 release.


[WIP][br] add APIs for adding OMR via platform generated RA

This PR adds the following new APIs

otBorderRoutingAddPrefixByRouterAdvertisement
otBorderRoutingSetAcceptingRouterAdvertisementEnabled
otBorderRoutingIsAcceptingRouterAdvertisementEnabled

They are used to support the DHCPv6 PD on Thread Border Routers. On a typical OS, the DHCPv6 Client of the platform network stack will request a IPv6 subnet via DHCPv6-PD, then invoke the daemon for sending router advertisements on the given interface.
With this PR, the RA will be catched by the processTransmit in netif.cpp, which will then pass the message to otBorderRoutingAddPrefixByRouterAdvertisement, RoutingManager will then add the prefix according to the PIO in the router advertisement, and take care of the lifetime of the prefix added.

Close initial PoC PR for PD


[MenuItem] Center MenuItem text vertically in Internet Explorer

Closes #17323

[x] I have followed (at least) the PR section of the contributing guide.

It looks like after the change the element has minWidth of 48, but then adds padding top and bottom of 8 from ListItem. I recommend adding paddingTop: 0, paddingBottom: 0 on MenuItem but will await further instructions

@damir-sirola I push changes with the best alternative I can think of. I think that we need to keep the padding values for the dense support.

@oliviertassinari I think this change will cause way more problems than it fixes. I've seen people (in StackOverflow questions) put all sorts of things in MenuItems and anything taller than a single line of text will now get vertically cut off.
Before: https://codesandbox.io/s/wrapping-menuitem-z0utn
After: https://codesandbox.io/s/wrapping-menuitem-97ndb

@ryancogswell Do you have a recommendation on the used solution?
On a different note, it seems that we are not using the right typography variant (body1 instead of body2): https://material.io/components/menus/#specs. I can confirm with most of the Google products, they use a font size of 14px in all the menus, on Desktop. On mobile, they seem to use 16px. So I would propose the following fix a 2-in-1:
diff --git a/packages/material-ui/src/MenuItem/MenuItem.js b/packages/material-ui/src/MenuItem/MenuItem.js
index f62a2cc9a5..a824e3b3aa 100644
--- a/packages/material-ui/src/MenuItem/MenuItem.js
+++ b/packages/material-ui/src/MenuItem/MenuItem.js
@@ -7,26 +7,27 @@ import ListItem from '../ListItem';
 export const styles = theme => ({
   /* Styles applied to the root element. */
   root: {
-    ...theme.typography.subtitle1,
+    ...theme.typography.body1,
     minHeight: 48,
-    paddingTop: 4,
-    paddingBottom: 4,
+    paddingTop: 6,
+    paddingBottom: 6,
     boxSizing: 'border-box',
     width: 'auto',
     overflow: 'hidden',
     whiteSpace: 'nowrap',
+    [theme.breakpoints.up('sm')]: {
+      ...theme.typography.body2,
+      minHeight: 'auto',
+    }
   },
+  // To remove in v5
   /* Styles applied to the root element if `disableGutters={false}`. */
-  gutters: {
-    paddingLeft: 16,
-    paddingRight: 16,
-  },
+  gutters: {},
   /* Styles applied to the root element if `selected={true}`. */
   selected: {},
+  // To remove in v5
   /* Styles applied to the root element if dense. */
-  dense: {
-    minHeight: 'auto',
-  },
+  dense: {},
 });

small screens

large screens

I expect this change to be controversial, the specification multiple contradictions around what the correct size should be: https://material.io/components/menus/#specs. While the pull request started as an effort to solve IE 11 support, it has grown to something with a bigger scope. If further changes are required, we have a good week to do them.
So far, the main motivation of the change is to better match the design of Google products, I have benchmarked the changes with:

gmail (height: 32px, font-size: 14px)
google contact ()
youtube ()
react-select ()
select2 ()
bootstrap ()
Bulma ()
blueprint ()
Antd ()

I hope the tradeoff is acceptable. We have height: 36px, font-size 16px.


fix(kpagination): remove dynamic size props [KHCP-12680]

Summary
Addresses: https://konghq.atlassian.net/browse/KHCP-12680
KPagination is throwing hydration errors in SSR mode because of conditional props dependant on screen size. Instead of relying on js for that, add media queries to override certain styles on large and small screens.

Should you also adjust the popover styles on smaller screens for pagination?

Should you also adjust the popover styles on smaller screens for pagination?

We don't really do that anywhere. I think it's a good idea but if we were to do that I suggest that we do it in a separate ticket.


Remove skip tls verify option and add option to minimum version of SS…

…L supported
OPS is requiring TLS 1.2. So add the option to set the minimum version of SSL.
Remove the option to skip TLS verify, which was for development purpose in the past.

[x] @johnny-lai

lgtm

@johnwu96822 tested against local copy of coupa_travel_booking_service authenticating against sand-dev. Both valid and invalid tokens gave the correct results of 200 and 401 respectively.

👍

[lockit v4.9.3] merged via Lockit CLI on 2020-10-02 15:43:18.75624 -0700 PDT m=+4.028982226


FR: please co-publish on Open VSX Registry

Please add this useful extension to the Open VSX Registry.
Details on the publishing can be found at https://github.com/eclipse/openvsx/wiki/Publishing-Extensions.
A bit of explanation:
Open VSX Registry is the default extension provider endpoint for the free build of vscode VSCodium and Eclipse Theia, as well as browser versions like the one on GitPod. It would be nice to have this extension be directly published to a free vsix repository instead of only the Microsoft Marketplace with its restrictions.
You could also use a GitHub action that allows publishing to Open VSX and the MS market place, HaaLeo/publish-vscode-extension does this.

friendly ping after the holiday break :-)

Any updates on this?

Apologies, I was putting this off. I will bump this up in my todo list :)

The extension is now available on Open VSX: https://open-vsx.org/extension/gediminaszlatkus/ctags-companion Seems to work OK on VSCodium.
I will also make sure to publish all future releases there as well.

Thanks.


Create sitemap / RSS

Like vitepress, build an items array from the list of pages, with a transformItems hook that allows the user to modify the array before passing it to https://www.npmjs.com/package/sitemap (with options).
Ref. https://vitepress.dev/guide/sitemap-generation
It seems sensible to adopt the same approach here.
To build a sitemap, we need to know the full URL (including domain name and subdirectory, ref. #42).

#843 removed client-side access to the search index.
It was the closest thing we had to a sitemap.xml/rss list of contents, but now only search.js knows where this file can be found—which is for the better, since it's not supposed to be a public API. But it means a renewed urgency to have a public list of the advertised pages. (By advertised I mean listed in pages or indexed.) As an example use case, I had made a little game on the home page of my pangea website which was using the minisearch.json dataset to display the count of pages and a shuffled random selection of 5 pages to explore.
For the game in question I can replace this with an ad hoc data loader, but it feels like it belongs to this more generic question.

I think we should transpile import.meta.resolve(…) (in addition to import(…)).
Then you could say fetch(import.meta.resolve("observablehq:minisearch.json")) to load the search index.
Also this would allow you to register additional files to download.

I wrote a postbuild script to add a simple sitemap to pangea, with the proper headers that reference it.
https://github.com/Fil/pangea/blob/e179717808c66526d5e17a933245f7fe6b91851b/package.json#L7-L8
https://github.com/Fil/pangea/blob/e179717808c66526d5e17a933245f7fe6b91851b/observablehq.config.ts#L101
It would still be nice to have an easier method to push static/public files, but I think we don't have to have native support for RSS or sitemaps (a helper would be nice, but it can all be done in userland); this issue can now be folded under #169.

For more discussion, see https://github.com/observablehq/framework/discussions/1199#discussioncomment-10561389


star ranking not working

https://cs.bazel.build/search?q=ImmutableList++lang%3Ajava+r%3Agithub&num=50
this should probably put gauva at the top, but apache/felix is the number one result.

guava: Rank 7726
felix: Rank 7014

analysis: guava has so many references to ImmutableList that we bail before finding the interesting match.
This should really be addressed by https://github.com/google/zoekt/issues/5


Nested column collapse issue frontend

Affected module
UI
Describe the bug
while expanding or collapsing one nested column other columns also get expanded or collapsed
https://user-images.githubusercontent.com/39544459/190417869-b7b63a2e-3e7c-413d-b607-886cc9de6b90.mov

Providing key to data will resolve this issue