us-nj-cape_may added conform

My first time adding a conform object. Let me know if there are any errors or issues.

Is conform.accuracy supposed to be there. That seems to be where the test is failing.

@davidchiles I attempted to add accuracy data in #888, which also caused Travis to fail.  Although it's requested in Contributing.md, it doesn't appear to be currently utilized or even supported.

Yes, I don't know where the accuracy attribute came from but it shouldn't
be there. If someone could write a PR that removes it from contributing.md
that'd be helpful.

@iandees This was @ingalls in Sha: 97890eae99af90070322e9f92e0ca2a33cd82b19 but the proper tests were not added to sources.json.  I'll let him weigh in.

We are not using accuracy in machine either.

This is intended to make future conflation easier. We are pulling from more and more sources that have overlap and building tools to dedup and clean up the data into a single dataset are going to be needed. By having a known accuracy level it makes the dedup process easier as duplicate addresses in the same geographic proximity can be deduped based on the accuracy level.

@ingalls then we need to make the unit tests recognize it so the Travis build doesn't fail when people try to add it.


Users can't determine what kind of DateTime is included

For me, this is for building on top of #111 to properly encode the data for validation, but I imagine this would be generally useful.  toml_edit::DateTime is pub but not exposed in a pub mod.
Should we have toml_edit::DateTime or split out the cases directly in toml_edit::Value?  I lean towards the latter as I'm unsure the value for having an extra layer but that extra layer requires a lot of verbosity to access.

For now, in my branch, I will make it pub as-is since that is the least disruptive (no breaking change).  We can always change it later.


Fix typo in teams tab get sample

Fixed sample that referenced the teams tab list instead of teams tab get

Merged manually. Thank you! 👏


There is no emqx-operator 2.2.24 image

See https://github.com/emqx/emqx-operator/pkgs/container/emqx-operator
Version 2.2.24 of the helm chart tries to pull image emqx-operator:2.2.24 which does not exist.

Thanks for the reminder, now ghcr.io/emqx/emqx-operator:2.2.24 has been pushed


Can't use unwrap on draw result

Version of embedded-graphics in use (if applicable): 0.6.2
Target: real hardware
If using real hardware: ST7920

Description of the problem/feature request/other
When I use unwrap() on result of draw call (for Text), the compiler complains:
error[E0599]: no method named `unwrap` found for enum `core::result::Result<(), <impl DrawTarget<Rgb565> as embedded_graphics::DrawTarget<Rgb565>>::Error>` in the current scope
  --> src/ui/framework/test.rs:19:10
   |
19 |         .unwrap();
   |          ^^^^^^ method not found in `core::result::Result<(), <impl DrawTarget<Rgb565> as embedded_graphics::DrawTarget<Rgb565>>::Error>`
   |
   = note: the method `unwrap` exists but the following trait bounds were not satisfied:
           `<impl DrawTarget<Rgb565> as embedded_graphics::DrawTarget<Rgb565>>::Error: Debug`

If I don't use unwrap(), then compiler warns about unused result.
Test case (if applicable)
use embedded_graphics::{
    fonts::{Font6x8, Text},
    pixelcolor::Rgb565,
    prelude::*,
    style::{TextStyle, TextStyleBuilder},
};

fn render(drawing: &mut impl DrawTarget<Rgb565>) {
    // Create a new text style
    let style = TextStyleBuilder::new(Font6x8)
        .text_color(Rgb565::YELLOW)
        .background_color(Rgb565::BLUE)
        .build();

    // Create a text at position (20, 30) and draw it using the previously defined style
    Text::new("Hello Rust!", Point::new(20, 30))
        .into_styled(style)
        .draw(drawing)
        .unwrap();
}

DrawTarget doesn't require the associated Error type to implement Debug. You could add an additional trait bound to get the code to compile:
fn render<T>(drawing: &mut T)
where
    T: DrawTarget<Rgb565>,
    T::Error: core::fmt::Debug,
{ ... }

or use Text::new()....draw(drawing).ok().unwrap(), which removes the requirement of having a Debug impl, but discards any additional error information.
But if this code part of some library, which the path in the error message suggests, a better solution would be to pass the error to the caller of render so it can be handled elsewhere:
fn render<T: DrawTarget<Rgb565>>(drawing: &mut T) -> Result<(), T::Error> {
    // Create a new text style
    let style = TextStyleBuilder::new(Font6x8)
        .text_color(Rgb565::YELLOW)
        .background_color(Rgb565::BLUE)
        .build();

    // Create a text at position (20, 30) and draw it using the previously defined style
    Text::new("Hello Rust!", Point::new(20, 30))
        .into_styled(style)
        .draw(drawing)
}

Thanks, these are viable solutions but they don't fit my case. I would like just to panic when there is an error, with minimal code :)
Why can't the DrawTarget::Error just implement Debug? Are there any downsides?

Thanks for the hints, I'll use is_ok() and then panic if it's not, though it's two additional lines of code :)
Out of curiosity now, why not make Error to require Debug directly in its declaration in DrawTarget?

Thanks for the hints, I'll use is_ok() and then panic if it's not, though it's two additional lines of code :)

Why don't you use .ok().unwrap(), which is only 5 characters longer?

Out of curiosity now, why not make Error to require Debug directly in its declaration in DrawTarget?

We don't use Debug internally and by adding it as an additional requirement we would limit the types that can be used as Error. Traits in the standard library do the same, for example the FromStr trait: https://doc.rust-lang.org/src/core/str/mod.rs.html#76-106. If an application requires an additional trait bound it's normally easy to add that but it's more complicated to work around a missing trait impl if the error type is defined in another crate.

Thanks for the hints, I'll use is_ok() and then panic if it's not, though it's two additional lines of code :)

Why don't you use .ok().unwrap(), which is only 5 characters longer?

ok() consumes an error and I want to panic on it.

ok() converts an error to Option::None and calling unwrap on that will panic.

Ah, right! You live and learn :)
Thanks!


Add star-half icon

Preview

Maybe the an unclosed half star looks better 🤔. What do you think?

@mittalyashu Can you change this to open star, like we discussed in discord?


Add istanbul ignore pragmas

Unless someone objects, I'm just going to merge this because it literally doesn't change the code at all. I didn't pragma away all the error checks, just the ones that are sanity checks that we're not going to actually hit (like trying to render a <Route> or something).

what do we need this for?

Before: https://coveralls.io/builds/4009011/source?filename=modules%2FRoute.js
After: https://coveralls.io/builds/4009276/source?filename=modules%2FRoute.js
These mark code paths that intentionally aren't covered in our test suite, and that should be disregarded for coverage calculations. It's important to be conservative with them, but they can make coverage information more useful by removing false negatives, per the example above on Route.js.
More details at: https://github.com/gotwarlost/istanbul/blob/master/ignoring-code-for-coverage.md

Although that deprecation ignore is a little bit iffy - I assumed we didn't want to cover deprecations in testing (because we don't currently cover them). React-Bootstrap for example does, though.


conda-forge package

I'm working on the conda-forge packaging, here are some feedbacks:

There is a missing dependency in setup.cfg : pyarrow (used in zcollection.indexing.abc).
Using setuptools_scm to dynamically define the version from git tags forces us to use pypi as source. The package cannot be build from a github archive which does not contain .git information.
I think that not having the version number writen in pyproject.toml forces setuptools to import zcollection during the packaging build step which forces us to add all the run dependencies to the host part of the meta.yaml.

The conda-forge PR is here.
@fbriol : Could you post a comment on this PR in order for me to check the following item of the check-list:

[x] GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.

I modified the setup.cfg file to read the version number directly from the module.


Excel layout issue for programs not grouping indicators by rf level

Best I can tell, this Excel layout issue has to do with the fact that for programs not organizing indicators by rf level, we include an additional IPTT column with the OldLevel.
To replicate the issue, run a Recent Progress IPTT on the program Ann Viv Ansanm, that is not using the results framework. Export to Excel and unhide all disaggregation rows. Also try this with various combinations of columns hidden.
Note the alignment of the disaggregation rows.
Here are some examples of what I'm seeing:

@jennyhavah I'm not sure what the problem is with this layout - I thought the disaggregation label was supposed to be right aligned next to the baseline column (or, if the baseline column is hidden, the LoP target column), and that's what I'm seeing here, unless I misunderstood specs?

@camgnostic You're right! I was disoriented by the appearance of that "extra" column, but it is not wrong. Closing as it's not a bug.


Add step to wait for launcher files to be ready

Currently I have to wait for launcher compile to finish and get added to releases on launcher repo before I can push the tag on this repo here as otherwise the CI will fail to find the files and exit early.
This PR adds a small bash script that just blocks the CI from progressing until the release files on launcher are done.
This way I can push the tag to release repo as soon as I want instead of having to wait ~10 minutes for launcher compile to complete.

Welp, time to test in prod :>


Create Factorial of a number.java

fixes
https://github.com/Algo-Phantoms/Algo-Tree/issues/57

please review it

all changes fixes.
Please review it.


Add Client "resolveUri" Method

Add a utility method to the client for resolving a URI. The intention is for this method to be used to introspect the URI resolution process.
@nerfZael is working on a new URI resolver, and would like to write tests verifying it's working correctly "under the hood". This method would enable that.
The developer experience should be something like:
resolveUri(uri: string | Uri) => ResolveUriDertails[]

where ResolveUriDertails could take the form of:
interface ResolveUriDertails {
  // The uri-resolver used
  uriResolver: Uri;

  // Input & results of the `tryResulveUri` method
  tryResolveUri: {
    input: {
      authority: string;
      path: string;
    };
    result: {
      uri?: string | null;
      manifest?: string | null;
    };
  }
}

The array of details structures represents the "resolution chain" that occurs when the resolve URI process is undergone.
Additional information can be added to this details structure as needed, such as:

timings
errors

Hi @nerfZael @dOrgJelli
Will this method return ipfs hash somethere?

@nerfZael is working on this currently @ramilexe. Yes the result will return the URI of the package. Here's the WIP signature of the function: https://github.com/polywrap/monorepo/blob/1c85bce238cb56f28a456f554212a0fdcb4cfa71/packages/js/client/src/Web3ApiClient.ts#L405-L414


[Core] Improve define-by-run state management.

In PyTorch, we currently manage state for get/set weights via a wrapper object called PyTorchVariable which accesses layer weights.
However, in define by run backends we also may want to use lists and numpy arrays to manage state and set/get it through the executor interface, e.g. in buffers. Performing space inference is difficult on raw lists so we could consider wrapping the 'list' variables with an object storing the desired spaces.

Management of these is now unified, e.g. in buffers all variables are created via get_variables.


FIX: s3curl parsing of http code

@ironman-machine please

Hello @nicolas2bert
Starting end to end procedure using the following payload:
{"REPO_NAME": "S3", "SCALITY_S3_BRANCH": "FIX/test/s3curl-parsing", "DEFAULT_BRANCH": "master"}
Please follow http://ci.ironmann.io/gh/scality/Integration/5755 for CI status.

@ironman-machine replease

Hello @nicolas2bert
Starting end to end procedure using the following payload:
{"REPO_NAME": "S3", "SCALITY_S3_BRANCH": "FIX/test/s3curl-parsing", "DEFAULT_BRANCH": "master"}
Please follow http://ci.ironmann.io/gh/scality/Integration/5756 for CI status.


[C-2484] Sort members merge suggestions by confidence

From SyncLinear.com | C-2484

@nunoeufrasio Can you please add more details to this?

Hi @keshari1arya :)
Each merge suggestion has its confidence score, this issue is about sorting all the suggestions by confidence in descending order. No additional functionality or elements added to the UI.

Hey would like to give it a try if no one took it! :)

Hey @nunoeufrasio ,
thank you for the help and the screen shot provided.
i can see in the DB data pickup query we are sorting it by similarity.

can you please let me know the exact issue you want to tackle.
if possible can you please share me a login and environment so that i can also check from my end to get to the root of the issue.

Hey @keshari1arya, sorry to get back to you so late, our Sync tool didn't work so this issue status wasn't updated.
@joanreyero already took care of this one during the week, so it's already fixed.
Nonetheless, thank you for your interest in contributing!
Regarding login and environment, you should be able to Sign up with your google account or email normally locallly


Switch metafix to ANTLR

Depends on https://github.com/metafacture/metafacture-core/issues/577.

Accidental duplicate of #579.


[FLINK-12481][runtime] Invoke timer callback in task thread (via mailbox)

What is the purpose of the change
This PR moves invocation of timer callback (ProcessingTimeCallback) from SystemProcessingTimeService execution thread pool into StreamTask's main thread (passing callback via mailbox introduced in [FLINK-12480]).
This is a sub-task of general effort of moving away from using concurrent access to StreamTask's state.
Brief change log

The checkpointLock and AsyncExceptionHandler are moved out of SystemProcessingTimeService as abstract invocation context (ScheduledCallbackExecutionContext). So the service is abstracted and is not concerned about StreamTask's use case.
The implementation of ScheduledCallbackExecutionContext for StreamTask uses mailbox (instead of locking on checkpointLock) to delegate timer callback invocation in main task's thread.

Verifying this change
This change added tests and can be verified as follows:

A test in StreamTaskTest has been modified to verify new runtime invariant;

Note: StreamTaskTimerTest fails (regression) due to blocking in inputProcessor.processInput(). In both tests the task thread get interrupted, without peeking any mailbox messages (timer callbacks in those tests are already in mailbox queue).
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

cc @StefanRRichter, @pnowojski.

PR is failing on a couple Travis tests.

Thanks for review.
There are some tests failures that are related to this change (I have run only flink-streaming-java tests locally). In particular, expectations about execution model in the tests doesn't match the changed one.
More importantly, I have to update user facing documentation regarding timers execution, that would mention such runtime change.
I'll reopen this PR, after documentation update and if it's aligned.
@StefanRRichter, @pnowojski it's up to you if you want to read this PR furhter. On my side, the implementation would not change significantly (modulo the discussion with Stefan regarding timer service callback).


500 Internal Server Error

Bot gives an "500 Internal Server Error" after several success attempts to reply. Earlier versions of the library did not have this error. Can i fix this?

«A 500 internal server error is, as the name implies, a general problem with the website's server. More than likely, this means there's an issue or temporary glitch with the website's programming» - Google
This is not an error of the library or your code, but a site error

I also sometimes get 500 errors. I get them when I try to chat with a character I didn't make. However, if I try it with a character I made, it works perfectly fine. Something must be messed up on CharacterAI's site.


Drop Some Bogus CHECK-NOT Gates

This test appeared to be expecting additional driver diagnostics with negative check fences, which is kinda weird. Just drop the NOT gates.
rdar://75749304

@swift-ci test

Merged to unblock CI

Build failed
Swift Test Linux Platform
Git Sha - 904654dc8f25736de1cf5d9c9ef9af7879c73d83

Build failed
Swift Test OS X Platform
Git Sha - 904654dc8f25736de1cf5d9c9ef9af7879c73d83


force launch app when receiving notification

hi, i want to force open app when receiving a notification like messenger call of facebook or skype app.
Could you tell me how do i resolve it?

nobody decided?

@hungdev You will write some native code to do this on either iOS or Android.
iOS
You will need to use VoIP notifications and Apple's PushKit library to do this. See their guide on setting this up and getting a VoIP type push token. The OneSignal SDK does not support PushKit so all the eventing in your app with need to be handed with your own code. The OneSignal backend does support sending to VoIP however you should create a 2nd OneSignal app to register these kinds of tokens. You will need to use the OneSignal Add a device to register the device with OneSignal.
Android
Follow OneSignal's Background Data and Notification Overriding to setup the required Java code to receive background data. However you will still need to write code to start your own custom Android Activity for the call.

YEs thank, in ios all work, for me need only android. You can create this
module?
On Thu, Nov 16, 2017 at 12:53 AM, Josh Kasten<EMAIL_ADDRESS>wrote:

@hungdev https://github.com/hungdev You will write some native code to
do this on either iOS or Android.
iOS
You will need to use VoIP notifications and Apple's PushKit library to do
this. See their guide
https://developer.apple.com/library/content/documentation/Performance/Conceptual/EnergyGuide-iOS/OptimizeVoIP.html
on setting this up and getting a VoIP type push token. The OneSignal SDK
does not support PushKit so all the eventing in your app with need to be
handed with your own code. The OneSignal backend does support sending to
VoIP however you should create a 2nd OneSignal app to register these kinds
of tokens. You will need to use the OneSignal Add a device
https://documentation.onesignal.com/v3.0/reference#add-a-device to
register the device with OneSignal.
Android
Follow OneSignal's Background Data and Notification Overriding
https://documentation.onesignal.com/docs/android-customizations#section-background-data-and-notification-overriding
to setup the required Java code to receive background data. However you
will still need to write code to start your own custom Android Activity for
the call.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/geektimecoil/react-native-onesignal/issues/312#issuecomment-344756500,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKhPWzEz7Xr2hrryI2s4RotFx1M7ESr6ks5s22tWgaJpZM4PFgw4
.


_MapBoxPlaceSearchWidgetState.dispose

Hey, there is a issue with canceling rebuiliding.
════════ Exception caught by widgets library ═══════════════════════════════════════════════════════
The following NoSuchMethodError was thrown while finalizing the widget tree:
The method 'cancel' was called on null.
Receiver: null
Tried calling: cancel()

When the exception was thrown, this was the stack:
#0      Object.noSuchMethod (dart:core-patch/object_patch.dart:53:5)
#1      _MapBoxPlaceSearchWidgetState.dispose (package:mapbox_search_flutter/src/map_box_place_search_widget.dart:106:20)
#2      StatefulElement.unmount (package:flutter/src/widgets/framework.dart:4733:12)
#3      _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1922:13)
#4      _InactiveElements._unmount.<anonymous closure> (package:flutter/src/widgets/framework.dart:1920:7)
...
════════════════════════════════════════════════════════════════════════════════════════════════════

Thanks, will look into it asap

OKey, thank You in advance :)
I have some other error atm:
W/IInputConnectionWrapper(26521): getExtractedText on inactive InputConnection
W/IInputConnectionWrapper(26521): getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper(26521): getExtractedText on inactive InputConnection
W/IInputConnectionWrapper(26521): getTextBeforeCursor on inactive InputConnection
W/IInputConnectionWrapper(26521): getExtractedText on inactive InputConnection
W/IInputConnectionWrapper(26521): getTextBeforeCursor on inactive InputConnection
E/SpannableStringBuilder(26521): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
I/chatty  (26521): uid=10326(com.mobiqe.mobiqe_v1) identical 2 lines
E/SpannableStringBuilder(26521): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
E/SpannableStringBuilder(26521): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
E/SpannableStringBuilder(26521): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
E/flutter (26521): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: setState() callback argument returned a Future.
E/flutter (26521): The setState() method on _MapBoxPlaceSearchWidgetState#71066(ticker inactive) was called with a closure or method that returned a Future. Maybe it is marked as "async".
E/flutter (26521): Instead of performing asynchronous work inside a call to setState(), first execute the work (without updating the widget state), and then synchronously update the state inside a call to setState().
E/flutter (26521): #0      State.setState.<anonymous closure> (package:flutter/src/widgets/framework.dart:1236:9)
E/flutter (26521): #1      State.setState (package:flutter/src/widgets/framework.dart:1252:6)
E/flutter (26521): #2      _MapBoxPlaceSearchWidgetState._searchInput.<anonymous closure>.<anonymous closure> (package:mapbox_search_flutter/src/map_box_place_search_widget.dart:170:21)
E/flutter (26521): #3      _rootRun (dart:async/zone.dart:1180:38)
E/flutter (26521): #4      _CustomZone.run (dart:async/zone.dart:1077:19)
E/flutter (26521): #5      _CustomZone.runGuarded (dart:async/zone.dart:979:7)
E/flutter (26521): #6      _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1019:23)
E/flutter (26521): #7      _rootRun (dart:async/zone.dart:1184:13)
E/flutter (26521): #8      _CustomZone.run (dart:async/zone.dart:1077:19)
E/flutter (26521): #9      _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:1003:23)
E/flutter (26521): #10     Timer._createTimer.<anonymous closure> (dart:async-patch/timer_patch.dart:23:15)
E/flutter (26521): #11     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:398:19)
E/flutter (26521): #12     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:429:5)
E/flutter (26521): #13     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)
E/flutter (26521):


Configuration cache evaluates taskProvider.map { ... } expression too early

Follow-up to https://github.com/gradle/gradle/pull/19037#pullrequestreview-820314844

I just ran into this when attempting to provide Android Gradle Plugin configuration using task outputs (https://issuetracker.google.com/issues/242017150).  It looks like TaskProvider.map and TaskProvider.flatMap are evaluated during config cache key generation, at which point the outputs have not yet been created.
I've uploaded a repro project with a few scenarios in case it helps with further understanding of this issue:  ConfigCacheRepro.tar.gz
This project contains 4 tasks which exercise different scenarios.  It seems like attempting to use TaskProvider.map* to add to MapProperty is the worst scenario (which is what AGP exposes for consumption).
Examples:
TaskProvider.map feeding a MapProperty:
Initial invocation with clean workspace and configuration cache:
* What went wrong:
Configuration cache state could not be cached: field '__mapProperty__' from type 'bug.repro.configcacherepro.MapConsumer': error writing value of type 'org.gradle.api.internal.provider.DefaultMapProperty'
> Querying the mapped value of task ':reproLib:producer' property 'outputFile' before task ':reproLib:producer' has completed is not supported

TaskProvider.flatMap feeding a MapProperty:
Initial invocation with clean workspace and configuration cache:
> Task :reproLib:mapConsumerViaFlatMap
producerProvider.flatMap resolving
producerProvider.flatMap resolved to: map(task ':reproLib:producer' property 'outputFile')
producerTask.outputFile.map resolved to:<PHONE_NUMBER>288

Subsequent invocation, reusing config cache:
Reusing configuration cache.

FAILURE: Build failed with an exception.

* What went wrong:
Could not load the value of field `transformer` of `org.gradle.api.internal.provider.TransformBackedProvider` bean found in field `providers` of `org.gradle.api.internal.provider.DefaultMapProperty$CollectingProvider` bean found in field `__mapProperty__` of task `:reproLib:mapConsumerViaFlatMap` of type `bug.repro.configcacherepro.MapConsumer`.
> org.gradle.api.internal.provider.MapCollectors$EntryWithValueFromProvider$$Lambda$1218/0x0000000800ad2440

TaskProvider.map feeding a Property<String>:
Initial invocation with clean workspace and configuration cache:
1 problem was found storing the configuration cache.
- Task `:reproLib:stringConsumerViaMap` of type `bug.repro.configcacherepro.StringConsumer`: value 'map(java.lang.String map(provider(task 'producer', class bug.repro.configcacherepro.FileProducer)) check-type())' failed to unpack provider

TaskProvider.flatMap feeding a Property<String>:
Initial invocation with clean workspace and configuration cache:
> Task :reproLib:stringConsumerViaFlatMap
producerProvider.flatMap resolving
producerProvider.flatMap resolved to: map(task ':reproLib:producer' property 'outputFile')
producerTask.outputFile.map resolved to:<PHONE_NUMBER>747

Subsequent invocations work OK.

@mcumings thank you for the reproducer. I've fixed the case of "TaskProvider.flatMap feeding a MapProperty", though it is unrelated to the original issue. I think building a chain upon taskProvider.flatMap {it.someTaskOutput} should be safe now (==in Gradle 8+), but anything else is still prone to overly eager evaluation.

When working on this, please also take a look at FileAccessPermissionsIntegrationTest and the TODO left in there with a link to this issue.
Said file was introduced by:

https://github.com/gradle/gradle/pull/23983


Missing UseWindowsService in IWebHostBuilder

IWebHostBuilder missing UseWindowsService
I am using the new .NET 3.0 and I am having a hard time deploying a worker service which in it I have hosted an ASP.NET Core API.
When deploying am getting this error;
[SC] StartService FAILED 1053:

The service did not respond to the start or control request in a timely fashion.

To Reproduce
My Worker service Program class is as shown below;
 public static void Main(string[] args)
 {
      CreateWebHostBuilder(args).Build().Run();
 }

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
    .UseStartup<Startup>()
    .UseKestrel((context, serverOptions) =>
    {
           serverOptions.ListenAnyIP(1000);
           serverOptions.Limits.KeepAliveTimeout = TimeSpan.FromMinutes(1.5);
     });

From the above sample I cannot specify the environment runtime that is Windows Service(.UseWindowsService()) because the IWebHostBuilder doesn't have this defition.
Ideally, I expected both IHostBuilder and IWebHostBuilder to share the definition of UseWindowsService(). Can you kindly assist with this missing feature for I am stuck and can't deploy the Worker Service.

Do you have Microsoft.Extensions.Hosting.WindowsServices in the nuget packages?
I would suggest to take a look at the link as it explained everything from the start of the project to deploy project as windows service: https://devblogs.microsoft.com/aspnet/net-core-workers-as-windows-services/

@Tratcher Is this the right area for it?

I have it already installed for some reason; IWebHostBuilder doesn't pick it up.

Microsoft.Extensions.Hosting.WindowsServices is for IHostBuilder, which is what new 3.0 apps use now.
Microsoft.AspNetCore.Hosting.WindowsServices is for IWebHostBuilder.

I see that's what I was missing then; had a hard time combing through the documentation;
public static void Main(string[] args)
        {

            CreateWebHostBuilder(args).Build().RunAsService();

        }

        public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
                .UseContentRoot(Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName))
                .UseStartup<Startup>()
                .UseKestrel((context, serverOptions) =>
                {
                    serverOptions.ListenAnyIP(1000);
                    serverOptions.Limits.KeepAliveTimeout = TimeSpan.FromMinutes(1.5);
                });


Security around image bombs

Thank you for your amazing work on this project! Was wondering if there's anything addressing or designing around mallicious images? Imgproxy mentions it here: https://github.com/imgproxy/imgproxy#security
imgproxy checks the image type and its “real” dimensions when downloading. The image will not be fully downloaded if it has an unknown format or if the dimensions are too big (you can set the max allowed dimensions). This is how imgproxy protects from so called "image bombs”
Thank you

Thanks for raising it. Imagor currently does not have specific logic around "image bomb protection". I am happy to look into this further.
Meanwhile a rule of thumb is to enable URL Signature https://github.com/cshum/imagor#url-signature. This works by generating a hash from the path and the server secret string. Only the path (image source included) that matches the signature shall be processed. This would dismiss any unconsented images being loaded without the correct signature generated from sever side.
If URL signature is NOT enabled - a lot of other bad things can happen, even with "image bomb protection" in place.

Thanks for raising it. Imagor currently does not have specific logic around "image bomb protection". I am happy to look into this further.
Meanwhile a rule of thumb is to enable URL Signature. This works by generating a hash from the path and the server secret string. Only the path (image source included) that matches the signature shall be processed. This would dismiss any unconsented images being loaded without the correct signature generated from sever side.
If URL signature is NOT enabled - a lot of bad things can happen, even with "image bomb protection" in place.

I think it can be a problem even when you are using signature.
On backends with user upload capability, they can upload bomb images.

Imagor 0.9.12 now checks the image type and its resolution before the actual processing happens. The image processing will be rejected if the dimensions are too big (you can set the max allowed image resolution using -vips-max-resolution), which protects from so called "image bombs”.

Nice one! @cshum

Thanks for raising it. Imagor currently does not have specific logic around "image bomb protection". I am happy to look into this further.
Meanwhile a rule of thumb is to enable URL Signature. This works by generating a hash from the path and the server secret string. Only the path (image source included) that matches the signature shall be processed. This would dismiss any unconsented images being loaded without the correct signature generated from sever side.
If URL signature is NOT enabled - a lot of bad things can happen, even with "image bomb protection" in place.

How is putting the secret on client UI to sign secure?, Please correct me @cshum if I misunderstood it.

@bhaskarmishra no way you would put the secret on client side.
The secret is stored server-side and you generate a hash using the stored secret in server side.
The generated hash is shared client-side but there is no way you can deduce the secret from the generated hash itself.


Update contribution guide with links

Adding links to beam's github page from the contribution guide for easy discovery of beam's github pages.
cc: @ivant  noticed that this is missing.
R: @melap

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

The testing queue is very long... will watch this and merge once it's finished


I want the program to update automatically.

Thank you very much for providing a very convenient tool to manage docker,
But I want the program to update automatically.
At present, the update program needs to log in to the host through ssh, which is very troublesome.
It would be perfect if you could update online in portainer.

Watchtower

Closing as duplicate of #3197


Embedding vector search is performed on RAM?

Most vector database algorithms are carried out in RAM. Where are the PostgreSQL database embeddings stored? Should we expect them stored on disk like how ordinary postgresql databases file stored? Which means no large RAM is required for large embedding vectors dataset.
Almost all other vector databases are RAM and not disk based, so this will be nice if postgres stands out by operating like any sql database without huge RAM requirements.
How about pgvector?

Postgres will effectively page portions of the IVFFLAT index between RAM and HDD as necessary, so you are correct that this is a nice scalability advantage pgvector has over some competitors, especially if some lists are hot, and others not. Of course if there is ample RAM in the system allocated to either Postgres shared_buffers or the operating system page cache to hold the entire index, then there will be no disk activity.
It's worth noting that pgvector requires a modest amount of maintenance_work_mem while initially building the index, which is generally an offline process, and is only a fraction of the final index size. You'll get a helpful error message if you have not configured enough maintenance_work_mem to create the index in the beginning.


Replace mKCP with kcptun

The upstream kcptun supports many appealing features like FEC and smux , which is currently not available from mKCP.

Other reasons see #2530 (and #1749 #1527), #1416 and  #540

Also see #2253 #2131

Strictly speaking, it's completely different

True. Is there any particular strength of mKCP, compared to other KCP-based protocol like kcptun?

Regardless of the outcome, we all need people to work

Fair enough. Close for now.


How is a list of u8 represented in the example.yaml?

There doesn't seem to be a mapping anywhere?

Something like SEQ:\n\tU8 for the top of my memory


The CRUD collection definition is a JSON Schema

It might be useful to use as crud collection definition a JSON Schema instead of generating it later in code.
This would enable the implementation of a number of features more easily. It would be possible to:

Perform fields validations against the schema (min, max, regex ecc...)
Instantiate a crud-service by passing a JSON schema in a config map or set of config maps.

Moreover we talked about the possibility of using a json schema as "new cms" collections configuration. The crud collection schema could be the default one.

This has been addressed by #65


Headless browser possible?

I'm curious if this project could be used to build a replacement for something like phantomjs?

@spolu could you please comment further on #78 ?
I'm trying to set up a service based on thrust that will help make an api of non-api-ready websites, such as every bank in my country (chile).
In fact I'm trying to do what @przemyslawpluta suggested.
Thanks


Migration is only updating first record in a collection

I'm trying to do a relatively simple operation and it is only updating the first record in the collection.  This is my first time using mongo-migrate so perhaps I'm doing something wrong....
var mongodb = require('mongodb');

exports.up = function(db, next){
    db.collection('users').find().forEach(function(user) {
        console.log('migrating user: ' + user.emails[0].address);
        user.profile.normalizedEmail = user.emails[0].address.toLowerCase();
        db.collection('users').save(user);
    });

    next();
};

I should add that running the same code from the mongo shell, with db.collection('users') changed to db.users, and print instead of console.log, works fine.


Added New Game

PR Description 📜
Added New Game 15_puzzle sliding game
Fixes #4644

Mark the task you have completed ✅

[x ] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x ] I have performed a self-review of my own code or work.
[x ] I have commented my code, particularly in hard-to-understand areas.
[ x] My changes generates no new warnings.
[x ] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[ x] I have added screenshot for website preview in assets/images
[x ] I have added entries for my game in main README.md
[x ] I have added README.md in my folder
[x ] I have added working video of the game in README.md (optional)
[ x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you @Saipradyumnagoud ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Hey @Saipradyumnagoud, You have reached your limit to contribute in GameZone with a score of 165.
We believe in giving equal opportunity to everyone so you will not be able to contribute to GameZone now onwards. 💗
Thank you for your valuable time and contribution in GameZone 🕹!
Your merged pull requests:

#4619 with labels: level2 score: (25)
#4555 with labels: level3 score: (45)
#4468 with labels: level2 score: (25)
#4433 with labels: level2 score: (25)
#4270 with labels: level3 score: (45)

Thank you  @Saipradyumnagoud , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


feat: Dependency tree command

fixes: #238
A really rough pass at a pixi tree command, based off of cargo tree and mamba repoquery.
I had an idea that I didn't actually expect to work that I started tinkering around while working on another branch ( #1055 ), so it isn't very clean, but since folks are interested in playing with it.
It does:

It can draw both a full and filtered top down dependency tree
For a top down tree it will keep track of dependencies it has already visited, and avoid repeating them
It can draw a filtered inverted tree ('who depends on x package')
Style Conda/PyPi dependencies

It does not or is not:

Keep track of what has been visited in the inverted tree to avoid repeating
~Know how to start with PyPI dependencies~
Start at a middle depth of top down tree
~Show versions on an inverted tree~
Work in a non UTF-8 terminal?
A good example of Rust code as I just got started with it and haven't made it through the book yet. I largely started with pixi list and kept tweaking till something worked.
 Defaults to the current platform
      --manifest-path <MANIFEST_PATH>  The path to 'pixi.toml' [env: PIXI_PROJECT_MANIFEST=]
  -e, --environment <ENVIRONMENT>      The environment to list packages for. Defaults to the default environment
      --frozen                         Don't check or update the lockfile, continue with previously installed environment
                                       [env: PIXI_FROZEN=]
      --locked                         Check if lockfile is up to date, aborts when lockfile isn't up to date with the
                                       manifest file [env: PIXI_LOCKED=]
      --no-install                     Don't install the environment for pypi solving, only update the lock-file if it can
                                       solve without installing
  -i, --invert                         Invert tree and show what depends on given package
  -v, --verbose...                     Increase logging verbosity
  -q, --quiet...                       Decrease logging verbosity
      --color <COLOR>                  Whether the log needs to be colored [env: PIXI_COLOR=] [default: auto] [possible
                                       values: always, never, auto]
  -h, --help                           Print help

He @abkfenris, thanks for the PR.
This is already a very good start, I gave it a go and it does most of what I expect from a first version.
To improve and align with the pixi list, I would like to have the packages defined in the pixi.toml to be visualized in green.
The pypi dependencies should also be able to depend on conda packages so the dependencies from the lock file need to be cross matched with the pypi-conda mapping. This however also gets updated at the moment of typing this. So lets not worry about this in the first PR.
It would be nice if you could also write some documentation. I'll do a technical review later!

In the help text
  -i, --invert                         Invert tree and show what depends on given package

I assume this will require a package/multiple packages as another argument, otherwise it will fail?
So maybe make it
  -i, --invert [PACKAGE]               Invert tree and show what depends on given package

Having the direct dependencies styled is especially nice for inverted.

In the help text
  -i, --invert                         Invert tree and show what depends on given package

I assume this will require a package/multiple packages as another argument, otherwise it will fail?
So maybe make it
  -i, --invert [PACKAGE]               Invert tree and show what depends on given package

The package that invert is matching against comes from the optional positional argument. I added a note for that, and figured out how to make clap mark it as a dependency, but it doesn't show in quite that form.
pixi tree --help
Lock file usage from the CLI

Usage: pixi tree [OPTIONS] [REGEX]

Arguments:
  [REGEX]  List only packages matching a regular expression

Options:
      --platform <PLATFORM>            The platform to list packages for. Defaults to the current platform
      --manifest-path <MANIFEST_PATH>  The path to 'pixi.toml' [env: PIXI_PROJECT_MANIFEST=]
  -e, --environment <ENVIRONMENT>      The environment to list packages for. Defaults to the default environment
      --frozen                         Don't check or update the lockfile, continue with previously installed environment
                                       [env: PIXI_FROZEN=]
      --locked                         Check if lockfile is up to date, aborts when lockfile isn't up to date with the
                                       manifest file [env: PIXI_LOCKED=]
      --no-install                     Don't install the environment for pypi solving, only update the lock-file if it can
                                       solve without installing
  -i, --invert                         Invert tree and show what depends on given package in the regex argument
  -v, --verbose...                     Increase logging verbosity
  -q, --quiet...                       Decrease logging verbosity
      --color <COLOR>                  Whether the log needs to be colored [env: PIXI_COLOR=] [default: auto] [possible
                                       values: always, never, auto]
  -h, --help                           Print help

Ok, I went and quickly rebased it off of main to split it off from my tinkering with pixi shell.

I taught it how to ~love~ understand PyPI dependencies, and deal with versions when inverted.

I've also generally cleaned up the tree code, and refactored it to standardize functionality. I'm not however dealing with markers/extras, or always correctly figuring out normalized package names (xpublish-edr is a directly specified dependency, so it should be highlighted). For markers/extras, right now I'm just discarding those dependencies.

I think the error with build-docs is the same one that is happening on most other runs, rather than an issue with something I changed. I can locally pixi run doc and pixi run build-docs without errors.

see #1074

see #1074

Ah, I missed that.

Thanks for taking a look everyone.

The code is not really handling the dependencies between conda and pypi properly (see PypiPackageIdentifier) but for a first implementation this LGTM.

Is there an example that you can point me too? My messier test environment seems to be getting things right (Xarray from Conda, Xpublish* local PyPI).

I've had the chance to already play around with pixi tree in a real-world scenario where i needed to debug some dependencies, so this PR came exactly at the right time. Thanks @abkfenris 💜
What I noticed is that in some cases it doesn't behave as it should(?)
[project]
name = "tmp.yqbLiIBFp9"
channels = ["conda-forge"]
platforms = ["osx-arm64", "linux-64"]

[tasks]

[dependencies]
mlflow = "1.27.0"

❯ ../pixi-aarch64-apple-darwin list --platform linux-64 | grep pandas
pandas                     2.2.1         py310hcc13569_0      12.4 MiB    conda  pandas-2.2.1-py310hcc13569_0.conda
pandas-profiling           3.0.0         pyhd8ed1ab_0         165.3 KiB   conda  pandas-profiling-3.0.0-pyhd8ed1ab_0.tar.bz2

❯ ../pixi-aarch64-apple-darwin tree --platform linux-64 | grep pandas
T/tmp.yqbLiIBFp9/c

❯ ../pixi-aarch64-apple-darwin tree --platform linux-64 -i pandas

pandas-profiling 3.0.0

pandas 2.2.1
├── seaborn-base 0.13.2
│   ├── pandas-profiling 3.0.0
│   └── seaborn 0.13.2
├── pandas-profiling 3.0.0
├── statsmodels 0.14.1
│   └── seaborn 0.13.2
├── phik 0.12.3
│   └── pandas-profiling 3.0.0
└── visions 0.7.1
    └── pandas-profiling 3.0.0

For some reason, pandas and pandas-profiling are not part of the tree 🤔
In pixi.lock, it's part of the depends block of mlflow...

Hmm, I'd have to try with that environment to be sure, but have you tried the latest commit? I had some issues with normalization for a few which meant that things were getting dropped.

i thought that i used the latest commit but i'm not sure anymore... i'll try again after lunch 🙌🏻

I can reproduce it on my machine @pavelzw

I also just tested again with 3f237e9 (#1069) (using gh run download -R prefix-dev/pixi -n pixi-aarch64-apple-darwin<PHONE_NUMBER>) and can still reproduce the issue.

All dependencies without a version in the "dependencies" of the package are missing from the tree. So also alembic etc. but it does include click

All dependencies without a version in the "dependencies" of the package are missing from the tree. So also alembic etc. but it does include click

Thanks! I think I know right where that would be coming from. I'll tweak that and test it after I grab breakfast.

Ah sorry I now read this, but I hope you don't mind me fixing it. I also renamed parts of the function as it was hard to grasp the variables at first. Let me know what you think.

Ah sorry I now read this, but I hope you don't mind me fixing it. I also renamed parts of the function as it was hard to grasp the variables at first. Let me know what you think.

That works for me. I don't have that great of a handle on all the possible iterators, so I was gonna slap an else block in the loop, so it's cool to see how it can be done more efficiently.

I've had the chance to already play around with pixi tree in a real-world scenario where i needed to debug some dependencies, so this PR came exactly at the right time.

Talking about real-world scenarious, I ended up using tree on Friday to check if anything depended on a vulnerable version of xz.

xz from conda-forge did not ship the infected versions because the build ci was failing 😄

Another thing I stumbled upon:
when running pixi tree package and package is not explicitly mentioned in pixi.toml (i.e. is a transitive dependency from some other package), pixi fails with
  × No top level dependencies matched the given regular expression

The error message is good but there might be use cases where you want to only have a sub-tree of your whole tree.
(especially if you want to see all dependencies (without (*)) for a certain package that you didn't request manually)
not a deal-breaker though and i'm really happy how his turned out 🚀

@pavelzw that is a good point, lets get this in and make add fix that in a following PR, as I also can't wait for this PR.

I took a quick swing at matching transitive dependencies, but I can push that to a new PR rather than hold this one on another round of debugging.

Go ahead @abkfenris :+1:

Ok, draft of transitive matching over on #1111


Removing en/latest and using dirhtml builder

This fixes a few links that were broken w/ the latest dirhtml builder changes.

fixes #162 #161 #160
closes https://github.com/2i2c-org/2i2c-org.github.io/issues/144
fixes https://github.com/2i2c-org/2i2c-org.github.io/issues/157

Related issues

https://github.com/2i2c-org/team-compass/issues/666
https://github.com/2i2c-org/team-compass/issues/705

merging this since it is fixing a bunch of broken links


install_ddev.sh on arm64 gets amd64 version of ddev and mkcert

Describe the bug
Installing ddev via install_ddev.sh on arm64 (64-bit Raspberry Pi) gets this failure because the arch is wrong (x86-64):
$ file /usr/local/bin/mkcert
/usr/local/bin/mkcert: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=VHPWv-RaRqgG7-fXHQih/oBKuolxjPaJabpfn2JJK/fQ_7gorPKs8GmpDE0GqJ/V91Z75wITkfU1zWBHan0, not stripped

I think the actual problem is that the build process on CircleCI gets the wrong mkcert version.
To Reproduce
Steps to reproduce the behavior:

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

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Version and configuration information (please complete the following information):

Host computer OS and Version: [e.g. Windows 10, macOS Catalina]
Docker Desktop version if on macOS or Windows (from "About Docker Desktop")
ddev version information (use ddev version)
config.yaml contents for the misbehaving project
Do you have any custom configuration (nginx, php, mysql) in the .ddev folder? If so, have you tried without them?

Additional context
Add any other context about the problem here. Thanks!

The problem here was that the current stable version (v1.15.3) does not have an arm64 version, so the script just gets the amd64. If you specify a version, as in install_ddev.sh v1.16.0-alpha6 it works correctly. And it will work correctly when this is in the stable version.


[tool_crash] _CastError: (#0      new WebPlugin.fromYaml (package:flutter_tools/src/platform_plugins.dart:548:34))

Command
flutter --no-color run --machine --track-widget-creation --device-id=B08D208A-3F93-45BD-B0F0-5F96FFF1D00D --start-paused --dart-define=flutter.inspector.structuredErrors=true lib/main.dart

Steps to Reproduce

...
...
...

Logs
_CastError: (#0      new WebPlugin.fromYaml (package:flutter_tools/src/platform_plugins.dart:548:34))
#0      new WebPlugin.fromYaml (package:flutter_tools/src/platform_plugins.dart:548:34)
#1      new Plugin._fromMultiPlatformYaml (package:flutter_tools/src/plugins.dart:142:21)
#2      new Plugin.fromYaml (package:flutter_tools/src/plugins.dart:78:21)
#3      _pluginFromPackage (package:flutter_tools/src/flutter_plugins.dart:63:17)
#4      findPlugins (package:flutter_tools/src/flutter_plugins.dart:88:28)
<asynchronous suspension>
#5      refreshPluginsList (package:flutter_tools/src/flutter_plugins.dart:1080:32)
<asynchronous suspension>
#6      FlutterProject.ensureReadyForPlatformSpecificTooling (package:flutter_tools/src/project.dart:357:5)
<asynchronous suspension>
#7      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:1412:7)
<asynchronous suspension>
#8      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1257:27)
<asynchronous suspension>
#9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#10     CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#11     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:283:9)
<asynchronous suspension>
#12     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#13     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)
<asynchronous suspension>
#14     run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:64:9)

[!] Flutter (Channel stable, 3.7.10, on macOS 13.2.1 22D68 darwin-x64, locale en-NG)
    • Flutter version 3.7.10 on channel stable at /Users/nugigroup/flutter
    ! The flutter binary is not on your path. Consider adding /Users/nugigroup/flutter/bin to your path.
    ! The dart binary is not on your path. Consider adding /Users/nugigroup/flutter/bin to your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 4b12645012 (9 days ago), 2023-04-03 17:46:48 -0700
    • Engine revision ec975089ac
    • Dart version 2.19.6
    • DevTools version 2.20.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
    • Android SDK at /Users/nugigroup/Library/Android/sdk
    • Platform android-33, build-tools 33.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] IntelliJ IDEA Community Edition (version 2021.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 70.0.3
    • Dart plugin version 213.7371

[✓] VS Code (version 1.77.1)
    • VS Code at /Applications/Visual Studio Code 2.app/Contents
    • Flutter extension version 3.62.0

[✓] Connected device (3 available)
    • iPhone 14 (mobile) • B08D208A-3F93-45BD-B0F0-5F96FFF1D00D • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-2 (simulator)
    • macOS (desktop)    • macos                                • darwin-x64     • macOS 13.2.1 22D68 darwin-x64
    • Chrome (web)       • chrome                               • web-javascript • Google Chrome 112.0.5615.49

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

Flutter Application Metadata
Type: app
Version: 1.0.0+1
Material: true
Android X: false
Module: false
Plugin: false
Android package: null
iOS bundle identifier: null
Creation channel: stable
Creation framework version: 52b3dc25f6471c27b2144594abb11c741cb88f57
Plugins
connectivity-3.0.6
connectivity_for_web-0.4.0+1
connectivity_macos-0.2.1+2
device_info-2.0.3
flutter_keyboard_visibility-5.4.0
flutter_keyboard_visibility_linux-1.0.0
flutter_keyboard_visibility_macos-1.0.0
flutter_keyboard_visibility_web-2.0.0
flutter_keyboard_visibility_windows-1.0.0
flutter_plugin_android_lifecycle-2.0.9
flutter_secure_storage-8.0.0
flutter_secure_storage_linux-1.1.3
flutter_secure_storage_macos-3.0.0
flutter_secure_storage_web-1.1.1
flutter_secure_storage_windows-2.0.0
google_maps_flutter-2.2.5
google_maps_flutter_android-2.4.9
google_maps_flutter_ios-2.2.1
location-4.4.0
location_web-3.1.1
mobile_scanner-3.2.0
path_provider-2.0.12
path_provider_android-2.0.22
path_provider_foundation-2.1.1
path_provider_linux-2.1.7
path_provider_windows-2.1.3
shared_preferences-2.0.17
shared_preferences_android-2.0.15
shared_preferences_foundation-2.1.3
shared_preferences_linux-2.1.3
shared_preferences_web-2.0.4
shared_preferences_windows-2.1.3
slider_gradient-0.2.1
sqflite-2.2.4+1
url_launcher-6.1.9
url_launcher_android-6.0.23
url_launcher_ios-6.1.0
url_launcher_linux-3.0.2
url_launcher_macos-3.0.2
url_launcher_web-2.0.14
url_launcher_windows-3.0.3

Closing this as a duplicate of https://github.com/flutter/flutter/issues/115738.
Kindly upvote the original issue.
Thank you


Fix highlighting for triple quote strings

If I use a " inside a """....""" block the string highlighting color stops, instead it should continue.

This problem has recently spread to more than triple quotes:


Controllers doesnt work in some games

Controllers are stuck in ground and completely not working in some games.When i press PS button steam opens and they work.Any suggestion? PLEASE

You have pirate beatsaber? Have you tried to play other vr games to test input? (some free like surgeon simulator vr: meet the medic)

i have simmilar issue, in ex, in pirated skyrim vr, i can press few times "next" and when game tell me to move i cant, i cant see controller in skyrim, in The lab on steam also i cant see controllers, portal stories vr is not working at all, on my oculus dk2 is black screen and controllers also not work, but ex. in VRchat everything working good, Any help for that ?

Please moe conversation to PSMoveSteamVRBrige


Classic site list page was deprecated

Classic site list page was deprecated last year (Oct 29th 2020).
Explanation of "Site list" should be modified.

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

ID: cd224d48-9dab-31ae-6548-2e929bd62d7c
Version Independent ID: 6a98ec78-5f74-266f-61a5-95dfdcf673e9
Content: Find site collection features in the new SharePoint admin center - SharePoint in Microsoft 365
Content Source: SharePoint/SharePointOnline/site-collections-page.md
Service: sharepoint-online
GitHub Login: @kaarins
Microsoft Alias: kaarins

@mitanabe Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

@mitanabe Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

Thanks for your feedback @mitanabe

Thanks for your feedback @mitanabe


[$250] Report preview doesn't show distance merchant for tracked workspace expense

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.70-2
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @neil-marcellini
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1714782868884039
Action Performed:

Go to a workspace chat
Click plus and track expense
Choose distance, enter waypoints, Next, Track Expense

Expected Result:
Expense appears optimistically showing a map, the amount, and the merchant with distance info. After the response the same thing should be shown, although the map is expected to be slightly different.
Actual Result:
Expense appears optimistically showing the amount and the merchant with distance info only, no map. After the response it shows the map and the amount only.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[X] Android: Native
[X] Android: mWeb Chrome
[X] iOS: Native
[X] iOS: mWeb Safari
[X] MacOS: Chrome / Safari
[X] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/38435837/472c31c3-c010-4f3d-85e2-6f5f234d5af3

https://github.com/Expensify/App/assets/38435837/dc5967b1-5e39-475d-a6dc-578f876c923e
Add any screenshot/video evidence

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~017f6ca9bb1a7123b8
Upwork Job ID:<PHONE_NUMBER>858716160
Last Price Increase: 2024-06-10

Issue OwnerCurrent Issue Owner: @

Proposal
Please re-state the problem that we are trying to solve in this issue.
Expense appears optimistically showing the amount and the merchant with distance info only, no map. After the response it shows the map and the amount only.
What is the root cause of that problem?

When we create a track expense, we update childMoneyRequestCount in optimistic data but BE doesn't expect that so after API is complete, the merchant in preview disappears.

https://github.com/Expensify/App/blob/84118d84da7415bf1ee71fbfcc304bffb75a5530/src/components/ReportActionItem/ReportPreview.tsx#L142

We don't create a optimistic receipt as we do here so the preview doesn't show ReceiptGeneric

What changes do you think we should make in order to solve the problem?

Because the track-expense doesn't increase the childMoneyRequestCount, we should get numberOfTransactions here by filtering the transaction that isn't deleted from allTransactions and then use it in the condition to show merchant, description

const numberOfTransactions = allTransactions.filter((transaction) => transaction.pendingAction !== CONST.RED_BRICK_ROAD_PENDING_ACTION.DELETE).length;

let formattedMerchant = numberOfTransactions === 1 ? TransactionUtils.getMerchant(allTransactions[0]) : null;
const formattedDescription = numberOfTransactions === 1 ? TransactionUtils.getDescription(allTransactions[0]) : null;

const shouldShowSingleRequestMerchantOrDescription =
numberOfTransactions === 1 && (!!formattedMerchant || !!formattedDescription) && !(hasOnlyTransactionsWithPendingRoutes && !totalDisplaySpend);

https://github.com/Expensify/App/blob/84118d84da7415bf1ee71fbfcc304bffb75a5530/src/components/ReportActionItem/ReportPreview.tsx#L142
OPTIONAL: We can also count the number of track-expenses and display it in the support text here
https://github.com/Expensify/App/blob/84118d84da7415bf1ee71fbfcc304bffb75a5530/src/components/ReportActionItem/ReportPreview.tsx#L236

We shouldn't increase childMoneyRequestCount of REPORTPREVIEW action when we create a track-expense since it's not the expected from BE and childMoneyRequestCount is also used to display the number of expenses in ReportPreview.

We should update the receiptObject as we do here if the transaction is the distance request

if (isDistanceRequest) {
    receiptObject.source = ReceiptGeneric as ReceiptSource,
    receiptObject.state = CONST.IOU.RECEIPT_STATE.OPEN
}

https://github.com/Expensify/App/blob/84118d84da7415bf1ee71fbfcc304bffb75a5530/src/libs/actions/IOU.ts#L2036
What alternative solutions did you explore? (Optional)
NA

Please re-state the problem that we are trying to solve in this issue.
Report preview doesn't show distance merchant for tracked workspace expense
What is the root cause of that problem?
The inconsistency between the optimistic data and the backend response stems from the handling of childMoneyRequestCount. Initially, during expense creation, the optimistic data sets childMoneyRequestCount to 1, leading to an optimistic display showing only the amount and merchant with distance information but no map. However, upon receiving the backend response, childMoneyRequestCount is reset to 0. Consequently, the optimistic display only shows the map and amount.
Cause:
The getNumberOfMoneyRequests function determines the display of expense details in the optimistic state based on childMoneyRequestCount. This count is set to 1 in the optimistic data during initial expense creation but is reset to 0 in the backend response.
What changes do you think we should make in order to solve the problem?
To ensure consistency between the optimistic and backend states and address the issue of differing displays, we propose using childStatusNum instead of childMoneyRequestCount in the getNumberOfMoneyRequests function.Given that childStatusNum is always set to 1 during expense creation, it provides a reliable basis for determining the display of expense details optimistically.
https://github.com/Expensify/App/blob/9cad71513fc52ab0cfd5ca5a5434770eb6eec7a7/src/libs/ReportActionsUtils.ts#L792
function getNumberOfMoneyRequests(reportPreviewAction: OnyxEntry): number {
return reportPreviewAction?.childStatusNum ?? 0;

}

The map shouldn't be shown optimistically instead ReceiptGeneric should be shown. This is also what we do when we create submit expense distance request but the ReceiptGeneric also isn't shown because we haven't included in optimistic transaction.

@neil-marcellini Is this something we are expecting #41653 (comment)?
Or we show map while online and ReceiptGeneric while offline.

As mentioned in the issue description expected result, it should show the map optimistically (for the online case). While offline we should show a pending view. That's getting handled in this PR https://github.com/Expensify/App/pull/39243. Maybe we can just focus on the merchant info for now, and see if we need to fix the map later?

I plan to review today

Ok right, yep, this needs to be internal. I will try to work on this tomorrow.
Here's the Slack conversation where we decided it should behave the same as a submitted expense, for future reference.

Woops I forgot about this one. I do think it's more of a weekly priority level issue. Setting a reminder to start this next Wednesday.

I'm working on a few too many other issues right now, so I'm going to delay this one and finish those off first.

I found a bit of time this morning and looked into it. Now it seems to be working much better and showing the merchant properly, but the optimistic distance receipt image isn't showing up.
I found that this is false, even though the optimistic data is set correctly for the transaction.
https://github.com/Expensify/App/blob/a3819eea5fccf427709b7a80e382a66ad8348959/src/components/ReportActionItem/ReportActionItemImage.tsx#L77
I think maybe it's a problem where the component isn't updating when looking at this value. Maybe because the transactions aren't automatically updating since they are grabbed by a util function
https://github.com/Expensify/App/blob/ee0fe93cd253468514a2681137df5efc98ed2bcb/src/components/ReportActionItem/ReportPreview.tsx#L146
@Krishna2323 and others, if you want to update your proposals please go ahead. I think it might be exclusively a frontend problem now. Tomorrow I'll update the issue with the current problems.

Ah, actually it looks like the transactionsWithReceipts list is empty until the expense is actually created. I'll look into why that's the case now.

Debug logs
Diff showing log lines
diff --git a/src/components/ReportActionItem/ReportActionItemImage.tsx b/src/components/ReportActionItem/ReportActionItemImage.tsx
index 1251be8399..47564083f3 100644
--- a/src/components/ReportActionItem/ReportActionItemImage.tsx
+++ b/src/components/ReportActionItem/ReportActionItemImage.tsx
@@ -75,6 +75,8 @@ function ReportActionItemImage({
     const {translate} = useLocalize();
     const isDistanceRequest = !!transaction && TransactionUtils.isDistanceRequest(transaction);
     const hasPendingWaypoints = transaction && TransactionUtils.isFetchingWaypointsFromServer(transaction);
+    console.log('Ndebug isDistanceRequest', isDistanceRequest);
+    console.log('Ndebug hasPendingWaypoints', hasPendingWaypoints);
     const showMapAsImage = isDistanceRequest && hasPendingWaypoints;

     if (showMapAsImage) {
diff --git a/src/components/ReportActionItem/ReportPreview.tsx b/src/components/ReportActionItem/ReportPreview.tsx
index c796a267fd..2ee731e1cf 100644
--- a/src/components/ReportActionItem/ReportPreview.tsx
+++ b/src/components/ReportActionItem/ReportPreview.tsx
@@ -145,6 +145,7 @@ function ReportPreview({
     const allTransactions = TransactionUtils.getAllReportTransactions(iouReportID);
     const numberOfRequests = allTransactions.length;
     const transactionsWithReceipts = ReportUtils.getTransactionsWithReceipts(iouReportID);
+    console.log('Ndebug ReportPreview transactionsWithReceipts', transactionsWithReceipts);
     const numberOfScanningReceipts = transactionsWithReceipts.filter((transaction) => TransactionUtils.isReceiptBeingScanned(transaction)).length;
     const numberOfPendingRequests = transactionsWithReceipts.filter((transaction) => TransactionUtils.isPending(transaction) && TransactionUtils.isCardTransaction(transaction)).length;

@@ -157,6 +158,7 @@ function ReportPreview({
         ReportUtils.hasActionsWithErrors(iouReportID);
     const lastThreeTransactionsWithReceipts = transactionsWithReceipts.slice(-3);
     const lastThreeReceipts = lastThreeTransactionsWithReceipts.map((transaction) => ({...ReceiptUtils.getThumbnailAndImageURIs(transaction), transaction}));
+    console.log('Ndebug lastThreeReceipts', lastThreeReceipts);
     const showRTERViolationMessage =
         numberOfRequests === 1 &&
         TransactionUtils.hasPendingUI(allTransactions[0], TransactionUtils.getTransactionViolations(allTransactions[0]?.transactionID ?? '-1', transactionViolations));
diff --git a/src/libs/actions/IOU.ts b/src/libs/actions/IOU.ts
index 6a9427e884..b49d7acb96 100644
--- a/src/libs/actions/IOU.ts
+++ b/src/libs/actions/IOU.ts
@@ -2213,6 +2213,7 @@ function getTrackExpenseInformation(
         isDistanceRequest ? {waypoints: CONST.RED_BRICK_ROAD_PENDING_ACTION.ADD} : undefined,
         false,
     );
+    console.log('Ndebug getTrackExpenseInformation optimisticTransaction.pendingFields.waypoints', optimisticTransaction?.pendingFields?.waypoints ?? '');

     // If there is an existing transaction (which is the case for distance requests), then the data from the existing transaction
     // needs to be manually merged into the optimistic transaction. This is because buildOnyxDataForMoneyRequest() uses `Onyx.set()` for the transaction

Logs
index.ts:77 Ndebug ReportPreview transactionsWithReceipts []
index.ts:77 Ndebug lastThreeReceipts []
Log.ts:69 [info] Navigating to route - {"path":"/r/1334498600760270"}
Log.ts:69 [info] [Onyx] merge called for key: lastVisitedPath hasChanged: false - ""
Log.ts:69 [info] [Onyx] merge called for key: policyRecentlyUsedCategories_EFC0F810CE24DD45 properties: 0 hasChanged: true - ""
Log.ts:69 [info] [SequentialQueue] 'ReadNewestAction' command queued. Queue length is 2 - ""
Log.ts:69 [info] [SequentialQueue] 'ReadNewestAction' command queued. Queue length is 2 - ""
Log.ts:69 [info] [Onyx] merge called for key: isLoadingReportData hasChanged: true - ""
OnyxUpdates.ts:52 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:69 [info] [DeferredUpdates] Processing deferred updates - {"lastUpdateIDFromClient":15880}
Log.ts:69 [info] [OnyxUpdateManager] Applying update type: https with lastUpdateID: 15884 - {"command":"TrackExpense"}
OnyxUpdates.ts:28 [OnyxUpdateManager] Applying https update
Log.ts:69 [info] [Onyx] merge called for key: OnyxUpdatesLastUpdateIDAppliedToClient hasChanged: true - ""
OnyxUpdates.ts:52 [OnyxUpdateManager] Done applying HTTPS update
index.ts:56 [OnyxUpdateManager] Done applying all updates
Log.ts:69 [info] [Onyx] set called for key: onyxUpdatesFromServer hasChanged: true - ""
SequentialQueue.ts:158 [SequentialQueue] Unpausing the queue and flushing 2 requests
Log.ts:69 [info] [Onyx] set called for key: nvp_expensify_recentWaypoints properties: 0,1,2,3,4,5,6 hasChanged: false - ""
Log.ts:69 [info] [Onyx] set called for key: nvp_quickActionGlobalCreate properties: action,chatReportID,isFirstQuickAction hasChanged: false - ""
Log.ts:69 [info] [Onyx] set called for key: reportNextStep_2299535202353748 properties: message,nextReceiver,requiresUserAction,showForExpense,showForMobile,showUndoSubmit,title,type hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: report_2299535202353748 properties: chatType,lastActorAccountID,lastMessageText,lastVisibleActionCreated,managerID,parentReportActionID,parentReportID,participants,policyID,reportID,reportName,stateNum,statusNum,type,visibility,avatarUrl,chatReportID,currency,description,errorFields,fieldList,hasOutstandingChildRequest,hasOutstandingChildTask,hasParentAccess,invoiceReceiver,iouReportID,isCancelledIOU,isDeletedParentAction,isOwnPolicyExpenseChat,isPinned,isWaitingOnBankAccount,lastActionType,lastMentionedTime,lastMessageHtml,lastReadSequenceNumber,lastReadTime,lastVisibleActionLastModified,nonReimbursableTotal,notificationPreference,oldPolicyName,ownerAccountID,participantAccountIDs,permissions,policyAvatar,policyName,total,tripData,unheldTotal,visibleChatMemberAccountIDs,welcomeMessage,writeCapability,pendingFields hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: reportActions_2299535202353748 properties:<PHONE_NUMBER>539870793,3793393605941992724 hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: personalDetailsList properties: 1793 hasChanged: false - ""
Log.ts:69 [info] [Onyx] merge called for key: policyRecentlyUsedCategories_EFC0F810CE24DD45 properties: 0 hasChanged: false - ""
Log.ts:69 [info] [Onyx] merge called for key: report_1334498600760270 properties: chatType,lastActorAccountID,lastMessageText,lastVisibleActionCreated,managerID,parentReportActionID,parentReportID,participants,policyID,reportID,reportName,stateNum,statusNum,type,visibility,notificationPreference,maxSequenceNumber hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: reportActions_1334498600760270 properties:<PHONE_NUMBER>707138608 hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: transactions_7404131587943722096 properties: amount,billable,cardID,category,comment,created,currency,filename,hasEReceipt,merchant,modifiedAmount,modifiedCreated,modifiedCurrency,modifiedMerchant,originalAmount,originalCurrency,parentTransactionID,receipt,reimbursable,reportID,status,tag,transactionID,pendingAction,pendingFields hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: report_907647355674614 properties: pendingFields,errorFields hasChanged: true - ""
Log.ts:69 [info] [Onyx] merge called for key: reportActions_907647355674614 properties:<PHONE_NUMBER>906076195 hasChanged: true - ""
Log.ts:69 [info] Making API request - {"command":"ReadNewestAction"}
index.ts:77 Ndebug ReportPreview transactionsWithReceipts [{…}]0: {amount: -2036, comment: {…}, created: '2024-06-26', currency: 'USD', iouRequestType: 'distance', …}length: 1[[Prototype]]: Array(0)
index.ts:77 Ndebug lastThreeReceipts [{…}]
index.ts:77 Ndebug ReportPreview transactionsWithReceipts [{…}]
index.ts:77 Ndebug lastThreeReceipts [{…}]
index.ts:77 Ndebug isDistanceRequest true
index.ts:77 Ndebug hasPendingWaypoints false

There's a fix for it. I also want to see if I can make the route render immediately vs taking a moment to load.

@parasharrajat the PR is ready for review.

It looks like the PR was never C+ reviewed so I don't believe that any payment is due. Closing.


Auto close issue

Using Chrome Version:  51.0.2704.103
When using code to launch chrome and go to webpage in MS Access VBA, chrome automatically closes when code execution has complete.
Is there a way around this from happening?

Insert New Module And Declare Public Variable For Selenium Object
Public selenium As Object    'Late Binding
In Subroutine Or Function Body :
If selenium Is Nothing Then
	Set selenium = CreateObject("Selenium.WebDriver")
	selenium.AddArgument "--start-maximized"
	selenium.start "chrome", "http://google.com"
End If
selenium.Get "https://github.com/"
...

Sorry For My Poor English

I tried the code above, and still happens.   After code is done executing, the Chrome browser is automatically closed.  User is unable to interact with Chrome after the code executes.
If I use Selenium-VBA, with the latest ChromeDriver, this doesn't happen.  This only started happening with Selenium-Basic.

its the same issue with me and i dint find a solution so far

I also have the same problem, has anyone found the solution?

For Chrome/Edge, try setting the option "detach" to true.
Here's what the capabilities json should look like for Edge:
{
    "browserName": "msedge",
    "alwaysMatch": {
        "ms:edgeOptions": {
            "detach": true
        }
    }
}

And for Chrome:
{
    "browserName": "chrome",
    "alwaysMatch": {
        "goog:chromeOptions": {
            "detach": true
        }
    }
}


feat: add support for stroke width and other customizations

Add stroke width support for svg icons, css and other customizations

[x] Add new prop customise<EMAIL_ADDRESS>[x] Add example of customise stroke width in playground for svg and css

example of icons that support stroke-width:
https://tablericons.com/
https://lucide.dev/icons/
nuxt.config.ts:
export default defineNuxtConfig({
  icon: {
    customise: (content: string, name: string, prefix: string, provider: string) => {
       return content.replace(/stroke-width="[^"]*"/g, `stroke-width="2"`);
    }
  }
})

component Icon:
<script setup lang="ts">
const stroke = ref(0)

const customise = (content: string) => {
  return content.replace(/stroke-width="[^"]*"/g, `stroke-width="${stroke.value}"`);
}
</script>

<Icon name="tabler:tag" :customise />

@antfu
Example:
https://stackblitz.com/~/github.com/ezequidias/icon

Example: https://stackblitz.com/~/github.com/ezequidias/icon (branch: feat/add-prop-stroke-svg)

This example fails.

Here the main repo wasn't working for me either!
I just updated the main repo, and now it's working! see the main branch and feat/add-prop-stroke-svg

Still doesn't work. Can't test properly because I'm on phone and will not have access to computer for few more days, code seems good though.

i've tested this on nuxt.config.ts. it's not working but it does work if i pass the customize function in component level. how do i get it work on the global level.
icon: {      mode: 'css',      customize: (content: string, name?: string, prefix?: string, provider?: string) => { 	return content.replace(/stroke-width="[^"]*"/g, stroke-width="1");      },       .... }

@kamaroolkarim #232


Expose dependencies to transforms [WIP]

This builds on #7672 to expose dependencies of the transformed artifact to the transform operation.

Let's finish this as part of #7672 instead.


RFC | Is there any way to access the webpack config?

How do you envision this feature/change to look/work like?
Sometimes I wanna configure the webpack to satify my own requirement, Is there any to configure? cuz I look at the docment but I'm not found the way
What is the purpose of this change/feature? Why?
e.g. I wanna copy some static html to the build assets
(OPTIONAL) Example implementations
No response
(OPTIONAL) Contact Details
No response
Verify canary release

[X] I verified that the issue exists in plasmo canary release

Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems.

This looks like it was built using parcel, and I wanted the configuration items to be open for more flexibility

We will publish an example on how to do this using the url: scheme soon. And yes, Plasmo uses Parcel underneath

We will publish an example on how to do this using the url: scheme soon. And yes, Plasmo uses Parcel underneath

thz ur effort, hope to see it soon

@ColdSauce
It seems not work for my situation. I wanna import the url of html in my content-script. and in this html that contains a script like <script type="module" src="index.js"></script>,  But it turns to <script src="/audio.867af612.js" defer=""></script> after complied. so that I can not excute the index.js.
so u should turn it to <script src="chrome-extension://xxx/audio.867af612.js" defer=""></script>  i think

Are you able to do something like this: main world script to solve your problem? Since it seems you'd like to put index.js into the main world.

@ColdSauce
It's not useful to me. cuz i need an iframe to isolate my code to bypass some of the website's strategies.
so i need a url of a html to achieve my prupose

@ColdSauce It's not useful to me. cuz i need an iframe to isolate my code to bypass some of the website's strategies. e.g. play a audio
so i need a url of a html to achieve my prupose

You should inject this index.html page from your content-script, it will work imo (as reported by a community member on Discord)

@ColdSauce It seems not work for my situation. I wanna import the url of html in my content-script. and in this html that contains a script like <script type="module" src="index.js"></script>, But it turns to <script src="/audio.867af612.js" defer=""></script> after complied. so that I can not excute the index.js. so u should turn it to <script src="chrome-extension://xxx/audio.867af612.js" defer=""></script> i think

Regarding this, can you try <script type="module" src="url:./audio.ts"></script>

@louisgv
thz ur suggest. It worked for me

@louisgv I'd like to change the parcel config, to remove all the console.log statements during build time. Is there a way to do this in plasmo?

You can pipe the stdout to /dev/null