mplayer: fix build failure with ffmpeg 4.4

Motivation for this change
Fix mplayer build with ffmpeg 4.4.
Backport SVN revision 38199.
See https://hydra.nixos.org/build/142702864
ZHF: #122042
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

The latest release is still 1.4, so I only backported the one patch.

Result of nixpkgs-review pr 123068 at 960cd687 run on x86_64-linux 1

9 packages built successfully:

devede
frostwire
gmtk
gnome_mplayer
gopro
haskellPackages.mplayer-spot
kmplayer
mplayer
vcs

2 suggestions:

warning: missing-patch-comment
Consider adding a comment explaining the purpose of this patch on the line preceeding.
Near pkgs/applications/video/mplayer/default.nix:109:15:
    |
109 |   patches = [ ./svn-r38199-ffmpeg44fix.patch ];
    |               ^

error: no-flags-spaces
configureFlags cannot contain spaces, please use configureFlagsArray in Bash.
Near pkgs/applications/video/mplayer/default.nix:144:3:
    |
144 |   configureFlags = with lib; [
    |   ^

OK, I hope it won't be crashing with double-free errors or something.

OK, I hope it won't be crashing with double-free errors or something.

avformat_free_context() doesn't seem to touch pb, so it should be fine.


build: remove browsersync snippet log

After we disabled the server option in Browsersync, we started getting some extra logs which can be distracting. These changes remove the log.

I tried out the livereloading and it still works. Also yes, I noticed that the URL isn't printed, but that's also because we turned off server.


nixos/prosody: add MUC extraConfig + fixes

Thanks for the work in #86067 @NinjaTrappeur, even though it probably wasn't the goal it makes the Jitsi Meet module compose better with user-defined Prosody configuration! I'd like to propose for a few modifications in this PR:

move the main extraConfig before the component definitions in the config file, so that it actually applies globally instead of to the http_upload component
add extraConfig option to the MUC submodule so that it's possible to provide additional options (like storage or admins)
fix nixos/tests/xmpp/prosod-mysql.nix

cc @flokli
Motivation for this change
Mostly #82920.
Things done

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

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

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Thanks! Sounds good!
Aha, nice catch regarding the mysql test.
@GrahamcOfBorg test prosody-mysql

Looks like xmpp/ejabberd.nix is also broken though I'm not familiar enough with it to fix it:/

Btw the jitsi module now only uses global extraConfig to add external component:
        Component "focus.${cfg.hostName}"
          component_secret = os.getenv("JICOFO_COMPONENT_SECRET")

I'm wondering whether it would make sense to extend the Prosody module with options for external components. The os.getenv probably makes this needlessly complicated so I guess just adding this snippet to extraConfig with mkAfter minimizes the chance of bad ordering of extraConfigs from multiple sources.

Indeed.
This test, together with the two prosody ones were broken for a long time actually. The send-xmpp.py script was always exiting with a 0 code, regardless of the script outcome. #86067 is trying its best to fix that :/
After a quick scan, it looks like the ebjabberd test is lacking the http_upload support, which we now aim to ship by default, we'll definitely need to setup this module for this test to pass.
I added this to my todo list.
This matter is however out of scope for this PR, let's merge this ;)


Links don't work?

Hello.
Do links not work? I cant get them working.

Did you use data-formatter="image" attribute in your header column?

it works, but then when clicking edit button and modal popup comes up with the data in the input fields, the data for the link shows with link code instead of data by itself. what am i missing?


DocFx is failing with VS2022 17.3.0 Preview 4.0

My latest PRs broke the API docs.
I'm not sure why, but it appears to be something with the latest VS2022 builds.
I reverted to the 1.6.4 code and it docfx still fails:
[22-07-21 03:50:09.530]Info:Config file docfx.json found, start generating metadata...
[22-07-21 03:50:09.724]Info:[MetadataCommand.ExtractMetadata]Using msbuild C:\Program Files\Microsoft Visual Studio\2022\Preview\MSBuild\Current\Bin as inner compiler.
[22-07-21 03:50:10.281]Info:[MetadataCommand.ExtractMetadata]Loading projects...
[22-07-21 03:50:14.000]Warning:[MetadataCommand.ExtractMetadata](C:/Users/charlie/s/gui.cs/Terminal.Gui/Terminal.Gui.csproj)Workspace failed with: [Failure] Msbuild failed when processing the file 'C:\Users\charlie\s\gui.cs\Terminal.Gui\Terminal.Gui.csproj' with message: Method not found: 'System.ReadOnlySpan`1<Char> Microsoft.IO.Path.GetFileName(System.ReadOnlySpan`1<Char>)'.
[22-07-21 03:50:15.025]Warning:[MetadataCommand.ExtractMetadata]Project 'C:\Users\charlie\s\gui.cs\Terminal.Gui\Terminal.Gui.csproj' does not contain any documents.

If @tznind or @BDisp can run docfx successfully please do so and submit a PR so we can get it fixed quick. Thanks.

Re-opening because with the latest VS2022 (Preview 4) I still can't get the docs to generate. Let's leave this open until we figure out why it's failing.

DocFx tracking issue and workaround: https://github.com/dotnet/docfx/issues/8097

Re-opening to fix for realz now that the underlying bug in VS has been fixed: https://github.com/dotnet/docfx/pull/8135

the real culprit is https://github.com/dotnet/msbuild/issues/7832 which is NOT yet fixed.
#1955 will revert to the previous ./docfx/ build behavior after that issue is fixed (which is hopefully soon because the workaround is painfully slow).


stress key not expected

    loss_weights: {
      energy: 100.0,
      forces: 1.0,
      stress: 1.0
    }

results in
lib/python3.12/site-packages/metatrain/utils/jsonschema.py", line 45, in validate
    raise ValidationError(message=error.message)
jsonschema.exceptions.ValidationError: Unrecognized options ('stress' was unexpected)

In general, I think this section
          "properties": {
            "energy": {
              "type": "number"
            },
            "forces": {
              "type": "number"
            }

should not expect any specific keys, as the names of the targets can change depending on the input file

Sure we can use patternProperties for this and change basically change these lines to
https://github.com/lab-cosmo/metatrain/blob/ac396ca17374bb13db4ffaf83be0705cb1fb2c84/src/metatrain/experimental/soap_bpnn/schema-hypers.json#L137-L143
to
  "patternProperties": {
    ".*": {
      "type": "number"
    }


Websocket integration

Hello guys,
I have gateway which is written with cloud api gateway，I use Stomp.js to connect a spring Stomp endpoints。
var socket = new SockJS("http://localhost:80/cloud-message/chat"); `
var stompClient = Stomp.over(socket);

but,WebsocketRoutingFilter does not work，look the code

WebsocketRoutingFilter.filter

String scheme = requestUrl.getScheme();
if (isAlreadyRouted(exchange) || (!"ws".equals(scheme) && !"wss".equals(scheme))) {
	return chain.filter(exchange);
}
setAlreadyRouted(exchange);

isAlreadyRouted return true ，and scheme always be http
Request URL: ws://localhost/cloud-message/chat/102/fg1510al/websocket
Request Method: GET
Status Code: 101 Switching Protocols

what can i do？

I add a global filter solve this:
@Component
public class WebsocketUpgradeFilter implements GlobalFilter, Ordered {

    @Override
    public int getOrder() {
        return Ordered.LOWEST_PRECEDENCE - 10;
    }

    @Override
    public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
        String upgrade = exchange.getRequest().getHeaders().getUpgrade();
        if ("WebSocket".equalsIgnoreCase(upgrade)) {
            URI requestUrl = exchange.getRequiredAttribute(GATEWAY_REQUEST_URL_ATTR);
            URI ws = UriComponentsBuilder.fromUri(requestUrl).scheme("ws").build().toUri();
            exchange.getAttributes().put(GATEWAY_REQUEST_URL_ATTR, ws);
        }
        return chain.filter(exchange);
    }
}

but should it be a default feature?

what version of spring cloud?  there was some issues that were solved with the release of Finchley.M9

Just test Finchley.M9, still has the issue. if you don't special a websoket url with ws schema in route config, you will produce this.
chrome show a ws url in network log, but the server will receive a http request.

Ah I see, want to submit a PR?

debug，and i found the issue，As zjengjie said，

but the server will receive a http request.

so，The NettyRoutingFilter route the request
URI requestUrl = exchange.getRequiredAttribute(GATEWAY_REQUEST_URL_ATTR);

String scheme = requestUrl.getScheme();
if (isAlreadyRouted(exchange) || (!"http".equals(scheme) && !"https".equals(scheme))) {
	return chain.filter(exchange);
}
setAlreadyRouted(exchange);

maybe i should specify a websocket url in router config,but i still want to use DiscoveryClientRouteDefinitionLocator to create routes based on services registered with a DiscoveryClient compatible service registry.

I add a global filter solve this:
@Component
public class WebsocketUpgradeFilter implements GlobalFilter, Ordered {
@Override
public int getOrder() {
    return Ordered.LOWEST_PRECEDENCE - 10;
}

@Override
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
    String upgrade = exchange.getRequest().getHeaders().getUpgrade();
    if ("WebSocket".equalsIgnoreCase(upgrade)) {
        URI requestUrl = exchange.getRequiredAttribute(GATEWAY_REQUEST_URL_ATTR);
        URI ws = UriComponentsBuilder.fromUri(requestUrl).scheme("ws").build().toUri();
        exchange.getAttributes().put(GATEWAY_REQUEST_URL_ATTR, ws);
    }
    return chain.filter(exchange);
}

}
but should it be a default feature?

sorry,should it not be a default feature?
follow you，And now it was working without problem.
Thanks

@XMANcharles glad to helped you.
@ryanjbaxter that's fine, but I'm not sure if add a global filter like above is right solution.
And I just find another bug about websocket on gateway: gateway won't close websocket session of backend when client close it, and when the backend continue to send message to client, the gateway will show Broken pipe and Status and headers already sent error.
The gateway version is M9, and I have no idea how to solve this by now.

@ryanjbaxter that's fine, but I'm not sure if add a global filter like above is right solution.

Why not just enhance the current filter?

And I just find another bug about websocket on gateway: gateway won't close websocket session of backend when client close it, and when the backend continue to send message to client, the gateway will show Broken pipe and Status and headers already sent error.

Open a separate issue for this

为什么不只是增强当前的过滤器？
Maybe we can enhance NettyRoutingFilter 。
I am sorry but I don't think it's his task 。
Can we let the WebsocketRoutingFilter before the NettyRoutingFilter and then just enhance the WebsocketRoutingFilter。

That is what he was suggesting.


fix(validators): support of Zerocode expressions and jsonpath

Close #436

PR Branch
#ADD LINK TO THE PR BRANCH
Motivation and Context
See issue #436 discussions
Checklist:

[ ] Unit tests added

[ ] Integration tests added

[ ] Test names are meaningful

[x] Feature manually tested

[ ] Branch build passed

[ ] No 'package.*' in the imports

[ ] Relevant Wiki page updated with clear instruction for the end user

[ ] Not applicable. This was only a refactor change, no functional or behaviour changes were introduced

[ ] Http test added to http-testing module(if applicable) ?

[ ] Not applicable. The changes did not affect HTTP automation flow

[ ] Kafka test added to kafka-testing module(if applicable) ?

[ ] Not applicable. The changes did not affect Kafka automation flow

Hi, will pick this after the CI issue is resolved. It's in progress now and hopefully will be sorted soon.

hello @authorjapps ; ok let me know when your CI is fixed ; i will refactor this pr to correctly implement the feature

Hello @M3lkior, CI has been fixed and works fine now.
You can have a look here. The current build is Green.

I suggest please take the latest pull from the master and rebase/merge your changes 1st before adding more changes.
This way you can observe the CI status even at your patch/branch or forked master.
This is possible due to the recent CI fix which is helpful.
And I appreciate you have been picking and collaborating on some of the important issues people have raised 🙏 .

I suggest please take the latest pull from the master and rebase/merge your changes 1st before adding more changes. This way you can observe the CI status even at your patch/branch or forked master. This is possible due to the recent CI fix which is helpful.
And I appreciate you have been picking and collaborating on some of the important issues people have raised 🙏 .

ok @authorjapps  i will do that !
i plan to work on this issue this end of week ! my pr will be ready soon ;)

After merge, if you could take care of this please.

hi @authorjapps ; the continuous integration step is broken ?

hi @authorjapps ; the continuous integration step is broken ?

Hi @M3lkior, CI looks fine and Green. Actually showing SUCCESS. See below.

This build #14 is linked to your last commit.

build #14

yep but not the travis-ci step:

No worry; i can help you to maintain this repo and the release process if you want and if it is possible

build #14

No worry; i can help you to maintain this repo and the release process if you want and if it is possible

Amazing, that'll be really helpful. At least for now, your contribution to the upcoming PR reviews will be really useful.
Let me check about the Maven release stuff load-sharing, will get back to you.
For Travis, yes, it's looking bit wierd. I have raised a ticket here: https://github.com/authorjapps/zerocode/issues/548 to be looked at.

Done.
Available in release 1.3.31.
Thanks for your patience 🙏


ConnectedObservableCollection not found

Hi Mike.
I am trying to run the project but the compiler can't find ConnectedObservableCollection. Can you tell me what I am missing?

aah,
It's in the 1.1 branch of ASH (App Service Helper). You can grab a copy from the repository or give me a week and we'll have 1.1 released.

This is now resolved. It was all based on ASH 1.1 previews which were packages incorrectly.


Dynamic reconfigure dynup

Summary

We want to use dynamic reconfigure for dynup
Proposed changes

We want to implement the picknik library for that.
We changed the yamls, added needed dependencies, used a separate node for the move group, and changed how the parameters are called.
Related issues

#439
Checklist

[x] Run colcon build
[ ] Write documentation
[x] Test on your machine
[ ] Test on the robot
[x] Create issues for future work
[x] Triage this PR and label it

There are a few style chest failing

Also, it looks like, there are a few German notes and questions in the code. Should they be answered by reviews?

Also, it looks like, there are a few German notes and questions in the code. Should they be answered by reviews?

whoops, I talked to Sebastian and while talking I made notes and forgot about it. I will remove them.

There are a few style chest failing

How do I change that?

There are a few style chest failing

How do I change that?

Run make format in the repo

Otherwise LGTM

See my answers


Update Core_c.php

key can be string or integer

Can't agree https://3v4l.org/PTJBY https://3v4l.org/rcpGo

@isfedorov that iterator? lol
private $array = array(
    true => "firstelement",
    false => "secondelement",
);

@isfedorov I've done it a long time ago, for example before 5.5 key can be object...
focus on this:

Additionally the following key casts will occur:
Strings containing valid decimal ints, unless the number is preceded by a + sign, will be cast to the int type. E.g. the key "8" will actually be stored under 8. On the other hand "08" will not be cast, as it isn't a valid decimal integer.
Floats are also cast to ints, which means that the fractional part will be truncated. E.g. the key 8.7 will actually be stored under 8.
Bools are cast to ints, too, i.e. the key true will actually be stored under 1 and the key false under 0.
Null will be cast to the empty string, i.e. the key null will actually be stored under "".
Arrays and objects can not be used as keys. Doing so will result in a warning: Illegal offset type.


[BEAM-6347] Add website page for developing I/O connectors for Java

Added new website page for developing I/O connectors for java, moved Python page into same place for consistency, and updated the overview page to intro/point to these two pages.


Update kubernetes godep

Which in turn pulls in others
and removes all of _test.go

Can you please update the top level contrib README with basic instructions of revving the godep? Just sometime simple like: cd contrib, rm -rf Godep, cd... etc (or just point to the docs in the main repo). I find a lot of contributors miss that this repo even requires an update.


Added AzureQueue provider to collect and relay messages created on a website

Fixes #68

Here's what a test message passing through the Azure Queue looks like:


ui, server: add remaining stats to Non-Table data

PR: https://github.com/cockroachdb/cockroach/pull/31830
From release notes:

The Non-Table Cluster Data section of the Databases page now includes all non-table data types. Previously, this section only showed Time Series data. [#31830][#31830] {% comment %}doc{% endcomment %}

Requires a screenshot update - will take this up when I update all screenshots for 2.2


Example for the "hyper for" and the "race for" statements.

Example for the "hyper for" and the "race for" statements.

Thanks a lot for your work!


go_indexer: Add the ability to read kzip inputs.

As part of the ongoing work to replace .kindex files and indexpacks, add the
ability to add .kzip input to the Go indexer. For now, the other formats are
still supported.

De-nitted, thanks.


Bug with HTML Convert Entities Bonfire

Challenge http://www.freecodecamp.com/challenges/bonfire-convert-html-entities has an issue. Please describe how to reproduce it, and include links to screen shots if possible.
I continue to have issues with this bonfire. I believe the following code should pass:
function convert(str) {

  var charCodes = {
      39: "'", //'
      38: "&",//&
      60: "<",//<
      62: ">",//>
      34: """//"
  };

  str = str.replace(/['<>"&]/g, function(code){
      return charCodes[code.charCodeAt(0)];
  });

  return str;
}

convert('Dolce & Gabbana');

However, it continues to fail on the same line:
assert.strictEqual(convert("Shindler's List"), 'Shindler's List', 'should escape characters');should escape characters: expected 'Shindler's List' to equal 'Shindler's List'
I have tried variations of this algorithm, but they all fail on this same test and from what I can tell there is no issue with the code.

Yes. I get the same errors for this code:
function convert(str) {
  return str.replace("&", "&").replace("<", "<").replace(">", ">").replace("'", "'").replace('"', """);
}

I thought I was starting to learn something but ended up list again
On Aug 13, 2015 5:55 AM, "Valentin Ivan"<EMAIL_ADDRESS>wrote:

Yes. I get the same errors for this code:
function convert(str) {
return str.replace("&", "&").replace("<", "<").replace(">", ">").replace("'", "'").replace('"', """);
}
—
Reply to this email directly or view it on GitHub
https://github.com/FreeCodeCamp/freecodecamp/issues/1268#issuecomment-130615185
.

This code was passing:
function convert(str) {
  // :)
  return str.replace(/&/g, '&')
            .replace(/'/g, ''')
            .replace(/"/g, '"')
            .replace(/>/g, '>')
            .replace(/</g, '<');
}

convert('Dolce & Gabbana');

It's easier to discuss these issues first here: https://gitter.im/FreeCodeCamp/HelpBonfires

@cristianvnica Thanks for your help.
@padulam Please Remember RSA in the future.
Happy Coding!


Requests in an interval return cached results

Hi,
I'm polling a Wordpress site's multiple REST endpoints and the subsequent requests don't seem to make it to the Wordpress side (access.log file remains empty after the first requests).
All relavant files:
https://gist.github.com/andreasvirkus/9c413339d8854e0bb98bc62fa35e0cae

@andreasvirkus It looks like the code here is only designed to initiate the request once. Looking at this method, for example:
export const getPages = wp.pages()
  .param('per_page', '80')
  .param('timestamp', Date.now()).then((response) => {
    return response;
  }).catch((err) => {
    console.log('ERR! Could not retrieve pages:', err);
  });

this initiates a request and exports a single Promise that will resolve to its results. Importing or referencing getPages again will return that same Promise reference; it will not trigger a new request.
I recommend refactoring the exports of queries.js to be methods that return promises:
// Adds () => to the assignment to make getPages a function, not a Promise
export const getPages = () => wp.pages()
  .param('per_page', '80')
  .param('timestamp', Date.now()).then((response) => {
    return response;
  }).catch((err) => {
    console.log('ERR! Could not retrieve pages:', err);
  });

If you do that, and then call getPages(), it will trigger a new request.
Hope this helps

To make pages.all = getPages() work, too, you'd either need to change that to
getPages().then(result => {
  pages.all = result;
});

or else use async/await (available in the latest Node 7, I believe)
pages.all = await getPages()


Estimating planner

This is a first prototype of an estimating planner. It's not ready for daily use, but seems to work without any very bad bugs. The result so far is not very impressive, for lengths 1-1023 the performance is the same as the current planner, except for 5 lengths where it's faster. Maybe not so bad, but I hoped for more.
It relies on having good functions for estimating costs. The ones included now are quite crude, and were derived manually using the included benchmarks and a spreadsheet. I didn't include the spreadsheet in the PR but of course I could.

 Sorry about that, will clean up tomorrow.

 Sorry about that, will clean up tomorrow.

Updated with benches from iai!
It's fun to explore the choices it makes. It can do things like using a MixedRadix with Butterfly8 as inners, instead of a Radix4 at length 64.
Next up is to make better measurements to really know if it's better or not. Now I mostly see noise..

I'm having some problems getting good estimates with iai. I think it's mostly when choosing between Raders and Bluesteins.
For example at length 59 I get these two:
For 59, cost 30741.412 -> BluesteinsAlgorithm { len: 59, inner_fft: Radix4(128) }
For 59, cost 24145.469 -> RadersAlgorithm { inner_fft: GoodThomasAlgorithmSmall { left_fft: Butterfly29, right_fft: Butterfly2 } }

Raders looks cheaper, but a benchmark says the opposite:
test iaicheck_bluesteins_59 ... bench:       1,515 ns/iter (+/- 59)
test iaicheck_raders_59     ... bench:       2,172 ns/iter (+/- 27)

The cost is almost all for the inners. I don't know if I'm underestimating the cost of the GoodThomas, or overestimating the Radix4 (or both). Does anyone have any bright ideas?

Are the estimates for those 2 sizes correct in isolation?

No they are just as bad if I do them outside of the Bluestein/Rader.
For the butterflies I do a series of benches with input of 1len - 10len, to get a better estimate of how it will perform inside a mixed radix:
// Make fft using planner
fn bench_planned_multi(len: usize, reps: usize, process: bool) {
    let mut planner = rustfft::FftPlannerScalar::new();
    let fft: Arc<dyn Fft<f64>> = planner.plan_fft_forward(len);
    let mut buffer: Vec<Complex<f64>> = vec![Complex::zero(); len*reps];
    let mut scratch: Vec<Complex<f64>>  = vec![Complex::zero(); fft.get_inplace_scratch_len()];
    let mut warmup_buffer: Vec<Complex<f64>> = vec![Complex::zero(); len];
    fft.process_with_scratch(&mut warmup_buffer, &mut scratch);
    if process {
        fft.process_with_scratch(&mut buffer, &mut scratch);
    }
    black_box(buffer);
    black_box(scratch);
    black_box(warmup_buffer);
}

For each one, this is run twice (with process set to true and false) so I can subtract the setup time. Then after the series is run, I fit a line to it, giving the constant overhead of calling the fft, and the additional cost of every fft it performs. The overhead is quite small so it's only significant for the shorter ones. I didn't bother with this for any other algo.
I also run one warmup fft before the "real" one. If I don't, the overhead becomes much much bigger. But maybe that's how it should be? Maybe I should try it once without the warmup.
I added the black_box stuff at the end to try to make sure it doesn't optimize away anything, not sure it's really needed.

Interesting. I'll take a look at it in a few days and see if I can help. I'm currently neck deep in real FFT stuff.

After digging around and running some more test benchmarks, it looks as if Cachegrind doesn't get the speed right between butterflies and radix4. A radix4 of length 128 runs in 613 ns, and a GoodThomasSmall of length 58 runs in 832 ns. But iai estimates the radix4 to 11214 cycles, and the GoodThomas to 10444.
Could it be that floating-point heavy code like this isn't estimated very well by cachegrind? It seems to deal mostly with memory access. But a butterfly does a lot of operations on a small set of values, so maybe if gets underestimated.

At first, I was thinking, what about cache misses? Maybe they aren't being counted correctly. But both of these sizes should fit easily in cache.

It claims that it only accesses the L1 cache.
For now I put a 50% "tax" on the Butterfly costs, that seemed to help. The problem was mostly at multiples of 59, where it picked a slower Raders instead of the Bluesteins.
The ratios between different algos are about the same when I run on a raspberry pi 4, so it's not something x86 specific.

One thing I think we should do at some point before merging this is make a file dedicated to these benchmark-driven heuristics. Instead of embedding them directly into the planner code's cost() function, make a separate scalar_planner_heuristics.rs file (name doesn't matter, that's just an example), and inside it are a bunch of free functions that have the computed numbers for slope + offset etc for each algorithm.
The motivation being, having it in a separate file will make it much easier to write a script to automatically generate the numbers, instead of having to copy/paste them in, and when people read the code, it will hopefully be much more clear where the boundary between auto-generated heuristics and human-generated heuristics are. For example, we'd probably want to keep the 50% butterfly tax in the planner code, because that's something we added on our own, and it can't really be automated.

Something like this?
I'll see if I can make the test run on 1.37 as well, there is something in iai it doesn't like.

Yeah, this is excellent.
What's your overall opinion of the state of this PR?  Is it still experimental? Getting close to release-ready? How accurate do benchmarks seem, compared to cost estimates?

More specifically, the precise benchmarks don't matter, but does it usually choose the algorithm that's faster-than, or within the noise threshold of, alternatives?

I'm really having issues getting good low noise measurements with my fftbenching script, I have tried averaging in all kinds of ways, removing outliers, etc etc. I always get random spikes at +-50%. I have to fix this before I can say for sure, but at least it matches the existing planner within the noise I have. A few more days, then I hope to know better! I can probably get something good by leaving it averaging overnight, but that's no fun..

I gave up and increased the averaging time, that gave some more stable results. It has problems choosing correctly between Bluesteins and MixedRadix. I think the previous iteration using the normal benches was better here. More work needed..

Things are improving.. I went back to the normal benches since they seem to give better results. I like the idea of using the cachegrind results as they are almost noise-free and don't depend on which particular cpu is used to run the benches, but the results are just too far off to use for good estimates.

This is the latest comparison, showing the speed of ffts from the estimating planner vs master. Still a bit noisy (need to run it longer). Some of the spikes are obviously noise, for example at lengths 13 and 19 there are spikes down to about 75%. But in both runs these use butterfly13 and 19.
Next up is to clean up all the unused iai-stuff, and work on improving the comparison!

I think iai has great value when optimizing something, to see if some change made it better or worse. For that I think it's really superior to other benches. It only seems to struggle with comparing the speed of very different implementations.
For the fitting, I don't think the noise is a very big problem. I made a script that repeats the benches a number of times, and then the fitting scripts try to exclude outliers. I have also collected a set of benches in a raspberry pi 4 (took a while!) and I will compare them with the ones from my laptop. I hope they mainly differ by a constant factor, which would mean the estimates I make on my laptop are not only useful on this particular machine..
I'll add some kind of normalization to make results from different machines easier to compare. I'm thinking about what to use for normalization. Should be something that isn't likely to change a lot. Either Radix4 of some medium length, or an average of a few prime sized butterflies. I'll play a bit with that.

I made a dump of all recipes for length 2 - 1024.
master_recipes.txt
estimated_recipes.txt
Try doing a diff of these two! For more than half the estimating and fixed planners agree fully. And where they differ, in most cases it's small differences like a GoodThomas instead of a MixedRadix. And sometimes it's only the order of the inners that differs.
But for some lengths the estimating one picks a Bluesteins instead of a complicated MixedRadix, these are the ones where there is a decent improvement.

I cleaned up a lot of unused stuff, and made a guide for how to update the estimates.
I think this is now in pretty good shape and ready for a thorough review :)

Great! Thanks for all your work on this. I have a vacation day on monday, I think I'll do a deep dive of this then.

I was a little worried that we weren't checking very large FFTs with this new system. So I expanded the "2 to 1024" benchmark to add 10,000 to each input size, another set that added 100,000 to the input size, and one more that added 1,000,000 to the input size. Then I compared the performance and computed the median, etc.
10k mean   = 0.9993
10k best   = 0.7168
10k 10%    = 0.9589
10k 25%    = 0.9913
10k median = 1.0039
10k 75%    = 1.0200
10k 90%    = 1.0372
10k worst  = 1.1248

100k mean   = 1.0130
100k best   = 0.6308
100k 10%    = 0.9511
100k 25%    = 0.9940
100k median = 1.0046
100k 75%    = 1.0167
100k 90%    = 1.1563
100k worst  = 1.2922

1000k mean   = 0.9808
1000k best   = 0.7201
1000k 10%    = 0.8499
1000k 25%    = 0.9369
1000k median = 0.9994
1000k 75%    = 1.0147
1000k 90%    = 1.0615
1000k worst  = 1.2486

The middle 50% of each group doesn't change, at all -- There's a 23% variation, but that's within the noise threshold. Same with the mean performance change within each category. So the majority of FFTs' either don't change, or are changed to a recipe that takes the same amount of time.
For 10k, even the 10%-90% range is completely within the noise threshold.
For 100k, the worst 10% of sizes lost 15% of performance or more, and the worst one lost 30% performance.
For 1 million, the worst 10% of sizes lost 6% of performanc,e nad the worst one lost 25% of performance.
This seems like a very acceptable tradeoff for me, especially given that the biggest improvement in each category is much better than the biggest loss.
But before we merge this, I think it's worth taking a look at the worst offenders of each category, and seeing if there any common patterns among the factorization, among what the planner used to select, what the planner selects now, etc.

Comparing this with that same size's recipe on master:
100094: MixedRadix {
    left_fft: BluesteinsAlgorithm {
        len: 50047,
        inner_fft: Radix4(
            131072,
        ),
    },
    right_fft: Butterfly2,
}

So on master, it thinks a pure radix4 is faster than splitting it, and with this PR, it thinks splitting it is faster -- and on my CPU at least, keeping it together in one large chunk ends up being faster.
 Above that is when mixed radix is faster. And at 121072, splitting it seems to be around 20% slower than combining it, which would line up with the results I was seeing up above.
Here's the code I used to compare the two, in bench_for_estimates.rs
fn bench_power2_direct(b: &mut Bencher, len: usize) {
    let fft = Arc::new(Radix4::new(len, FftDirection::Forward)) as Arc<dyn Fft<f32>>;

    let mut buffer = vec![Complex::zero(); len];
    let mut scratch = vec![Complex::zero(); fft.get_inplace_scratch_len() ];
    b.iter(|| {
        fft.process_with_scratch(&mut buffer, &mut scratch);
    });
}

fn bench_power2_split(b: &mut Bencher, len: usize) {
    let zeros = len.trailing_zeros();
    let left_zeros = zeros/ 2;
    let right_zeros = zeros - left_zeros;
    let left_size = 1 << left_zeros;
    let right_size = 1 << right_zeros;
    let left_fft = Arc::new(Radix4::new(left_size, FftDirection::Forward)) as Arc<dyn Fft<f32>>;
    let right_fft = Arc::new(Radix4::new(right_size, FftDirection::Forward)) as Arc<dyn Fft<f32>>;
    let fft = Arc::new(MixedRadix::new(left_fft, right_fft));

    let mut buffer = vec![Complex::zero(); len];
    let mut scratch = vec![Complex::zero(); fft.get_inplace_scratch_len() ];
    b.iter(|| {
        fft.process_with_scratch(&mut buffer, &mut scratch);
    });
}
make_benches!(power2_direct, power2_direct, {4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304});
make_benches!(power2_split, power2_split, {4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304});

When I go to bed tonight, I'll run the estimates benchmarks, and tomorrow after work I'll go through the process of updating the estimates, and based on that I can give feedback on the instructions.
The shell script for running the estimates doesn't work on windows - I wrote a rust program to do the same thing, I just want to make sure it works. In general, I'm realizing that I prefer tools to be written in rust unless they need to be in another language. The fitting scripts needing to use matplotlib is a pretty good argument for using python for those - but something like the "run_benchmarks" script would be fine for rust.

I'll run the 100k series on my machine as well. I wouldn't be surprised if the balance changes between different machines. I did the benches for the estimates on a laptop with a Ryzen 2700u, (with turbo disabled). I also tried on a raspberry pi 4. On that one Radix4 has some issues and gets slow at some lenghts, and that made the fit not fit well at all. The result was that the planner avoids radix4 and uses mixed radix all the time. Maybe good on the pi, but I'm not convinced it's a good general strategy.

I repeated the series direct vs split, for 32 and 64bit:

I did all the estimates with 64-bit floats, and on my machine the direct version always wins. I'll have to look into why it picks the split approach. I'll try increasing the max length in the benches for both mixed radixes and radix4.

I started a new longer series of benches now, let's see tomorrow if this can push it to use more radix4.

I think I found the problem. The mixed radixes underestimate the cost of the inner ffts. For example a mixed radix with inners of 512 and 256 will run the length-512 fft 256 times on a vector that is 512*256 long andI have assumed that this is nicely linear with the number of repeats. But that isn't the case when the number of repeats gets big, because then the we get cache misses and things slow down. I'll have to figure out a way to handle this.

After running some benches to check that idea, it seems to make sense. I did a series of butterfly benches where I repeat the butterfly over a longer and longer vector. That becomes almost like a measurement of the sizes of the different caches, with steps where the vector becomes too big for the L1, L2 and L3 caches. This makes things more complicated, some thinking needed..

Trying to fit the various cache effects quickly turned into a complete mess. I gave up on that and tried another approach.
This is based on these ideas:
a) we know what function the cost ideally should follow (NlogN for radix4 for example)
b) effects of cache will affect all algorithms in reasonably similar ways. If we make benches that aren't affected (much) by it, things should be quite ok.
So I got rid of the fitted exponent, and avoid fitting to very large lengths where caching issues happen. For Radix4 I use a + bN + cNlogN, for the overhead of mixed radixes and bluestein/rader I use a + b*N. This appears to have helped to get rid of some of the large losers, while keeping most of the winners.
In the the previous iteration Radix4 had a fitted exponent that took caching effects into account. But the mixed radixes did not, that's why it often preferred mixed radix when a radix4 would have been better. In the updated version neither of them cares about the cache, so the comparison works better. (At least that's the idea)
The 2-1024 check looks ok (similar to before). Could you perhaps repeat the 10k and 100k checks?

10k mean   = 0.9871
10k best   = 0.7095
10k 10%    = 0.9330
10k 25%    = 0.9778
10k median = 0.9980
10k 75%    = 1.0081
10k 90%    = 1.0213
10k worst  = 1.1569

100k mean   = 0.9913
100k best   = 0.6331
100k 10%    = 0.8901
100k 25%    = 0.9868
100k median = 1.0014
100k 75%    = 1.0129
100k 90%    = 1.0528
100k worst  = 1.3141

1000k mean   = 1.0631
1000k best   = 0.7456
1000k 10%    = 0.8169
1000k 25%    = 0.9201
1000k median = 1.0056
1000k 75%    = 1.2185
1000k 90%    = 1.3499
1000k worst  = 1.6066

100k improved a lot, but 1000k got a lot worse.
 Could you push the code you used to make these tests somewhere?

Unfortunately this seems like a direct result of our most recent strategy:
Here's the plan result for 100813 on master:
100813: MixedRadix {
    left_fft: RadersAlgorithm {
        inner_fft: GoodThomasAlgorithmSmall {
            left_fft: Butterfly8,
            right_fft: MixedRadixSmall {
                left_fft: Butterfly3,
                right_fft: Butterfly3,
            },
        },
    },
    right_fft: RadersAlgorithm {
        inner_fft: MixedRadix {
            left_fft: GoodThomasAlgorithmSmall {
                left_fft: Butterfly5,
                right_fft: GoodThomasAlgorithmSmall {
                    left_fft: Butterfly4,
                    right_fft: Butterfly3,
                },
            },
            right_fft: Butterfly23,
        },
    },
}

And with this PR:
100813: BluesteinsAlgorithm { len: 100813, inner_fft: Radix4(262144) }

With such a complicated mixed-radix combination, it's easy to imagine how its cost could be overestimated to the point where it ends up using bluestein's instead. On the plus side, it uses a direct radix4 here, instead of the split radix4 it was using before.
I also took a look at one of the 1 million FFTs, that was 60% worse, and the cause was similar:
Master:
1000050: MixedRadix {
    left_fft: MixedRadix {
        left_fft: MixedRadixSmall {
            left_fft: Butterfly5,
            right_fft: Butterfly5,
        },
        right_fft: RadersAlgorithm {
            inner_fft: GoodThomasAlgorithmSmall {
                left_fft: Butterfly7,
                right_fft: Butterfly16,
            },
        },
    },
    right_fft: MixedRadix {
        left_fft: BluesteinsAlgorithm {
            len: 59,
            inner_fft: Radix4(
                128,
            ),
        },
        right_fft: Butterfly6,
    },
}

This PR:
1000050: BluesteinsAlgorithm {
    len: 1000050,
    inner_fft: Radix4(
        2097152,
    ),
}

For starters, this chooses a direct radix4 instead of a split radix4. But most of the time loss comes from the fact that bluestein's is not a good choice here.
To the planner's credit, I tried factoring it myself into smaller FFTs, and most of them took longer thna just putting the whole thing into bluestein's. The prime factorization of 100050 is [2, 3, 5, 5, 59, 113], so there are a lot of options:
test bench_big_bluesteins                ... bench:  97,530,720 ns/iter (+/- 1,123,812)
test bench_big_bluesteins_factor2        ... bench:  88,772,810 ns/iter (+/- 1,006,932)
test bench_big_bluesteins_factor3        ... bench: 130,062,740 ns/iter (+/- 2,083,891)
test bench_big_bluesteins_factor5        ... bench:  91,384,980 ns/iter (+/- 980,036)
test bench_big_bluesteins_factor6        ... bench: 108,223,730 ns/iter (+/- 1,432,876)
test bench_big_bluesteins_factor10       ... bench:  89,114,510 ns/iter (+/- 852,179)
test bench_big_bluesteins_factor15       ... bench: 129,620,550 ns/iter (+/- 1,003,690)
test bench_big_bluesteins_factor25       ... bench: 102,188,920 ns/iter (+/- 787,808)
test bench_big_bluesteins_factor30       ... bench: 120,188,310 ns/iter (+/- 719,875)
test bench_big_bluesteins_factor150      ... bench:  68,966,160 ns/iter (+/- 398,267)

"Factor150", aka a MixedRadix with 2355 on one side, and 59113 on the other side, gets us within the noise threshold of the time it takes on master. But the planner currently doesn't even attempt to estimate this right now. I changed the planner to try it, and encouragingly, it selects factor150 when I add that new strategy.
New planner code:
// This strategy partitions a FFT into a MixedRaix, with all butterfly-able factors on one side, and all non-butterfly factors on the other.
    // The idea is that if we have a handful of small factors times a handul of large factors, the planner will have an easier time with them separated
    fn design_mixedradix_separate_butterflies(&mut self, factors: &PrimeFactors) -> Option<Arc<Recipe>> {
        let mut butterfly_product = (1 << factors.get_power_of_two()) * 3usize.pow(factors.get_power_of_three());
        let mut nonbutterfly_product = 1;

        for factor in factors.get_other_factors() {
            if factor.value <= 31 {
                butterfly_product *= factor.value.pow(factor.count);
            } else {
                nonbutterfly_product *= factor.value.pow(factor.count);
            }
        }

        // Exclude powers of two for the butterfly product, because "separate twos" handles that
        if butterfly_product > 1 && nonbutterfly_product > 1 && !butterfly_product.is_power_of_two() {
            let left_fft = self.design_fft_for_len(butterfly_product);
            let right_fft = self.design_fft_for_len(nonbutterfly_product);

            Some(Arc::new(Recipe::MixedRadix {
                left_fft,
                right_fft,
            }))
        } else {
            None
        }
    }
...
   // in `fn design_all_ffts_with_factors`
    if let Some(mixedradixbutterflies) = self.design_mixedradix_separate_butterflies(&factors) {
            recipes.push(mixedradixbutterflies);
        }

I'm not sure if it would even be helpful to add this, but as we see here it could be a back-pocket solution to address the worst-case scenario.

The commit I just pushed has both the benchmarks I used, and the python script I used to generate the analysis text. Just a warning, the benchmarks take around an hour and a half to run, and generate 3,200 lines of output, which is more than the average terminal is configured to retain.
I haven't run the benchmarks yet with my new "separate butterflies" strategy added because it takes so long - I'm assuming that, while it will fix some of the worst offenders, it won't fix the problem outright, which is that the planner seems to be over-prioritizing bluestein's algorithm right now.
If I had to choose between this iteration and the previous iteration, I'd choose the previous. I mentioned before that I thought the time loss in the previous iteration was acceptable, so if you get to a point where you're feeling discouraged and just want to get this thing out the door, don't be afraid to revert to that version.

Thanks for pushing the tools!
I'm not really satisfied with either of the versions yet, and I'm sure I can do better.
I think I'll start by trying to make some systematic comparisons between the actual time the recipes take and the estimate.

What should we do about this? I think the estimating planner concept still has merit, but I know I ran out of steam on FFTs in general, and I get the impression you ran out of steam on this PR in particular (very understandably!), and so we both just kind of dropped it.
Scrolling back through the benchmarks I saw getting posted, it seems like the latest iteration of this was doing a pretty good job of selecting FFT algorithms, but I have a vague sense that there are more improvements on the table.
What's your take on this, now that you have some distance from it?

Yeah that is a good description of the whole thing. For me it was a combination of running out of steam on this one, while I really wanted to work on the sse and neon stuff.
The current version does a pretty good job yes, but I am sure there is more to gain. I still think it's worth finishing it and it would feel great to do so. Not sure when I will have time and energy to do it though.. Not sure if it's worth keeping this PR open until then, I can just as well open a new one when I'm ready.

Sounds good. I'll close it for now in the interest of tidying up a little. If/when either of us gets the motivation to work on it again, we can reopen this or open a new one.
And there's nothing stopping me from working on it too of course, but my efforts at getting AVX out the door, followed by my research into r2c and DHT, really took a lot out of me, so I don't have much motivation to do a big r&d project either.


Some rule cannot receive data when using shared mqtt connection together with shared source instance

启用该配置后，发现一个问题，两个规则A和B订阅同一个mqtt topic，start 规则A，那么规则B收不到数据，start规则B，规则A收不到数据，stream已经开启了SHARED="true"。
如果不mqtt source不开启connectionSelector功能，该问题不会出现。
是我哪个地方用错了吗？

Is the problem still exists if with connectionSelection and not SHARED stream combination?

It is likely that the root cause is that the mqtt client instance can only have one callback for the same topic. You can check if your shared client has subscribe to the same topic more than once. We are trying to wrap the shared mqtt client's subscribe function to let it accept multiple callbacks to fix this problem.

Is the problem still exists if with connectionSelection and not SHARED stream combination?
==>
Yes, the problem still exists
You can check if your shared client has subscribe to the same topic more than once.
==》
We have such a scene，different rules use shared client subscribe to the same topic more than once

We are trying to wrap the shared mqtt client's subscribe function to let it accept multiple callbacks to fix this problem.
==>
I try to solve this problem
When subscribing, record the relationship between topic, ruleId, and consumer
In the callback function, the ruleId and consumer are obtained according to the topic, and then the received data is sent to the consumer

Hi nick,
Great work! @SuperRxan is also working on this part trying to refactor the connection management in the mqtt source. We can have a discussion in tomorrow's dev meeting (in Chinese) at 10:30 AM if you have time. We will depict the refactor design.
Join Zoom Meeting
https://zoom.us/j/95097577087?pwd=azZaOXpXWmFoOXpqK293RFp0N1pydz09
Meeting ID: 950 9757 7087
Passcode: 998285

code merged and will available in 1.4.3 release


[loc][query][VSCode] Please clarify placeholder and translatability

Hi, we have a question from our translator. Can you help please? Thanks!
Source:
Problem parsing theme file: {0}. 'settings' is not array.
File Name:
src\vs\workbench\services\themes\electron-browser\themeService.nls.resx
Resource ID:
".resx", 0; "error.plist.invalidformat"
Query:
Is this placeholder replaced by the name of the file? Is "settings" translatable?

{0} will be replaced by a path. 'settings' must not be translated.


Override RDD count

Currently, invoking RDD count requires all the data to be read from Elastic only to be counted.
This could be improved through a simple count call which would return immediately.

Fixed in master and 2.x


Add CRUD support for registered limits

This PR will add support to Update, Delete, List and Get particular registered limit.

Thanks @konan-abhi for the update here! looks good, I'll test it locally and get back to you!

ok I think we're good here. Thanks @konan-abhi this last change works as expected.
> oc apply -f glance_v1beta1_glance.file_quota.yaml
glance.glance.openstack.org/glance created
(venv)

> openstack registered limit list
+----------------------------------+----------------------------------+-----------------------+---------------+------------------------------------------+-----------+
| ID                               | Service ID                       | Resource Name         | Default Limit | Description                              | Region ID |
+----------------------------------+----------------------------------+-----------------------+---------------+------------------------------------------+-----------+
| cbc0a91221de4fb48a563f87505e85bc | 9ba4a7211b184ded8ff5f8e9e59e29ac | image_count_uploading |           150 | default limit for  image_count_uploading | regionOne |
| af31dcc228f44bd8ab7e88cda20795bf | 9ba4a7211b184ded8ff5f8e9e59e29ac | image_count_total     |          1001 | default limit for  image_count_total     | regionOne |
| 1081eee6d3d146db85b2e272bd95da5a | 9ba4a7211b184ded8ff5f8e9e59e29ac | image_stage_total     |           100 | default limit for  image_stage_total     | regionOne |
| f5b923d2394a45f4b64de741d51a3e6d | 9ba4a7211b184ded8ff5f8e9e59e29ac | image_size_total      |           100 | default limit for  image_size_total      | regionOne |
+----------------------------------+----------------------------------+-----------------------+---------------+------------------------------------------+-----------+
(venv)
> oc delete -f glance_v1beta1_glance.file_quota.yaml
glance.glance.openstack.org "glance" deleted
(venv)
> openstack registered limit list


SAA-1681:Refactor deallocate ending job to improve memory

Codecov Report
Attention: Patch coverage is 0% with 1 lines in your changes are missing coverage. Please review.

Project coverage is 87.27%. Comparing base (44c9203) to head (3c234a5).

Files
Patch %
Lines

...esmanagementapi/service/ActivityScheduleService.kt
0.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #873   +/-   ##
=========================================
  Coverage     87.27%   87.27%
  Complexity     3565     3565
=========================================
  Files           372      372
  Lines         12565    12565
  Branches       1027     1027
=========================================
  Hits          10966    10966
  Misses         1130     1130
  Partials        469      469

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


in windows, ModuleNotFoundError: No module named 'resource'?

i run demo https://automl.github.io/Auto-PyTorch/master/examples/20_basics/example_tabular_classification.html#sphx-glr-examples-20-basics-example-tabular-classification-py and meet error.
i run pip install swig  and pip install autoPyTorch  successfully installed.
this error is caused by pynisher, maybe my system is windows.
Have you encountered or solved this problem?
EROOR Message:
Traceback (most recent call last):
File "D:/project/train_autoML.py", line 23, in
from autoPyTorch.api.tabular_classification import TabularClassificationTask
File "C:\Users\anaconda3\envs\emotion\lib\site-packages\autoPyTorch\api\tabular_classification.py", line 9, in
from autoPyTorch.api.base_task import BaseTask
File "C:\Users\anaconda3\envs\emotion\lib\site-packages\autoPyTorch\api\base_task.py", line 42, in
from autoPyTorch.ensemble.ensemble_builder import EnsembleBuilderManager
File "C:\Users\anaconda3\envs\emotion\lib\site-packages\autoPyTorch\ensemble\ensemble_builder.py", line 24, in
import pynisher
File "C:\Users\anaconda3\envs\emotion\lib\site-packages\pynisher_init_.py", line 1, in
from pynisher.limit_function_call import * # noqa
File "C:\Users\anaconda3\envs\emotion\lib\site-packages\pynisher\limit_function_call.py", line 2, in
import resource
ModuleNotFoundError: No module named 'resource'

Could you provide more details about your environment? for example the pip freeze.

Have you fixed it yet? It looks like the resource mod refers to that resource of Linux?

Have you fixed it yet? It looks like the resource mod refers to that resource of Linux?

no, you maybe run this on linux.

Hello, I'm facing same problem says import resource
ModuleNotFoundError: No module named 'resource'
My system is Windows, and using pytorch 1.01. How to solve it?

Solved, I commented it out #.


Extra check in assignment of intersections with generic constituents

This PR expands the additional check in #37195 to also cover intersections with generic constituents.
Fixes #36637.

@typescript-bot test this
@typescript-bot user test this
@typescript-bot run dt

@typescript-bot test this
@typescript-bot user test this
@typescript-bot run dt

@typescript-bot test this
@typescript-bot user test this
@typescript-bot run dt

@typescript-bot run dt
@typescript-bot test this
@typescript-bot user test this

@typescript-bot run dt
@typescript-bot user test this

@weswigham @pirix-gh I'm seeing the following failure in ts-toolbelt with this PR.
https://github.com/typescript-bot/TypeScript/pull/7/files#diff-1f3859ff65d5bfe2538629eb58913345R3
It is the one gating issue for merging the PR. Any ideas?

@typescript-bot pack this

The fix is out! I mistakenly swapped the lhs & rhs on the terminating condition. I am glad to see how many little mistakes have been caught on this 3.9 release :tada: Thanks!

@typescript-bot run dt
@typescript-bot user test this

RWC and Community Code test suites are clean, and I have a PR up to fix new error in vuelidate on DefinitelyTyped.
@RyanCavanaugh @DanielRosenwasser I think we should move this PR into the 3.9 release. We have already merged #37195 and this PR just finishes the job. It fixes #36637 and uncovered legit issues in ts-toolbelt and vuelidate, but otherwise appears to have no downside.


word and character level word tokenizer.

Some miscellaneous changes with the tokenizer being the main focus. Implements the LearnBase getobs and nobs methods. Uses the WordTokenizers module.
Closes #24

As cool as incrementally reading text would be, I'm not sure it's feasible since you'd need to tokenize the entire stream to implement nobs. Hence the question becomes how to represent a collection of tokenized text samples rather than an individual one. Here it's worth looking at how fastai, spaCy and more handle this.

True, I didn't think about that. At the very least, we should tokenize the full stream, store the tokens in Tokenizer, then return those on getobs(::Tokenizer, i). As opposed to tokenizing the data into a generic vector of tokens and writing getobs(::AbstractVector{<:AbstractString}, i).

Ah, I see. I thought about this, and my logic going in was that since there was only one element in the struct, and we're working in and NLP context, it would be simpler for a coder to use this version. Can you point me to a place where I can read more about these design choices? (Like not implementing methods for base types @lorenzoh ) It feels like there is a lot of context I'm missing.

@darsnack How do I update the PR? I read online I only have to push to my branch, but it doesn't seem to be showing up.

Oh, wow, I must be blind! I see it now.

@darsnack @ToucheSir could you guys help me out with the importing and extending bug?

This section of the Julia documentation explains why type piracy (defining methods of functions you don't own for types you don't own) should be avoided:
https://docs.julialang.org/en/v1/manual/style-guide/#Avoid-type-piracy

You need to add WordTokenizer.jl to the test/Project.toml.

@darsnack


add link for Terraform Registry to README

I added the URL for Terraform Registry of Mackerel to README.
Please review it 🙏

Thank you for your review !


feat: add zod runtime validation for simple account

Pull Request Checklist

[ ] Did you add new tests and confirm existing tests pass? (yarn test)
[ ] Did you update relevant docs? (docs are found in the site folder, see guidleines below)
[ ] Do your commits follow the Conventional Commits standard?
[ ] Does your PR title also follow the Conventional Commits standard?
[ ] If you have a breaking change, is it [correctly reflected in your commit message](https://www.conventionalcommits.org/en/v1.0.0/#examples? (e.g. feat!: breaking change)
[ ] Did you run lint (yarn lint:check) and fix any issues? (yarn lint:fix)
[ ] Is the base branch you're merging into development and not main?

PR-Codex overview
Focus of this PR:
This PR focuses on adding runtime validation for the index parameter in the SimpleSmartContractAccount class constructor.
Detailed summary:

Added SimpleSmartAccountParamsSchema to provide runtime validation for the index parameter.
Modified the SimpleSmartContractAccount constructor to use the SimpleSmartAccountParamsSchema for validation.
Added a test case to verify the behavior when an invalid index value is provided.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

Current dependencies on/for this PR:

development

PR #185

PR #186

PR #187

PR #188

PR #189   👈

This stack of pull requests is managed by Graphite.

Current dependencies on/for this PR:

development

PR #185

PR #186

PR #187

PR #188

PR #189   👈

This stack of pull requests is managed by Graphite.


NPE in CraftTweaker support.

Bonsai Trees version: 1.1.2
Forge version: 2806
I am not using Optifine: no optifine
Link to Crashlog: https://gist.github.com/darkhax/d2955b79ca58ece7c956b2299b8239cd
Description of the problem including expected versus actual behavior: When joining a world, I got the crash. I am guessing the world was put into a state that your mod does not account for.
Steps to reproduce:
I removed all the default stuff, and then changed the ID of an existing soil type. There are no CraftTweaker scripts in this environment.

I think this is a duplicate of https://github.com/thraaawn/BonsaiTrees/issues/59


[ALLUXIO-2830] Shade OSS/S3/S3a UnderFileSystem Modules

https://alluxio.atlassian.net/browse/ALLUXIO-2830

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15031/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.util.UnderFileSystemUtilsTest.alluxio.util.UnderFileSystemUtilsTest
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15032/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.util.UnderFileSystemUtilsTest.alluxio.util.UnderFileSystemUtilsTest
Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15033/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.util.UnderFileSystemUtilsTest.alluxio.util.UnderFileSystemUtilsTest
Test FAILed.

Merged build finished. Test FAILed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15034/
Test PASSed.

Merged build finished. Test PASSed.

@jsimsa there will be one or two more PRs. After that, I will create the script to verify the shading plugin works

sgtm


tapcells offset value fix

offset was set to 1*distance on both the first and last rows causing them to have 2 * n number of tapcells, which in turn causes a DRC violation down the line (sometimes it does not manifest, depends really on the design)

This is also demonstrable in another design

@ahmednofal This DRC happens in a specific technology? When I started implementing tapcell, I was told that the top and bottom rows should have this smaller spacing between cells.

@eder-matheus thanks for the quick reply, this is not a design in openroad tests, it is a 2048x32 and 8x32 DFFRAM blocks
click here for the verilog file
Also I am not sure why the build is failing, this one line should not affect anything else. Unless you are checking on other designs whether they are passing or not. It would be odd if this broke them.

@eder-matheus thanks for the quick reply, this is not a design in openroad tests, it is a 2048x32 and 8x32 DFFRAM blocks
click here for the verilog file
The technology is sky130_fd_sc_hd
Also I am not sure why the build is failing, this one line should not affect anything else. Unless you are checking on other designs whether they are passing or not. It would be odd if this broke them.
Also, I do not think it is accessible for non-authorized users to check why the build failed, this is probably something in the CI.

We have unit tests for every tool, and your update is changing tapcell results, leading to the error in the CI.
I need to check with my colleagues about this change before approving this PR.

@eder-matheus thanks for the quick reply, this is not a design in openroad tests, it is a 2048x32 and 8x32 DFFRAM blocks
click here for the verilog file
The technology is sky130_fd_sc_hd
Also I am not sure why the build is failing, this one line should not affect anything else. Unless you are checking on other designs whether they are passing or not. It would be odd if this broke them.
Also, I do not think it is accessible for non-authorized users to check why the build failed, this is probably something in the CI.

We have unit tests for every tool, and your update is changing tapcell results, leading to the error in the CI.
I need to check with my colleagues about this change before approving this PR.

thank you very much for your quick reply. I should keep this PR open, correct ?

@eder-matheus thanks for the quick reply, this is not a design in openroad tests, it is a 2048x32 and 8x32 DFFRAM blocks
click here for the verilog file
The technology is sky130_fd_sc_hd
Also I am not sure why the build is failing, this one line should not affect anything else. Unless you are checking on other designs whether they are passing or not. It would be odd if this broke them.
Also, I do not think it is accessible for non-authorized users to check why the build failed, this is probably something in the CI.

We have unit tests for every tool, and your update is changing tapcell results, leading to the error in the CI.
I need to check with my colleagues about this change before approving this PR.

thank you very much for your quick reply. I should keep this PR open, correct ?

Yes, you can keep it open. Hopefully, I will have feedback by the end of the day.

Actually relooking at the preceding and successive lines of code, it seems that the pitch might be the culprit.

Actually relooking at the preceding and successive lines of code, it seems that the pitch might be the culprit.

Do you mean the distance between each tapcell? What distance value are you using?

Do you mean the distance between each tapcell? What distance value are you using?

I think the pitch should be 2*distance in the design rules, to have that alternating effect.

Do you mean the distance between each tapcell? What distance value are you using?

I think the pitch should be 2*distance in the design rules, to have that alternating effect.

I see, so the tapcell code should not be touched, right? Also, you mentioned DRCs: what type of DRCs do you see? How many microns between each tapcell are you using?

Do you mean the distance between each tapcell? What distance value are you using?

I think the pitch should be 2*distance in the design rules, to have that alternating effect.

I see, so the tapcell code should not be touched, right? Also, you mentioned DRCs: what type of DRCs do you see? How many microns between each tapcell are you using?

I am not sure I agree, the tapcell.tcl code does include using $pitch variable which is set to $dist2 == 2 * distance between 2 consecutive tapcells (when it is not the first or last row) or $dist1 (1st and last rows)
https://github.com/ahmednofal/OpenROAD/blob/bc0446f41521d20c72634ac2d0574e59b2805320/src/tap/src/tapcell.tcl#L579
The DRC violation is that the distance between the last tap cell in the first row and the decap cell in the boundary exceeds the Design Rule (this happens because the first row has more tap cells, which have to be a certain distance apart, causing the last tap cell which would be close to the boundary, to never be inserted because it would violate the DRC that each 2 tap cells have to be $dist1 apart, so it never inserts the last tap cell)

so if it had inserted the tap cells correctly it would have inserted a last-column aligned tap cell, being very close to the boundary to satisfy the decap-tap drc rule.

Actually I think my fix is wrong I will re-investigate the issue. I will close the PR for now, If new info come into light I will share it here.


Load binding address from application config

Fixes #21

Codecov Report

Merging #22 into master will decrease coverage by 1.07%.
The diff coverage is 40.00%.

@@            Coverage Diff             @@
##           master      #22      +/-   ##
==========================================
- Coverage   95.75%   94.67%   -1.08%
==========================================
  Files          17       17
  Lines         259      263       +4
  Branches        6       12       +6
==========================================
+ Hits          248      249       +1
- Misses         11       14       +3

Impacted Files
Coverage Δ

src/main/scala/App.scala
0.00% <0.00%> (ø)

src/main/scala/AppConfig.scala
96.87% <100.00%> (+0.10%)
:arrow_up:

Continue to review full report at Codecov.

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


Nodejs artifact

fixes: https://github.com/fabric8-launcher/launcher-frontend/issues/313

@edewit Could you try rebasing or something because I can see many different comments


"Application Error" when deploying to Heroku

Hi, can you help me troubleshoot this? I am having issues getting the repo hosted on a heroku app. I'm not making any changes before deploying, but maybe there is some heroku config I am not considering?
Steps to recreate:

fork the repository
click "deploy to heroku" from the readme

upon navigating to the app, I see:

logs:
2020-04-30T17:33:40.239542+00:00 app[web.1]:           UI: http://localhost:3001
2020-04-30T17:33:40.239930+00:00 app[web.1]:  UI External: http://localhost:3001
2020-04-30T17:33:40.240111+00:00 app[web.1]:  ---------------------------------------
2020-04-30T17:33:40.240453+00:00 app[web.1]: [Browsersync] Serving files from: dist
2020-04-30T17:33:40.326247+00:00 app[web.1]: [Browsersync] Couldn't open browser (if you are using BrowserSync in a headless environment, you might want to set the open option to false)
2020-04-30T17:33:52.416283+00:00 heroku[router]: at=error code=H20 desc="App boot timeout" method=GET path="/" host=tb-deployment-test.herokuapp.com request_id=9ac64566-2fbe-4fae-a908-584c2c168520 fwd="<IP_ADDRESS>" dyno= connect= service= status=503 bytes= protocol=https
2020-04-30T17:34:27.911286+00:00 app[web.1]: Error waiting for process to terminate: No child processes
2020-04-30T17:34:28.006932+00:00 heroku[web.1]: State changed from starting to crashed
2020-04-30T17:35:45.107731+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=tb-deployment-test.herokuapp.com request_id=7c8991e3-5283-4bb2-a8d7-c0e116289ed9 fwd="<IP_ADDRESS>" dyno= connect= service= status=503 bytes= protocol=https
2020-04-30T17:35:45.453191+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=tb-deployment-test.herokuapp.com request_id=fb920332-ea7c-4ea7-a4dc-76af77682fba fwd="<IP_ADDRESS>" dyno= connect= service= status=503 bytes= protocol=https

Would love any hints or insights you have! Thanks

Faced same issue. Looks like browserSync is breaking things. Comment out browserSync call at the end of gulpfile.js, that should resolve.

This issue has been fixed in #43, #45, #46, #47, #48, #49
Merge these changes into your forks using the instructions in the README FAQs
Thanks for reporting and let me know if you have any questions.


Support array calls

Hello,
interesting project.
It would be nice if the module could detect arrays
require(["a", "b"], function () {});

detective("code above");   //   []

Useful information can still be obtained from
detective.find("code above");
{
   expressions: [  ' [ 'a', 'b' ] '  ]
}

However the expression has to be parsed again to extract the array values.

Late by a few years, but you can do detective.find("code above", {nodes: true});, and parse out the array values yourself.


EPMC: Better handling of acronyms (Targets & Disease)

@ckongEbi commented on Tue Jan 16 2018

[ ] Explore options to compare Open Targets Library/LINK with Europe PMC text mining (obtain data from OT Library via API etc.)

Hi CK,
Can you ask the EMPC to fix this in their next release of the data.
Gene UCN3 has a synonym SPC and Open targets states that there are over 300 references to UCN3 and respiratory disease but the issue is that there is a lung cancer cell line called SPC-A1 and this is what is picked up by the text mining.
It’s somewhat misleading if users are checking for disease associations of targets (by headline data/numbers only).
SPC also stands for small primary cancers (SPC).I have seen other examples for other genes too.
Is there a  way of refining the text mining e.g.  to include SPC but NOT SPC-A1?
More generally, because EMPC is only mining proteins and diseases, they miss the all point about other entities (in this case SPC-A1 refers to a cell line).
That’s what Andrea tried to solve with Spacy.
If they add a dictionary of cell lines a better handling of acronyms, this would probably solve some of our problems.
Best wishes,
Gautier
cc @gkos-bio @iandunham

@ckongEbi commented on Wed Jan 17 2018
EPMC will add this to their blacklist when generating evidence. We can extend that from the compiled TP data from integration day currently working on by @MichaelaEBI.
A longer term acronym & cell line strategy with EPMC to be discussed.

@ckongEbi commented on Thu Jan 18 2018
TP data from integration day here https://docs.google.com/spreadsheets/d/1RiYCYdD-XHPbEszQKsZvKkC2Y2utAKNj9oC_YgpWEeU/edit#gid=0

@ckongEbi commented on Fri Jan 19 2018
Acronym filtering to be done on OT side.
On 19/01/2018 11:00, Chuang Kee Ong wrote:

To confirm, it will be status quo for the Epmc pipeline feed, as OT work in parallel to improve the acronym recognition.
@Francesco, can you point me to the current blacklist used by the pipeline?
Cheers,
CK
On 18/01/2018 17:45, Ian Dunham wrote:

I don't think that we can add these to a simple black list.
We will look at what we can do based on the acronym recognition we have developed in the OT library and filter the Europmc feed after you give it to us.
On 18/01/2018 17:27, Johanna McEntyre wrote:

Hi Chuang Kee
These are good examples that we should keep to feed into an improved algorithm at some point in the future.  But we do not
have the mechanisms to make such specific rules on a term-by-term basis. Rather, we would do something like: a general rule that would check first to see if a cell-line tagger would tag a gene symbol in that context, and if so, do not tag it as a gene. But we do not have the OT resources to do this kind of work.
We know need to improve the precision of three-letter acronyms in general, but again, we do not have the staff to do this currently.
We can run the pipeline as is and do simple things like add terms to a black list. This is what was agreed until a "next phase" is established.
Do you want us to add

CPA
SPC
CD34
to the blacklist?

Thanks,
Jo

On 18 Jan 2018, at 15:59, Chuang Kee Ong<EMAIL_ADDRESS>wrote:
Hi Jo,
Whilst looking at some of the evidence, these are some examples which we have identified. We will be looking out for more, but can we get a sense of whether the below examples can be implemented in a straightforward way?

Thanks
CK

http://targetvalidation.org/evidence/ENSG00000174059/EFO_0002428
FP Target Assignment:

CD34 is a receptor, here it is used to describe a cell line ('CML CD34+ cells' or 'CML CD34 progenitor cells')
suggestion: Add new rule check that CD34 is not directly followed by: '+', ' cell', ' progenitor cell', ' hematopoietic cell'

http://www.targetvalidation.org/evidence/ENSG00000091704/EFO_0000616

FP Target Assignment:
CPA1 (carboxypeptidase A1, synonym CPA) refers to various things in these papers -

There are several examples of misrecognised acronyms in the text mining evidence on https://www.targetvalidation.org/disease/EFO_0008485/associations

This will be addressed as part of the OTAR2056 literature project.


MedicalResearch: Merges master a few times, generally cleans up the PR

INTERNAL PR-TO-PR
This reverts changes that the maintainers have issue with, fixes bugs, etc.

just realized I left this open


Number of instances is confusing

Ingest scripts need a number as an argument to indicate which instance should be used.
Currently, 1 is for the development instance, 2 for the production instance and 3 for curation.
For me, this is confusing, as I would expect the highest number to also be the 'highest/best' instance (aka production)
Is it, without much hassle, possible to switch this to:
1 is for the development instance, 2 for the curation instance and 3 for the production instance?
Otherwise I'll just have to get used to it.

It's a matter of the order in the local config (the repositories property in the acdh_resources/ARCHE/config.yaml file).
Adjusted it already the way you suggested.


Command line args not getting through

I'm running this on a headless server so I ran the command like:
$ th -ldisplay.start 8888 <IP_ADDRESS>
server listening on http://<IP_ADDRESS>:8000

I spotted that in start.lua the first line is
local arg = {...}

Doesn't this wipe out the command line arguments? When I commented that line out it seems to work fine:
$ th -ldisplay.start 8888 <IP_ADDRESS>
server listening on http://<IP_ADDRESS>:8888

Actually despite the cli showing the correct thing it still wasn't working. I also needed to change this line in init.lua:
M = {
  url = 'http://localhost:8000/events'
}

I just set this to what I needed manually, not sure how to get the cli args through to this script as I'm pretty new to lua.

local arg = {...} snuck in there in an unrelated change. Fixed.
However, passing the parameters to th -ldisplay.start is just the server side. On the client you need to set the url. E.g.
disp = require 'display'
disp.url = 'http://mydisplay:8888/events'
disp.image(img)


Add Support Table to Read the Docs

This PR adds an embedded Google Sheet that lists our supported formats throughout the NWB ecosystem.

I like the approach of having these tabs

but is it possible to move them to the top, make them bigger, or more nicely formatted (less HTML-like), like they are on the sheet itself

It looks like the embed also has some rendering issues

whereas the view in sheets

So I'm curious, if we don't opt for the direct embed, what other options are you able to put together on a different branch?
What's the best looking analogous table you can make in JS/TS/ raw HTML / other sphinx things?

I've created a new repository that simply hosts our derivative representation of the Ecosystem Support Table: https://garrettflynn.com/nwb-support-table/. This website can then be used in the <iframe> instead of the Google Sheets widget.
I've handled the data structure manipulation—so we just need to style this in an agreeable way. What do you think?

@garrettmflynn That is indeed much cleaner, and even gives a more collaborative and better version controlled approach to managing the table - thanks! Would you prefer to use Figma to prototype/communicate visual style improvements?

Depending on the scope of your suggestions, Figma might be better—as there's less room for interpretation.
Otherwise starting here is fine with me.

What's the link to the new repo?

https://github.com/garrettmflynn/nwb-support-table

Cool, I forked: https://github.com/catalystneuro/nwb-support-table
Mind transferring ownership to CN?

lol I can't now because the name of your fork conflicts with the base repo. Would you want me to change the name or would you like to delete the fork instead?

I just removed it instead - all we need now is to update the table link on this PR and good to go?

Actually it's all good. Just updated to the correct URL


Potentionally include the erroneous call stack or API origin in the function result

The error could contain the origin of the error for easier debugging. That way it is possible to debug bottom up by inserting debug info in the function that throws the error to find out which call delivered the faulty info. A full call stack log would make this even easier.
use crate::Error;
use rocket::http::uri::Origin;
    pub fn does_user_exist(origin: &Origin) -> Result<User, Error> {
    match user_exists {
        false => Err(Error::user_missing(origin.path())),
        true => Ok(user),
}

This is especially handy if the server returns Error::DatabaseError. If a route calles more than one SQL query, it is hard to figure out which one failed.


.html extension is not required on GitHub Pages

When viewing my documentation on GitHub Pages, I do not need to add the .html extension to filenames. However, using this Docker image, this is required. This breaks all my links, because they are in the form of:
[link to other page](other-page-without-extension)

GitHub Pages does work when adding the extension, so I could also change my code. However, if you're trying to be as close to GH Pages as possible, this is an issue.

Please elaborate this more, or provide a repo with the source and steps to reproduce it on that source.

Yes of course, sorry for the too short original message:
The GitHub Pages for my repo (https://github.com/sara-nl/clouddocs) can be found here: http://sara-nl.github.io/clouddocs/
In the index page (for example), I have several links to other pages. In those links I do not specify the .html extension (and certainly not the .markdown extension), yet they work fine in GitHub Pages.
When I run the Jekyll image on Docker on my own laptop, following the links result in a 404 Not Found response. Yet, when I then add the '.html' extension in the address bar of my browser, he does find the file.
Steps to reproduce, in bash (or comparable shell):
git clone https://github.com/sara-nl/clouddocs.git
cd clouddocs
sudo docker run --detach --name=jekyll --label=jekyll --volume=$(pwd):/srv/jekyll -t jekyll/jekyll jekyll s
sudo docker inspect jekyll | grep '"IPAddress"' | sed -re 's|[[:space:]]*"IPAddress": "([^"]+)",|View your documentation at http://\1:4000|'

This last command outputs the URL to the documentation in the container (i.e. an HTTP URL on port 4000 of the container). Then:

Copy-paste the URL to your browser
Click a link to a next page, e.g. 'Replacing the VirDir'
Observe the 404 response
Add '.html' to the address in the address bar and press enter
Observe the correct page
Go to http://sara-nl.github.io/clouddocs/ to view the GitHub Pages behaviour
Click on the same link (on the GitHub Pages domain), e.g. 'Replacing the VirDir'
Observe that the address does not contain the '.html' extension, but serves the correct page anyway.

Thanks @niekbosch... this is actually a Jekyll problem but because we are explicitly supporting an old version of Jekyll... @parkr can you tell me if Jekyll 2.4 required the .html extension?
If it did then I'll happily work around it by building a custom version of the Jekyll command (or something else) that knocks out your serve and switches it to watch and starts Nginx for you this was something that was planned anyways for the super image but I'll split that up to get this fixed.

@parkr can you tell me if Jekyll 2.4 required the .html extension?

https://github.com/jekyll/jekyll/pull/3452 is slated to be released with Jekyll 3.

Looks like I need to do it for both stable and pages, fair enough, thanks!

@envygeeks Maybe just for pages, as that's the one we want to mimic GitHub Pages?

@parkr that's fair point.  Yeah that makes it easier.

Aha, I misread that remark about the pages label (thought all versions were trying to mimic GitHub Pages). Changed my documentation so that in the future I will use the pages images.
And thanks in advanced for fixing the problem!

Yup, the only one that specifically tries to mimic github pages is the pages tag, it even uses their dependencies https://github.com/jekyll/docker-jekyll/blob/master/vendor/sync/pages (a part from me adding jekyll-compose because it's useful for everyone tbh) the only difference we can't control is the Ruby version and that's because it would diverge too much to compile an older Ruby plus they use 2.1 so it's not a big deal anyways.


Configurable NumRenderingThreads (and more?)

I had to remove the -dNumRenderingThreads=4 of the convert command in order to make this work on my server. It would be nice to have this configurable. Maybe other parts of the gs command should be configurable too? I don't have much insight in gs.

I'll look into this, by the way what was the Ghostscript version you are using in the server ?

9.00


This pr is to correct apache license of 'pkg/utils/unix.go'.

Modified 'pkg/utils/unix.go' with adding License description "Copyright 2023 The Fluid Authors." on the first line.

@HuiyuanYan Pls fix the DCO check with git commit --signoff


[release-0.4] Disable HTTP/2

Mitigates HTTP/2 CVEs
Backport of https://github.com/medik8s/node-healthcheck-operator/pull/258
ECOPROJECT-1731

/test 4.12-openshift-e2e


Grid Digitizer not reset when new grid is added

Describe the bug
Grid digitizer "type" selections (e.g. collection object to be created, "None") are not reset upon grid digitizer "Set"
To Reproduce
Steps to reproduce the behavior:

When I  go to grid digitizer.
Then I see a certain grid preset or default.
And I want to use a different preset so I go to the "#" symbol.
And I enter the number of rows and columns I want and hit "set".
The previous selections are still set and are not internally consistent (e.g. a checkbox means both create a collection object and don't create a collection object and mark it as "None" or one of the other dropdown options.

Expected behavior
Upon hitting "set" - all checkboxes should reset to the default of "create collection object" and should all be "checked".
Grid digitizer upon opening:

Grid digitizer after setting a different number of columns and rows. Note how a "check" can mean different things.

Environment (please identify where you experience this bug:
*** One of ***

Sandbox - 42a024c on 2020-03-31T01:56:43Z
Production
Chrome

This is back in production, please re-open.

Question, in future development, could we use "edge detect" instead of setting number of rows/columns? (Inselect already does this?) Yes, I can create a new ticket if need be.

@debpaul probably best for new ticket

Can I also bump this up as a bugfix? @mjy @jlpereira


canonicalize the current_exe result when self updating, so that it works with symlinking.

Fixes #885,
It centralises the resolution of the self path into a single function. Consolidated all the locations which queried the self path to call that function for better maintainability and consistency.
this change could also help towards #844, giving better support to symlinks and therefore custom locations

An Issue I encounter with that approach is that the juliaupselfbin which would be the parent folder to get_juliaup_path(), is locked behind the selfupdate feature, and so, not available in all places where access to the self path is required (i.e.: in the install_version function in the operations.rs file).
Another issue is that that would require passing the GlobalPaths object to many functions that as of now do not require it and would need to get their signature updated:

install_background_selfupdate(interval: i64)
get_bin_dir()
do_initial_setup(juliaupconfig_path: &Path)
run_versiondb_update(   config_file: &juliaup::config_file::JuliaupReadonlyConfigFile, )
run_selfupdate(config_file: &juliaup::config_file::JuliaupReadonlyConfigFile)

are all functions that would need to change signature for them to use the GlobalPaths object.
Now that I dig a bit more in depth, I noticed also some inconsistencies on how the program refers to its own bin folder:
there is in use the functionget_bin_dir() (from #165) for some symlink operations, which searches an env variable JULIAUP_BIN_DIR or defaults to the parent of the binary if and only if the bin dir is within the user home folder.
But in the GlobalPaths object we refer to the bin folder only as the parent of the executable (it was also like that before my changes).
It would very much be convenient to standardise this, so that there is only one "authority" that tells us which is the bin folder.
From my point of view there are two possibilities:

let the binary (current_exe()) decide where is the bin folder, but that would conflict with existing JULIAUP_BIN_DIR and therefore would require either rethinking that pull request. Moreover, now that JULIAUP_DEPOT_PATH is a thing, we would have that juliaupselfhome != juliauphome which I have trouble imagining a scenario where that could be beneficial.
let the bin dir (either JULIAUP_BIN_DIR or a default location) decide where to find the executable. This in my opinion would instead create some possible conflicts with the JULIAUP_DEPOT_PATH which would need to remain in sync ot it might create inconsistencies.
let the JULIAUP_DEPOT_PATH (or a default path if it isn't set) be the only authority where we can find the bin dir and therefore the binary. This means getting rid of both JULIAUP_BIN_DIR and current_exe() calls.

Personally I think that the most robust option is using JULIAUP_DEPOT_PATH as the only authority if juliaup get's installed in a non default location. It makes little sense to have both JULIAUP_DEPOT_PATH and JULIAUP_BIN_DIR, and at that point we could also get rid of all current_exe() calls.
then

juliaupselfhome = $JULIAUP_DEPOT_PATH
juliaupselfbin = juliaupselfhome\bin
my_own_path = juliaupselfbin\juliaup

But it could be breaking for some (probably only those using JULIAUP_BIN_DIR, which isn't even documented).
Unless I am missing something foundamental, I don't really see why we should ever have juliauphome != juliaupselfhome (which would require keeping the reference to the current_exe)

@davidanthoff bump? any news regarding my comment above and/or your version in #915 ?
Shall I close this?

Refer to #915


How to specify the pluses or groups that need to be updated to MISP?

Description
How to specify the pluses or groups that need to be updated to MISP?
Versions

otx-misp: latest
PyMISP: v2.4.131
MISP:v2.4.123
Python (Python 2 will not be supported):3.6
Operating system:Ubuntu 18.04.5 LTS

Traceback or error

Is this project abandoned?


CSScomb fails when first line contains comment

Using CSScomb 5.1.0 with VSCode 1.15.0.
A file with a comment on the first line will cause CSSComb to fail.
Examples:
/* CSS Comment */
body {
    color: black;
    background: white;
}

// SASS Comment
body {
    color: black;
    background: white;
}

VSCode "Output" panel after running "CSSComb: Format Styles" command:
[CSSComb]

TypeError: Cannot read property 'is' of null

Adding an empty line before the comment avoids the error but results in two empty lines before the comment.
Before CSSComb (empty line before the comment):

/* CSS Comment */
body {
    color: black;
    background: white;
}

// SASS Comment
body {
    color: black;
    background: white;
}

After CSSComb (two empty lines before the comment):

/* CSS Comment */
body {
    background: white;
    color: black;
}

// SASS Comment
body {
    background: white;
    color: black;
}

Hello, @jhildenbiddle,
This works if you run CSSComb as CLI, JS Module or maybe with something plugin/editor?

Closed as outdated issue. Feel free to reopen.


Dialogue: Text consistency, punctuation at the ends

I went ahead and replaced all instances of "pokemon" and "Pokemon" with the proper "Pokémon" name. Additionally fixing some grammatical issues prominent in some areas.

@loonaticx the asserts already add periods to the end of messages, so adding one causes a double period at the end.


Adding some const goodness

Const to var and functions as suggested by resharper

Looks like you've got tons of merge conflicts, probably caused by my recent formatting PR.


explorer: add a note on the online filter that standby nodes are shown with the offline nodes

apparently it's shown with the offline nodes

will use a tool tap on the switch

Verified on qanet dashboard 2.0.0-rc14
Now a tooltip appears on hover mentioning that standby nodes are not included when the online only filter is active.


Not all files present after manually setting template configuration.

Problem description
After setting the template configuration to my personal repo, the file "default_billing.py" cannot be found. The share folder only seems to have files labeled with "tariff."
Steps to reproduce

Run these commands in docker image slacgismo/latest
gridlabd template config set GITUSER johnsonhsiung
gridlabd template config set GITREPO openfido-tariff-design
gridlabd template config set GITBRANCH develop-tariff-design-openfido
gridlabd template config set DATADIR /model/us/ca/slac
gridlabd template get tariff_design

Run gridlabd model.glm -t tariff_design with an appropriate model.glm (can be found here https://github.com/slacgismo/gridlabd-template/tree/add-tariff-design/US/CA/SLAC/tariff_design)

See error about missing default_billing.

Expected behavior
Tariff design template runs smoothly.
System information

GridLAB-D version: HiPAS GridLAB-D 4.2.29-220103 (master) Linux
Operating system: Linux ee69df51fd76 5.10.25-linuxkit #1 SMP Tue Mar 23 09:27:39 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Supporting information
Attachments

Did you add the file to the .catalog file?


Hotmail and outlook mails are not senting

In version 304 hotmail and outlook mails are not senting from outbox . K9 shows server error in notification area.  And when we try to move or achieve the mail then it shows, the mail is not synced with the server .

Please use the mailing list for support requests.

There is no problem with version 303 with same settings. Its a bug .


Fix logger error for cellpose>0.7.2 by using logging

This is a (hopefully?) better fix for https://github.com/MouseLand/cellpose-napari/issues/21
and https://github.com/MouseLand/cellpose-napari/issues/20
It supersedes https://github.com/MouseLand/cellpose-napari/pull/28
Instead of limiting the cellpose version, the logging is now handled by logging module form the python standard library.
Messages are written to the console and logged to a file.
This works with the latest cellpose version: 2.0.5 while previously versions after 0.7.2 broke running the plugin.
(Note: there is still an issue with the 3D sample image, but that's a different issue and the cellprob_threshold depreciation, but that is also a different issue.)

@tlambert03 With the logging changes, now there is no indicator that something is working. In the case of the samples, it's fine, because even on CPU they are quick. But for real images, it's odd that clicking has no apparent effect. Clicking again actually ends up re-running the computations making extra layers.
Maybe at least a Starting notice should be printed? Or is there a way to make a progress bar?
I'm willing to help if pointed in the right direction!


Call for Participants

If you are interested in finding out more or in bringing a group to Library Carpentry, let us know!
Note that places will be allocated at the discretion of the organisers (we are nice folks so you can trust us to be fair!)

Yes please I'm interested to know more - think there are some others from Cambridge interested too

Excellent! Celine and I had an exchange earlier in the month so I'll put down a Cambridge cohort.

Yes, I'm definitely still interested and Chris & I can see if there's any other Cambridge people who'd like to join our cohort :)

Excellent! Keep me updated by I'll assume 3ish from Cambridge.

I'm really interested in coming but it may be dependant on the success of a funding application for my travel expenses.  I also can't say right now whether or not I'll be able to form a group although I am going to try to scrape a few southerners together (from Brighton and surrounding area). Would you still consider participants who come alone? Thanks, Clare (University of Sussex).

I'm definitely interested. May be able to wrangle a few colleagues from Wellcome Library.

Ok so I've got one definite (me), one almost certain and two possibles from the South East now :)

@ClareP : excellent! Official booking will go out sometime over the summer so there is time to pull some folks together. In the meantime, I'll earmark 4
@jennpb: As above really. Shall I put the Wellcome down for a few provisional places?

@drjwbaker Two from Wellcome for certain.

and hello @ClareP! I know your sister (at least I think she's your sister!). Happy days.

@drjwbaker Thanks!
@jennpb Hello! Yes you probably do know my sister, she's famous in library land :D I'm crossing my fingers she'll be one our Southern crew!

Yes, I would be interested - and I'm trying to get together a City Uni Library crowd, too!

6 so far...

Hi Tim. You should have a chat with Ernesto Priego as we have a batch of places set aside of citylis folks (hosts privilege and all that).

Hi James - I've got quite a lot of potential interest from Cambridge. Even though they're not all definite, I've got another 5 possibles apart from me and Chris so it might be worth pencilling in a slightly bigger Cambridge cohort than the 3 we originally agreed (I doubt everyone who has expressed an interest will end up being able to come but it might end up being 4 or 5 once people have looked into the logistics)

Great! Looking at getting out a formal signup thing soonish, but this is helpful for initial planning.

@JimTim81 @cjclib @libchris @jennpb : could you please either post you email addresses here or send it to me at<EMAIL_ADDRESS>Following on from your expression of interest in Library Carpentry, I'm am nearly ready to confirm bookings and hope to send an email round next week with some final details so you (and your organisation) can make an informed decision about whether or not to attend.
Thanks!

@drjwbaker I can be reached at<EMAIL_ADDRESS>

Thanks @jennpb! To confirm for those listed on my note from 2 days ago, this means that I have your email addresses and will be in touch this week.

I think we had ten interested in doing it from here at city. I'll ask around again this week and see if interest is still there.
On 5 Jul 2015 09:49, James Baker<EMAIL_ADDRESS>wrote:Thanks @jennpb! To confirm for those listed on my note from 2 days ago, this means that I have your email addresses and will be in touch this week.
—Reply to this email directly or view it on GitHub.

Call closed.