Thank you

I am a native developer, but as I have just learned React Native, I am not very good at it
This library is the only better rich text editor I have found, but currently it has too few features and only supports bolding, tilting, and highlighting. May I ask if it is possible to add more features?

Thank you for your feedback and I appreciate your interest.
At this stage, the library is still in beta and not stable 🚫, and there is a lot of work that needs to be done, which is why the feature set is somewhat limited.
I created this library to explore the possibility of native support for rich text in React Native. Although I don't have plans to add more features, the library is fully extensible.

I'm sorry to hear this news
This library is really great, and I am currently exploring how to use it. Even without adding more features, it is still a great implementation method
wish you good luck


Select does not allow scroll with a long list

Hello,
I am trying to create a custom component for the user to provide his birthday since the Date Picker component does not allow selecting the year.
The customer component has a Select component that will allow the user to select a certain year. However, it seems that there is no scroll in the Select component to allow the user to scroll through the values if the list is large.

Is this a bug or am I doing something wrong?

I was able to fix it by following this guide:
https://www.radix-ui.com/docs/primitives/components/select#constrain-the-content-size
Seems to be a workaround but it's ok

I was able to fix it by following this guide:
https://www.radix-ui.com/docs/primitives/components/select#constrain-the-content-size
Seems to be a workaround but it's ok


For plugin resolution, only apply the Java ecosystem schema once

@bot-gradle test this

OK, I've already triggered the following builds for you:

PullRequestFeedback build

@bot-gradle test and merge

OK, I've already triggered a build for you.


Increase test code coverage.

Lots of filling of gaps and some refactoring. Lots more to do.

Add coverage & build badges to both master & develop branches.
Remove unit tests from code coverage. Slipped in at some point.
Based on code coverage, eliminate dead code in NSURLRequest.
First unit tests for session manager for streams & sessions.
Backfill a previous race condition bug around queuing stream to one pool but it
opening in another.

Looks good. Thanks for all the tests :+1:


Add plugin to Gradle plugin portal

It'd nice if the plugin is available in the Gradle plugin portal, so we can apply the plugin with the plugins DSL. Thanks 😄

Thank you for the helpful link. The plugin approval is now pending on the gradle plugin portal.
Let's see how this works out.

the plugin is now available. https://plugins.gradle.org/plugin/de.timfreiheit.resourceplaceholders
unfortunately the plugins dsl can not be used at the moment. The plugin must be applied after the android plugin which seems not to be possible using the dsl.
I need to invest further if this can be solved.


Fixed #167, issue with quotes and double quotes

Quotes in string started a new quote instead of counting as a normal character.
Fixing #167

Thanks a lot for a bug report and fix!

Merged manually


fix: ensure config for logging is present

Description
Get the Grafana, Loki, and Promtail containers running again.
Motivation and Context
They ain't running now.
How Has This Been Tested?
Manually
Closes #110

Closes #110


blacklist porn proxy sites

sites like in #763

Bad idea. You realise that they aren't just for unblocking porn right?

@anupritaisno1 Blocking porn proxy sites won't affect all the proxy sites which for browsing some specific blocked sites.

To play devils advocate the majority of free proxies at best track/record everything you do, and at worst actively inject malware into the content [1][2]. But on the other side, people do still use these services and adding them to an adware + malware list could take them by surprise. Porn blockers regularly block proxies, so IMHO these would be right at home in the port extension list. But that would be up to one of those maintainers
[1] https://krebsonsecurity.com/2015/06/free-proxies-arent-necessarily-free/#more-31322
[2] https://www.csoonline.com/article/2938914/microsoft-subnet/shady-free-proxies-and-tor-exit-nodes.html

@StevenBlack What's the point in blocking all porn sites and leaving a loophole so as to visit the ones we blocked in the first place! :grinning:

Some similar arguments have been made before:
https://github.com/StevenBlack/hosts/issues/569
https://github.com/StevenBlack/hosts/issues/615
Proxies/anonymizers and torrents could all be consolidate to a single extension. I think an extension that automatically combines porn, gambling, and all of these would be a good standard parental control list, which is what I think most people are thinking about when they raise issues like this. And since this has come up numerous times, I think starting a discussion around starting such a list might be warranted.

I think we can get a pretty good head start on the torrents with my previous comment in the other issue:
https://github.com/StevenBlack/hosts/issues/569#issuecomment-388572787
For proxies, VPNs, and other anonymizers, I think we should focus on domain lists of web proxy portals and websites that provide lists of available proxy and VPN servers.

added all the mentioned and submitted a PR #763
feel free to add more to the list as it comes by.

@StevenBlack, this can be closed :+1:

MERRY CHRISTMAS ALL AND HAPPY NEW YEAR
Fingers crossed to be a better one 👍

[Closing]

I've been looking for a block list specifically for VPN and Proxy sites. I haven't been able to find one other then this minor list. Doesn't anyone else know of a list like that

Please make hosts for pubgm cheat
Pada tanggal Sab, 7 Sep 2019 00:58, Daniel<EMAIL_ADDRESS>menulis:

I've been looking for a block list specifically for VPN and Proxy sites. I
haven't been able to find one other then this minor list. Doesn't anyone
else know of a list like that
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/StevenBlack/hosts/issues/754?email_source=notifications&email_token=ALHJIG4LUFPL5XOMYI75A2TQIKK5TA5CNFSM4FPERXQ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6DTCVY#issuecomment-528953687,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALHJIGYTGSDNKBT2HG7QD53QIKK5TANCNFSM4FPERXQQ
.

All of the PUBGM cheats I've seen are based on overwriting the game data files, .OBB, etc., and don't require connecting to any external connections. If you have a cheat that requires you to do so, you're probably using scam software that is cryptomining in the background or auto-clicking ads.


before_action fixed with SymbolProc gets broken

this line
    before_action(only: :some_action) { |c| c.some_method }

gets fixed to
    before_action(only: :some_action, &:some_method)

which breaks the functionality of the before_action

What kind of error do you get when this code tries to execute. I initially thought that the issue is the symbol proc as the last parameter of a multi-argument method. I did not realize that this was valid, but there are tests in the code that make it seem as though this is valid.
Alternatively, this could be related to #3071 where ActiveRecord or ActiveModel doesn't seem to implement the to_proc method in a way that works with symbol procs.

yea, getting same error as in #3071

That is a shame. I could be wrong, but I am still leaning toward this needing to be fixed in ActiveSupport. For the time being, go ahead and add before_action, after_action, and around_action to the list of IgnoredMethods for this cop. If we get enough reports of this being an issue, we can add these methods and the methods mentioned in #3071 to the default list of ignored methods.

I recommend closing this as a dupe of #3071.

The issues look very similar.


This looks great, also wanted to work on something similar.

Just let me know where I can help. I am currently reading the code. Also, the ChatAgent never trims the chat log during the conversation(self.messages). If I understood the code correctly. I can fix that if you want.

Yes you are right, there’s no handling for token limits yet in the code. And thank you, I would appreciate help :)


Add test coverage

lots of people struggle to get it working with transpilers

You can find an example here:
https://github.com/kriasoft/babel-starter-kit/blob/master/package.json#L62 (code coverage with Mocha and Istanbul)
A PR is welcome!

$ yarn test -- --coverage


Documentation error...

Was poking around the documentation and noticed a broken link:
Starting at https://docs.magicmirror.builders/development/core-module-file.html#this-updatedom-speed-options
if you click on animate guide in the table, it'll go to https://docs.magicmirror.builders/modules/animate#animatein or https://docs.magicmirror.builders/modules/animate#animateout and report "No input file specified"

Thx for the report, do you want to fix it with a PR?

I don't know how the documentation system works, and would prefer that if
the page is around somewhere, it could be fixed by someone knowledgeable.
-- B

ok, will create a PR myself then.

Hi,
Thanks for this report.
I will correct each link this evening
Note:
I think vue press is not up-to-date because in local it's works
@MichMich

@rejas if you do it perfect ;)


Passing JS Arrays to Java object methods seem always to be returned as TruffleMap

Imagine the following Java class:
public class CallMe {
  public void call(Object name) {
    System.out.println(name);
    System.out.println(name.getClass());
  }
}

Bootstrap the JS engine and add an instance of this class to the context bindings:
Context ctx = Context.newBuilder("js").allowAllAccess(true).build();
ctx.getBindings("js").putMember("cb", new CallMe());

Now when working with this interop between JS and java I observe the following when passing a JS Object:
ctx.eval("js", "cb.call({'foo': 'bar'});");
    // prints:
    // {foo=bar}
    // class com.oracle.truffle.api.interop.java.TruffleMap

Which feels correct, the JS Object is mapped to a java.util.Map which resembles good enough to the original source JS type.
Then I execute the same test with an JS array:
ctx.eval("js", "cb.call(['foo', 'bar']);");
    // prints:
    // {0=foo, 1=bar}
    // class com.oracle.truffle.api.interop.java.TruffleMap

I understand that a JS Array by nature is a JS Object however I'd expect that in this case there would be some logic to wrap it in a type that implements java.util.List.
The issue of always having a Map is that on the java side there is no way to know what was the source original type, as for example, the keys on TruffleMap are always of type String so no distinction can be made there, as well there are no high level helpers like:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray
That could be used from the java side.

There are some workarounds ;) but it does feel like an hack. For example use the following code at start up:
    Value isObject = ctx.eval("js", "function (obj) { return typeof obj === 'object'; }");
    Value isArray = ctx.eval("js", "function () { return Array.isArray; }").execute();

And then when values get passed the target object needs to be aware of those 2 functions and perform the 2 checks to decide what is the underlying type.
This only detects the type it does not cast it to the desired type though.

If you are using an Object type signature then the polyglot API tries to map to a reasonable Java type. The semantics are defined here: http://www.graalvm.org/truffle/javadoc/org/graalvm/polyglot/Value.html#as-java.lang.Class-
See section "Object target type mapping".
JavaScript arrays are values with members and array elements. According to the semantics they are mapped to Maps. We would really have liked to map to something that is List and Map at the same time, unfortunately you cannot implement Map and List at the same time (a design flaw in the Java collections API).
There are four ways to check for that its an array:

The one you proposed
Map your signature to org.graalvm.polyglot.Value. Which supports to be called with any polyglot Value and has fine-grained APIs.

public class CallMe {
  public void call(Value v) {
    if (v.isArray()) {
      List list = v.as(List.class);
    }
  }
}

You can convert your Object to a polyglot value using the Context like this:

public class CallMe {
  public void call(Object v) {
    System.out.println(context.asValue(v).isArray());
  }
}

Use overloads:

  public void call(List v) {
    // used if its a list
  }
  public void call(Object v) {
   // used for everything else
  }

Personally I think solution 4 looks the cleanest if you don't want to use the polyglot API for your APIs. Otherwise 2 probably provides the highest flexibility.
Hope this helps.

Sorry solution 4 seems to be broken in rc1. We will fix ASAP.

For my specific case option 3 (which i wasn't aware of) seems the best. The reason is that the API exposing the method is external to my project (so I can't change it) but my project provides a functional interface that is called after the object is received on that library. So I can bind the script context to that closure and use it there.
And it sure looks less hacky than what I was attempting to achieve!

Option 4 has been fixed (https://github.com/oracle/graal/commit/edd49fadfcd51db388595296914e4472059d5f51) and will work in 1.0.0-rc2.

@pmlopes are you satisfied with the above-mentioned solution? If yes, can we close this issue?

@woess :+1:

I have situations like this:
  public void call(List v) {
    // used if its a JS array
  }
  public void call(Map v) {
   // used if its a JS object
  }

And GraalVM raises this error below:
TypeError: invokeMember (init) on JavaObject[org.netuno.tritao.resource.Val@2eadd8cc (org.netuno.tritao.resource.Val)] failed due to: Multiple applicable overloads found for method name init (candidates: [Method[public org.netuno.psamata.Values org.netuno.tritao.resource.Val.init(java.util.List)], Method[public org.netuno.psamata.Values org.netuno.tritao.resource.Val.init(java.util.Map)]], arguments: [DynamicObject<JSArray>@7276fac1 (DynamicObjectBasic)])

This behavior is very annoying and complicate a lot to use JS arrays with Java already existing methods.
And is impossible to change every situation like that to receive an Object instead of Map.
And even if change all my methods to the only Object will not be a solution because the object received is a PolyglotMap:
public void call(Object m) {
    String objType = "";
    if (m instanceof Iterable) {
        obj = "List";
    } else if (m instanceof Map) {
        obj = "Map";
    }
    System.out.println(obj);
}

It is impossible for to me change all situations that already exist to hack this behavior.
Why GraalVM does not send a PolyglotList when it is a JS Array!?
With situations like this, I don't have a polyglot Java implementation... with this I wonder if tomorrow I need to integrate Python or Ruby what will be the changes in Java source that will be necessary...?
In my case, my decision goes to not support JS arrays, because seem like a limitation of the GraalVM and hack Java methods aren't a good practice.
For me, the Java code is to be reused to any language and not tied to a scripting language.

JavaScript arrays are values with members and array elements. According to the semantics they are mapped to Maps. We would really have liked to map to something that is List and Map at the same time, unfortunately you cannot implement Map and List at the same time (a design flaw in the Java collections API).

I understand the "design flaw in the Java collections API", but for me, GraalVM needs to find a solution to create better compatibility with all existing Java code.
And GraalVM is awesome anyway, great job!

@eduveks, I think you can solve the situation you described using a polyglot custom type mapping - something like:
HostAccess hostAccess = HostAccess.newBuilder()
    .targetTypeMapping(Value.class, List.class, (v) -> v.hasArrayElements(), (v) -> v.as(List.class));
    .build();

For more details, see https://github.com/graalvm/graaljs/issues/94#issuecomment-478975001.

@ispringer thank you for these insights, really helped.
With your suggestion I'm finally able to make all working like a charm, this is my final code:
        HostAccess hostAccess = HostAccess.newBuilder()
                .allowPublicAccess(true)
                .targetTypeMapping(
                        Value.class, Object.class,
                        (v) -> v.hasArrayElements(),
                        (v) -> transformArray(v)
                ).targetTypeMapping(
                        Value.class, List.class,
                        (v) -> v.hasArrayElements(),
                        (v) -> transformArray(v)
                ).targetTypeMapping(
                        Value.class, Collection.class,
                        (v) -> v.hasArrayElements(),
                        (v) -> transformArray(v)
                ).targetTypeMapping(
                        Value.class, Iterable.class,
                        (v) -> v.hasArrayElements(),
                        (v) -> transformArray(v)
                )
                .build();

        context = Context.newBuilder(permittedLanguages)
                .allowAllAccess(true)
                .allowHostAccess(hostAccess)
                .build();

The trick here is mapping to all methods with inputs like List, Collection and Iterable, and to Object when is an array with nested JS object.
Bellow is my methods to transform into List and Map, Map because the JS objects inside arrays don't works if not transformed too.
    private Map transformMembers(Value v) {
        Map map = new HashMap();
        for (String key : v.getMemberKeys()) {
            Value member = v.getMember(key);
            if (member.hasArrayElements() && !member.isHostObject()) {
                map.put(key, transformArray(member));
            } else if (member.hasMembers() && !member.isHostObject()) {
                map.put(key, transformMembers(member));
            } else {
                map.put(key, valueToObject(member));
            }
        }
        return map;
    }

    private List transformArray(Value v) {
        List list = new ArrayList();
        for (int i = 0; i < v.getArraySize(); ++i) {
            Value element = v.getArrayElement(i);
            if (element.hasArrayElements() && !element.isHostObject()) {
                list.add(transformArray(element));
            } else if (element.hasMembers() && !element.isHostObject()) {
                list.add(transformMembers(element));
            } else {
                list.add(valueToObject(element));
            }
        }
        return list;
    }

Now I can finally support implementations like this:
const data = _val.init(['zp', 'kz', { up: [1, 3, 4] }]);
_out.json([
    {
        aa: [1, 2, 3, data],
        dt: data,
        bb: {ar: ['a', 'b', {sss: [1, 3, 4]}]}
    }
]);

Where the _val and _out are Java Objects.
And even with Java Objects inside JS Array or JS Object works well too, see the "data" variable.
Here is my final result:
[{"aa":[1,2,3,["zp","kz",{"up":[1,3,4]}]],"dt":["zp","kz",{"up":[1,3,4]}],"bb":{"ar":["a","b",{"sss":[1,3,4]}]}}]

@ispringer @eduveks,
I am having the same issue where i am returning an array of object from my javascript code and here on java side it is coming as empty polyglotmap, i tried the above solutions but none worked for me, can you guys help?

@tailangankur,
I've shared my core integrations with GraalVM used in netuno.org, here:

https://github.com/oracle/graal/issues/3260#issuecomment-816681252

May this help you.
If you test the Netuno Platform you can create a JS web service and will be able to try and see the results of my above sample code.


FIX: thread cleanup timing

Must wait for current step() call to finish before running anything in cleanup()

Moved stopThread to before rest of cleanup in bp.animation


Target sessionExpired check to relative URLs only

Fixes #1189 (or at least hopefully improves it - won't be perfect e.g. if proxies are in play)

I am happy to test this more if merged on both deployed Toolbox (to ensure we still get the special message when desired) and in a CORS use case I encoutered with a client app (where we don't want this prompt).


using Spotify API too

As you described here you switched from the usage of the Spotify API to the Deezer API.
Is this because it requires an authentication process with a Client-ID and Client Secret?
Because we could let the user enter by himself through within the config file, like so:
popularity:
    spotify_client_id:<PHONE_NUMBER>
    spotify_client_secret:<PHONE_NUMBER>

Please let me know what you think about that and if I am missing anything.
I would have a look at it then and maybe I will create a pull request too :)

Yes, in the past you could access static data from Spotify without any authentication and rate limiting. That changed when they introduced their new web API.
While the client id and secret should technically be enough for authentication, the process isn't exactly simple, especially since this isn't a web app. You'd probably need to start a local webserver just to obtain the code and access token (or have the user manually do it) from the callback, save it somehow, and then constantly make sure the access token is still valid and refresh it when needed.
The full process can be seen here

https://beta.developer.spotify.com/documentation/general/guides/authorization-guide/

I'm sure it's possible to do, but at the time it seemed easier to just switch to Deezer's easily accessible API. You're very welcome to create another pull request if you want. I can't say when I'll be able to look at it though, as I'm still a bit preoccupied at the moment.

thanks for your answer!
I just found a "light weight python library for the Spotify Web API" named spotipy.
Can you have a quick look at this and tell me if this could be possible with that library to make the authorization process easier? I ask you because I am pretty new to python.
Maybe I will have a deeper look at it and create a pull request later.


improve @-mention matching with username normalization

normalize mention text for better matching. note that the change to keybase1.TeamNameFromString matches the server side logic for normalizing the team name during parsing.
before:

after:

(test flake unrelated)


Add imath 3.1.9

Add Imath 3.1.9

Note that module names have to be lowercase. So this needs to be named imath instead of Imath (which is good since I really thought this was called lmath at first glance)

you still need to rename the directory to imath, and it looks like one of the patches has a wrong integrity value.

@Wyverald Fix it!
There is now release archive for Imath


fix: exit with 1 if test dir/file does not exist

Currently we log on errors in the try/catch block the whole error including stack trace. This might be confusing for the user, should we maybe only log the error.toString() instead?
Example that missing dir/file will return a 0: https://github.com/microsoft/playwright-runner/runs/1076478989#step:11:5

Currently we log on errors in the try/catch block the whole error including stack trace. This might be confusing for the user, should we maybe only log the error.toString() instead?

We can try that, yes. We can add --verbose mode where we dump the stack.

Currently we log on errors in the try/catch block the whole error including stack trace. This might be confusing for the user, should we maybe only log the error.toString() instead?

We can try that, yes. We can add --verbose mode where we dump the stack.

Maybe use the existing --debug? Otherwise it could end up confusing.

Existing --debug is running tests in process in band. It is for better breakpoint debugging on setups before latest VS Code, so it is a bit different.
Since we run user code, I think it is important to report exceptions as a part of the error. But we should probably do so through the reporter interface (and per file where possible). So we exit with error code 1, silently, and reporter gets an error details. Wdyt?

Existing --debug is running tests in process in band. It is for better breakpoint debugging on setups before latest VS Code, so it is a bit different.
Since we run user code, I think it is important to report exceptions as a part of the error. But we should probably do so through the reporter interface (and per file where possible). So we exit with error code 1, silently, and reporter gets an error details. Wdyt?

In this case its before we do actually the file parsing or to be precise its during the initial finding. So we don't have a file which we could use to report a line in mind. Fine with treating --debug and --verbose different. I would say lets let it as it is and land it? The case should not happen very often I guess.

Yes, the change lgtm as is!


cli: Add valid suffixes for remaining duration options

#27733 added (ns|us|ms|s|m|h) to the descriptions of some
duration options, but not all. Add it to the remaining options for
consistency.

Maybe we don't need to explicitly mentione ns and us?

/cc @thaJeztah

adding to 1.13 to have consistency

Maybe we don't need to explicitly mentione ns and us?

Yes I'm actually a bit in doubt (but help me make a decision!) if it's too much information (although technically correct); in what situations would someone use us, ns, or even ms for (e.g.) --stop-grace-period.
I do agree this must be documented somewhere, wondering what the best solution is. Perhaps a central description of each datatype ("a duration is an integer ... valid units are ...")

discussed with @vieux, let's merge as-is, and we can discuss other options in future :)
LGTM

LGTM


Fix typo in Cloudstack e2e

Issue #, if available:
Description of changes:
Fixes small typo
Testing (if applicable):
Documentation added/planned (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/test eks-anywhere-presubmit

/cherrypick release-0.17

/approve


thor doesn't seem to make more than 105 parallel connections, even with -C 10000

I'm trying to test my server with the command thor --masked --amount 10000 -C 10000 ws://localhost:8080/hello/. The report is the following:
Online               30299 milliseconds
Time taken           30299 milliseconds
Connected            9864
Disconnected         0
Failed               136
Total transferred    13.87MB
Total received       13.86MB

Durations (ms):

                     min     mean     stddev  median max
Handshaking          5       6387       4898    4768 16523
Latency              0       3             6       2 112

Percentile (ms):

                      50%     66%     75%     80%     90%     95%     98%     98%    100%
Handshaking          4768    8278    10867   11795   14049   15224   16041   16287   16523
Latency              2       3       4       5       7       9       12      15      112

Received errors:

129x                 connect ECONNRESET <IP_ADDRESS>:8080
7x                   read ECONNRESET

It says it did (almost) 10k connections. But the server indicates that they were not made all in parallel; instead, at most 105 connections were opened at the same time.
Is there a way to force thor to make a specific number of parallel connections? Because the main reason I need it is to test how many connections my server can keep at the same time.
(Also, FYI — I'm using Jetty for the Websocket server implementation).

If anyone knows the answer to this I would also be really interested.

yeah, same happening with me. Around 80 connections opened in parallel. Either its in short batches.

New updates at this issue? I am using ratchet, connections reach 400-500 then start to disconnect.


Make signout as non-blocking as possible

Fixes https://linear.app/sourcegraph/issue/QA-183/jetbrains-user-doesnt-get-sign-out-immediately-when-logged-in-using
Test plan

Start IntelliJ and open Cody panel
Go to the Account tab
Click Sign Out

Expected result:
You should see loading indicator when sign out is processed.
Whole process should not take more then 1-2 sec.

sorry for the noise, we are fixing the backport bot error messages


root dir

started toward #294

Samie suggested a much simpler solution :-)

moved to new branch/PR (https://github.com/WasatchPhotonics/ENLIGHTEN/pull/312)


Upgrade to working adm-zip

adm-zip seems broken: https://github.com/cthackers/adm-zip/issues/32

Should be completed awhile ago.


install is broken

Coverage increased (+0.008%) to 91.171% when pulling 1f4242f05c5b92b64c8fadb28651df6e87fae7e8 on antgonza:fix-build into 7d4ad951f805f629dff915153a9da861b74da23a on qiita-spots:dev.


[Bash] Use $(...) instead of legacy ...

As proposed by static analysis tool:
https://github.com/koalaman/shellcheck/wiki/SC2006

Can one of the admins verify this patch?

Closing these all out. Mind making all these changes in one pull request? It's easier to run through tests that way.


CSP Violation with jexcel_contextmenu

I've run into an issue with Chrome in an electron app refusing to execute the inline handlers of the context menu.
Chrome is returning the following when clicking any of the context menu items... the console shows the following:
view:///\app\index?_view=%5Capp%5Cindex#:1 Refused to execute inline event handler because it violates the following Content Security Policy directive: "script-src file: root:  'unsafe-eval'". Either the 'unsafe-inline' keyword, a hash ('sha256-...'), or a nonce ('nonce-...') is required to enable inline execution.
So from what I discovered chrome is blocking the onclick event because it is defined inline...
Do you have any suggestions for a work around this without loosening the whole CSP for the whole page or possibly change the way the contextMenu is rendered to hook up the onclick from the jquery.jexcel.js file?  Glad to help resolve if I can.
Thanks much for your help and for a handy library.

Added pull #257 to potentially address the CSP concern.


Create utility web module

This would be a plain JAR that factors elements common to all web modules:

DropWizard dependencies
the "no admin" server factory that's currently duplicated in a few modules: GraphqlApiServerFactory, AuthApiServerFactory, RestApiServerFactory (see #429)
create a utility to unify the creation of the Response with the Error entity so that status codes match in both, and thus fix all the places where Error is created without a status code.

This is rendered moot by v2 architecture.


fix(ngController): allow bound constructor fns as controllers

Fixes #10784

hmm, it's really too bad we don't have Reflect.IsConstructor() yet, that would make this a lot easier.

actually you know what, I think this is still a kind of dumb idea, since the bound function won't have the expected prototype. It would be like giving people a footgun to shoot themselves with.
I apologize for changing my mind about this twice today, but unfortunately we have no way of getting at the "real" prototype from JS :(

@caitp it is OK to change ones mind if in the end it leads to better framework! I understand your position and I don't have any more arguments apart from the ones presented already:

bound constructor functions are special animals that are half-constructors (you can new them but those won't have a prototype) - so it is hard to arbitrary say if it is a proper constructor or not - we are in the grey are here...
people using bound constructor functions should be aware of the fact that prototypes are not available - this is how it works in vanilla JS
I'm not sure how common it is to use both prototypal inheritance for controllers
it used to work in 1.2.x
it is a trivial fix

But as I've stated before I don't feel strongly about this one as I don't need it personally. I also understand your will to "protect the innocent" and don't give people tools that they can use to hurt themselves.
To sum up: I've got nothing more to say / do when it comes to this issue so if you @caitp or @petebacondarwin got a definitive opinion on this one please close / merge this PR / associated issue.

We should land this, since it was available throughout for 1.2 and no one managed to shoot themselves in the foot so far; so it is probably a very unlikely thing to happen. In the meantime people do want to be able to create bound controllers in their applications and the use cases provided are reasonable.
We should put a disclaimer in the documentation for ngController and module.controller to highlight that bound controllers will not have the expected prototype.
Can you do that and then merge @pkozlowski-opensource ?

-1 for this change. I can not think of one case where a programmer would need to do this. It's more likely they're doing something they shouldn't. I would hate to see this introduce modules that become popular but are full of odd controllers.


sigma-cli: 0.7.7 -> 0.7.8

Diff: https://github.com/SigmaHQ/sigma-cli/compare/refs/tags/v0.7.7...v0.7.8
Changelog: https://github.com/SigmaHQ/sigma-cli/releases/tag/v0.7.8
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 264557 run on x86_64-linux 1

2 packages built:

sigma-cli
sigma-cli.dist


New hero images

This adds some higher quality replacement images to the assets and sets them on some pages. It builds on #1355 so shouldn't be merged until that's in.

@peteryates agree it's looking good. Just going to run past Sophie Gray now to ensure every single photo is approved for usage.

views/content/home: _featured_content.md
views/content/my-story-into-teaching
teacher-training-stories.md
making-a-difference.md
returners.md
international-career-changers.md
career-progression.md
career-changers.md
views/content
three-things-to-help-you-get-into-teaching.md
my-story-into-teaching.md
home.md
a-day-in-the-life-of-a-teacher.md mob.jpg only
@peteryates list of legacy photo linkages from our Slack discussion that will need fixing


Autosave in some configs

Every screen in the configuration section (as well as the One-Click Dictionary API key screen) requires you to click the Save button but save your changes. In some cases this is unintuitive and people keep forgetting it.

Done in the One-Click dictionary settings screen.
Not done anywhere else. All the other configuration screens are quite complex and I find it more logical to expect the user to let the user decide for themselves when they are ready to save their changes.


i cant install Twitch Leecher

logfile.txt
heres the logfile pls HELP
64 bits version

2 logfiles get created. One for the installer app and one for the actual install process. I need both. Look for logfile_001.txt or something like that

Hello,
I'm having the same issue : i generated 1 logfile and the message is the same.
It stops on "Pausing automatic updates."
On the window : the "Status : installing" remains at 0%
I've tried launching as administrator, and the problem remains.
Thank you

If no 2nd logfile gets generated, the Windows MSI installer Engine does not start. That is something I cannot control and points to an error outside of the TL installer application. I only tell MSI to install the program, if it does not do that, there's something wrong on the system pretty sure.
But first things first: Give me more info about your systems. What Windows version are you running and what service pack/creators update?
And have you tried to completely uninstall TL including user data? That might be an option, too.


MAINT: bump array-api-extra

Reference issue
Closes gh-21894

smoke-docs is happy now, merging to unblock CI


Performance problem about reindexChildren with replace parentNode

Hello,
my application suffers from poor performance in case of over 10Mbyte html data..
In my case,
I take a parsed HTML document from jsoup parser, and replace element with wrapperElement class ( custom class RichElement ) to add more custom data with element attributes.
This call the method addChildren at Element.class,
with over 100,000 parsed elements,
but this is very slow...
because addChildren call reparentChild ( => setParentNode) 100,000 times,
each setParentNode occures unnecessary reindexing for sibling children about 1/2 * 100,000 times in this case;;
Do you hava any idea,
only replace parent keep children without unnecessary reindexing?
or
Could you add some method like below?
Element.class
    protected Element replaceParent(List<Node> children) {

        ArrayList<Node> nodes = new ArrayList<>(children);
        Node[] nodeArray = nodes.toArray(new Node[nodes.size()]);
        replaceChildrenWithoutReindex(nodeArray);
        return this;
    }

Node.class
    protected void replaceChildrenWithoutReindex(Node... children) {
        Validate.isTrue(this.childNodeSize() == 0, "replaceChildrenWithoutReindex valid with new parent (no child)");

        List<Node> nodes = this.ensureChildNodes();
        Node[] var3 = children;
        int var4 = children.length;

        for(int var5 = 0; var5 < var4; ++var5) {
            Node child = var3[var5];
            //this.reparentChild(child);
            child.parentNode = this;       //without reindex, reparent parent keep sibling indexes;
            nodes.add(child);
            child.setSiblingIndex(nodes.size() - 1);
        }
    }

Thanks, have implemented a fast path.
Hoping to get 1.12.2 out over the next week. Please feel free to build from HEAD and let me know if you run into any issues.

Hi @whsoul, jsoup 1.12.2 is available now. https://jsoup.org/news/release-1.12.2

@jhy
thanks for your quick response and release (1.12.3)
I will check and apply to my application.


Better array support.

It would be great if the package descended into arrays and printed the formated output of each element rather than .join-ing their string representations. Ideally an array of objects would print the fully formatted value of each object indented further.
Consider the differences shown below.
Using fmt-obj: on {asdf: [{a: 3, b: 4}, {x: 10}]}

    asdf: "[object Object],[object Object]"

Using the prettyjson library:
asdf:
  -
    a: 3
    b: 4
  -
    x: 10

Thanks for the feedback. I'll just released 1.2.0 with better array support :sparkles:. Can you test it out?