extension: new extensions for stateful session sticky

Commit Message: "extension: new extensions for stateful session sticky"
Additional Description:
PR after #17848 ##17290.
In the #17290, we added new cross priority host map for fast host searching.
In the #17848, we extend LoadBalancerContext interface to provide override host and select upstream host by the override host.
Finally, in this PR, we expanded a new API to allow users to extract the state of the session from the request, and change the result of load balancing by setting the override host value.
Related doc: https://docs.google.com/document/d/1IU4b76AgOXijNa4sew1gfBfSiOMbZNiEt5Dhis8QpYg/edit?usp=sharing
Risk Level: Mid.
Testing: Added.
Docs Changes: Waiting.
Release Notes: Waiting.
Platform Specific Features: N/A.

cc @mattklein123 @snowp

Some problems to be solved:
🤔 **Should this new API route level or filter level ? In the current implementation, the new API is at the filter level, which is part of the router Filter API. But should it be part of the route? **
🤔 I added a new extension to support different types of session state, and provide cookie based session state as a basic implementation, which requires the support of maintainer.

The advantage to using a separate filter would be to reuse the existing implementation of the route's typed_per_filter_config to allow stateful sessions to be enabled/disabled per route (and perhaps even to allow more advanced config difference across routes, like altering the allowed health or even the cookie name).

Sounds great.

I agree with @zuercher 's opinion. But still waiting for @snowp 's feedback before revising this PR.
Also, it looks like the commit from the code review won't pass the DCO, so I might need a force push afterwards.

+1 from me if we can easily implement this as a filter + FS, I think that would make it easier to use this feature in various creative ways vs it being specifically for stateful load balancing

+1 from me if we can easily implement this as a filter + FS, I think that would make it easier to use this feature in various creative ways vs it being specifically for stateful load balancing

Yes, based on this function, we can do more hacks on load balancing. If we hope that override host can have more various creative ways, will the filter + new StreamDecoderFilterCallbacks interface be better? In this way, our Router does not need to perceive the FS key.

@zuercher Hi, I completed the refactoring of this PR. Now, I use a http filter to implement stateful session which gives us two new extensions.
Although they all are simple extensions, according to the requirements of the new extension, we should still need at least one maintainer to support it. Do you have extra free time to help me improve these extensions?

@wbpcode any progress here on finding an appropriate maintainer sponsor? Wondering if we should close this out or move forward with review.

@wbpcode any progress here on finding an appropriate maintainer sponsor? Wondering if we should close this out or move forward with review.

There is currently no clear progress. May be we can close this temporarily. If there is result later, I will reopen this PR. I still want to land this feature eventually.

@dio Thanks, dio, thanks 🌷. I will update this PR this Friday.

Thanks for your detailed review @dio ❤ , I will update this PR before this weekend.

@dio Sorry for the delayed updates 😞.
I updated comments and also added new integration tests. PTAL when you have free time, thanks.  🌷

/retest

/retest

Hi, @dio  PTAL again when you have free time. 😄

@dio Can you please review. Also @wbpcode there's a merge conflict.

@ggreenway Thanks, i will fix it.

/retest

do we have an entry to docs/root/version_history/current.rst yet?

Nope. I am going to add the corresponding entry after all reviews are basically completed.

@dio PR updated 😄

@envoyproxy/api-shepherds This PR has been around for a long time, and there should be no changes to the API. I think it ready for the API review.

@alyssawilk I see you reviewed the design doc; do you consider this signed-off? I think we're basically talking about "how do we add hard sticky to Envoy LB".

@wbpcode can I confirm my understanding of the design/code that it's only ever possible to select a host that exists (e.g. already configured via EDS or DNS resolution)? The reason I ask is that from a security perspective, we want to make sure that an untrusted client can't inject arbitrary IP:port that Envoy connects to.

@htuch Yes, only the exist host can be choosed.

@htuch The new common cookie API is done. （Merry Christmas 🎄 🎁 ）

hi, @dio , now API is ready and docs and release note are added. Do you think there are any areas that need improvement? 😄

we want to make sure that an untrusted client can't inject arbitrary IP:port that Envoy connects to.

This looks important, do you think we can have a check (in the test?) to make sure this won't happen?

we want to make sure that an untrusted client can't inject arbitrary IP:port that Envoy connects to.

This looks important, do you think we can have a check (in the test?) to make sure this won't happen?

It will never happen because we only search host in the exist host list.

Finally, 😄

/retest

@zuercher since you've already been looking at this, assigning your way for senior maintainer approval/merge. Thanks.

Thanks for your detailed review. @zuercher

So may be this can be merged now ? cc @dio cc @zuercher cc @htuch

@dio can you look at what's changed since your approval and if you're happy, go ahead and merge.

Hi, @dio , can you take a look again when you have free time? Thanks. 🌷


Lint/BlockAlignment gets it wrong for nested expressions

  def get_gems_by_name
    @@by_name ||= Hash[*get_latest_gems.map { |gem|
                         [gem.name, gem, gem.full_name, gem]
                       }.flatten]
  end

The splat doesn't seem to matter to emacs nor to rubocop where each disagree on where the close brace should be.

Opened a PR which fixes this. I'm also thinking about unary operators, like - and ~. How does this look:
a = ~method do |param|
      something
    end

As opposed to this:
a = ~method do |param|
       something
     end

Sounds reasonable.


Cannot run phantomjs

Issue description
With phantomjs2 installed, when running phantomjs, I get
phantomjs                                                                                ~
Error executing phantom at /nix/store/i51xm2sih7nih5y20yxka04z77jhrc2b-nodejs-phantomjs-2.1.7/lib/node_modules/phantomjs/lib/phantom/bin/phantomjs
Error: spawn /nix/store/i51xm2sih7nih5y20yxka04z77jhrc2b-nodejs-phantomjs-2.1.7/lib/node_modules/phantomjs/lib/phantom/bin/phantomjs ENOENT
    at exports._errnoException (util.js:870:11)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32)
    at onErrorNT (internal/child_process.js:344:16)
    at nextTickCallbackWith2Args (node.js:437:9)
    at process._tickCallback (node.js:351:17)
    at Function.Module.runMain (module.js:443:11)
    at startup (node.js:134:18)
    at node.js:962:3

Technical details

System: 16.09.git.ccf29b7 (Flounder)
Nix version: nix-env (Nix) 1.11.2

/cc @aflatter

I can't reproduce:
$ nix-env -f '<nixpkgs>' -iA phantomjs2
installing ‘phantomjs-2.1.1’

$ cat /tmp/hello.js
console.log('Hello, world!');
phantom.exit();

$ phantomjs /tmp/hello.js
Hello, world!

I'm running nixos version 6d16979

what is ccf29b7?

@DamienCassou I get the same result when installed using phantomjs2.
It turns out that phantomjs 2.1.7 is available as a npm package (nodePackages.phantomjs), which is the package that I was using.
I don't see why we should keep both, I think I'll send a PR to remove it from nodePackages.
Then I still get (with the same hello.js):


Forbid { or } characters in token names, forbid $ at the beginning

The W3C draft specifies that token names must not begin with $ characters. Let's introduce this rule.
It also states that { or } characters are not to be used at all in token names.
Let's add a validation that users cannot save their tokens with these characters in name, or $ at the beginning.

@six7 can we look into more of these cases?
A user recently used Value as a part of their token name progress-bar.value.typography (the json uses this to define the value of a token) and this resulted in the plugin to creating this token in the Other type after pushing and pulling from their repo.
Also created a ticket for displaying error messages when users are trying to use these names and or characters:

Will be part of 2.0

Do we have it documented somewhere what error messages come up and what causes them? Could be nice/helpful to link to the new doc I wrote on naming tips based on technical specs which includes these items, the "value" or other token properties in the name, as well as the "flattening" issue to be aware of that @jorenbroekema raised to us.

Added to Featurebase Roadmap-	❇ W3C - DTCG Specification Alignment

Added to Featurebase Roadmap-	❇ W3C - DTCG Specification Alignment


fix encoding issues in config files

Fixes #492

Codecov Report

Merging #493 (67bef79) into master (522478e) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:exclamation: Current head 67bef79 differs from pull request most recent head 465a70b. Consider uploading reports for the commit 465a70b to get more accurate results

@@           Coverage Diff           @@
##           master     #493   +/-   ##
=======================================
  Coverage   98.06%   98.06%
=======================================
  Files          22       22
  Lines        2532     2533    +1
=======================================
+ Hits         2483     2484    +1
  Misses         49       49

Impacted Files
Coverage Δ

robocop/config.py
94.38% <100.00%> (+0.02%)
: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 522478e...465a70b. Read the comment docs.


Make Content-Type in token_post_header configurable

Hi, for getting an access-token from the SoundCloud API I had to change lib/oauth2/client.ex#L177 from
put_header(client, "Content-Type", "application/x-www-form-urlencoded")

to
put_header(client, "Content-Type", "application/json")

otherwise I'd just get a 406 with an empty body back.
Is there a way to configure this or build it into my own strategy?
Thanks

Hi @optikfluffel,
You will want to create your own custom strategy for this.
Have a look at the example custom strategy I made in the README here. If you look at the get_token function you'll see that I'm setting the "Accept" header there. You can do the same for the "Content-Type".
Let me know if you need any further help.


Tried your default code plus my URL not working at all

CHeck screenshot : https://www.dropbox.com/s/84f0i2d9azjyvyg/Screenshot 2019-03-07 12.29.38.png?dl=0

I tried the default code and it doesn't work at all. not even with the the amazon url.

next time @qaxim  dont use droxbox and use a more flexible and compatible way like embebed right here in the github issue ...  i cannot see the pidture today

did you put the provided script tag inside ?


The validity during training is only 42%

I have experienced this for several times. Does this affect the result video?
I want to know why this happens.

I think it might be because your video duration is too short.
Maybe you can try a 3 min video


Fix issue 19297: handle comparison of signed and unsigned JSONValues

JSON does not have any notion of multiple numeric types. (JS only uses double.)

The desired change in issue #19297 is that unsigned integers and signed integers with the same value should be considered equal. However, the change as written also does two other things not mentioned by issue #19297:

Each negative signed integer is equal to a corresponding large unsigned integer (just as with standard D comparison of long and ulong). Equality of negative and non-negative integers may not be what the PR intended. Combined with this PR making it possible for an integer/uinteger to equal a floating point value this also breaks the transitive property of equality.
Integers are truncated to double.mant_dig bits of precision before comparison to floating point values (just as with standard D comparison of long and double). This breaks the transitive property of equality since two large integers not equal two each other may be equal to the same floating point value.

Additionally, changing == to numeric equality as proposed in issue #19297 has the inevitable consequences that:

a == b no longer implies a.type == b.type.
Two JSONValues may be equal but a property (integer/uinteger/floating) that is accessible on one may throw an Exception on the other.

I would like to hear your thoughts on whether these are okay.
(Note: since JSONValue already isn't usable as a key in an associative array this PR doesn't need to add a toHash consistent with the changes to opEquals, but otherwise it would.)

a.type is broken anyhow. JSON has no concept of uinteger to begin with. So I'm inclined to not care about that.
Good point about very large integers no longer preserving transitivity of equality. I'm open to solutions! Maybe integers not representable as double could compare false to double JSONValues? Similarly with signed and unsigned - types should only compare equal if they're within each other's intersection of domains.

@FeepingCreature That sounds reasonable.

I don't think it's possible to unequivocally define "equality". Some goals that seem sensible would be to do what D's == does, or what JavaScript's == or === do.

JavaScript's == evaluates to true for comparisons like 1 == "1", so that seems out-of-scope for std.json.
JavaScript's === is quite similar to D's is, except is will return false for different references to the same data. The behavior before this PR is close to ===, however as has been mentioned, JS has no notion of integer types, so it's not possible to compare them adequately.
D's == is close to the behavior of std.json with this PR, with the added property that type errors now result in false. Notably, { auto i = uniform!uint; assert(int(i) == uint(i)); } will always hold in D, so I think that's a good goal. Equality of integers of different value ranges is part of a larger problem including different widths, ordered comparison, checked conversion and overflows, and seems like a problem better left to e.g. std.checkedint or std.conv.

It was too ugly. Reduced the PR to just signed and unsigned ("toString equality").

No. I'm going back to my initial approach of comparing signed, unsigned and floating directly.
@n8sh I agree with all your issues; however, they are already issues with D.  That aside: D has made the decision that different numeric types are comparable. D has made the decision that -1L == ulong.max. D has made the decision that 0 == 0.0. We may not like these decisions, but as it stands they're the "law of the land", and imo it is more important in this to be internally consistent than "correct" by some subjective numerical standard.

@FeepingCreature Reasonable. I'd say the greatest priority is for a JSONValue to behave like one would expect of a JSON value, and your PR brings things closer to that.

who does that anyways?

Now that you mention it, what use case motivated this PR to begin with?

Now that you mention it, what use case motivated this PR to begin with?

JSON serialization from a type with ulong fields, unittested and compared with JSONValues constructed with integer literals.
It took me a while to realize why JSONValue(5678) was not equal to JSONValue(5678).

ping


/css route not found

Laravel Version: 5.5.24
PHP Version: 7.1
Using Valet

Description:
For some reason, the path /css can't be found by nginx and a 404 error is shown.
Steps To Reproduce:
in routes/web.php:
Route::view('/css', 'css');
with a corresponding view file css.blade.php.
In contrast,
Route::view('something/css', 'css');
works.

Do you happen to have a /public/css folder? Your web server will probably prioritize static folders and files before sending requests to Laravel's routing system.

ah, of course, that is it, thanks!


Server Sent Events

Almost done, but I would also like to be able to "subscribe" multiple connections to one event stream


Allow lfs.fetchinclude and lfs.fetchexclude in .gitconfig

The lfs.fetchinclude and lfs.fetchexclude keys seem save to read from the working directory's .gitconfig file. /cc @sinbad @ptoomey3
Docs: https://github.com/github/git-lfs/blob/master/docs/man/git-lfs-fetch.1.ronn

Seems sane.

I doubt many people will actually do this because including / excluding is typically a personal workflow thing (different people in the team use different sets of files), but it's safe to do it.


Do an explicit undefined check on fallback zoom

Hey @ghybs ,
Thanks for the awesome tile fallback library!
I was playing around when my tile server started erroring out, and I think there's a bug when minNativeZoom is set to zero, and leaflet fails to fetch any tiles.
If minNativeZoom is set to zero and you can't receive any tiles from your tile source you'll enter this loop:
fallbackZoom reaches 1
tile._fallbackZoom becomes 0
0 is not less than 0, so fallbackZoom < layer.options.minNativeZoom is false, and we don't return the error tile.
... so we request a tile and loop around
tile._fallbackZoom is 0, which is falsy, so we set tile._fallbackZoom to originalCoords.z -1. We begin our loop again.
By checking for an explicit undefined value, we won't hit that loop -- tile._fallbackZoom will be set to -1, it will be less than zero, and we'll set the error tile.

Hi,
Thank you for submitting your PR!
Nice catch!

Thanks for merging! would you mind releasing a patch release?

Hi,
Shipped in v1.0.4


Colors just flare up briefly and then disappear again

Title says it all.
Expected: Background of tailwind color classes stays colorized in the appropriate color.
Actual: Background returns to default background color after a couple ms.

that's very strange. do you have any other tailwind colorizer installed?

do they come back if you start editing the file

that's very strange. do you have any other tailwind colorizer installed?

I don't use multiple in parallel if that's what you mean.
I have tried others, tho. With the same result.

do they come back if you start editing the file

Yes, but only if I edit the text of the color class. Not if I just edit anything.

I can't reproduce this.. some kind of screen recording or something would help

https://gfycat.com/simpleadmiredbellsnake

unfortunately you might just have to go and disable all other plugins until it works

Disabled everything except for keymaps and LSP stuff  (which obviously I need for tailwind).
Issue persists.

what version neovim are you using

0.7.2

try latest git because thats where I tested everything

It works fine for me on 0.7.2

I encountered something similar, the Tailwindcss LS worked fine, but in .css files with cssls, the colors would show when entering the buffer, but if i moved the cursor around they would disappear.
I found that disabling "xiyaowong/nvim-transparent" fixed the problem for me, i would guess it is something related to opacity or highlight groups

I don't use that plugin and I already disabled all plugins that aren't absolutely necessary.

Okay, i have been able to reproduce this issue. Are you passing
capabilities.textDocument.colorProvider = {
  dynamicRegistration = true
}

to your lsp servers like the readme?

@mrshmllow yes, I set colorProvider.dynamicRegistration = true and I
can reproduce this issue with tailwindcss LSP, but I don't face this
issue when using themaxmarchuk/tailwindcss-colors.nvim


Update raspi build

here is the summary of changes

update Ubuntu raspi kernel to 1034
do not fail if some patches are skipped

It could be that the RT_PATCH is not exactly aligned with the raspi kernel and some patches are already applied. Let us do not fail if the patch skipped.

calculate the closest RT patch instead of hardcoding it

introduce a shell script that calculates the RT patch closest to the ```raspi`` kernel

find the latest UNAME_R instead of hardcoding it

retrieve the latest raspi kernel from the list

use merge_config.sh to merge kernel fragments

@LanderU could you please approve it again. I have changed review policies and now it will be automatically merged after the second review

@razr you need another approval.

Oh wait! I'm not code owner for this repo.


Add support for InfluxDB v2.x and Token authentication

Hello,
I just switched to InfluxDB v2.3 and thought I'll provide you with the required modifications.

While at it, I just realize I also made modifications years ago to support multi-byte characters.

I have just tried these modifications, and they don't seem to work. Is the problem that the Organisation is not passed in the PostToInfluxDB? I get a 'not found' log response.

Hello,
Are you sure you provided these 3 parameters in the SmartApp configuration?

bucket
organization
token

The Organization and Bucket are sent via URL, while only the Token is sent via header.

Hi Konnichy - yes I have provided all parameters. I guess if you have this working, then it must be an error my end - I'll keep digging/playing! Thanks for your quick reply.

I confirm it does work for me.
All the required request info is passed to PostToInfluxDB() via the state variable.
Also, it's not visually obvious, but you can click on the first line in the SmartApp configuration panel to change the logging level. Setting it to "trace" could provide more information.

Also, with Groovy being phased out, don't get your hopes too high. This SmartApp is expected to stop working before the end of the year in any case.

With Groovy being phased out soon, does anyone know an alternative solution for data logging?

Have a look here: https://github.com/eargollo/smartthings-influx
This is the "InfluxDB topic" on SmartThings: https://community.smartthings.com/t/smartthings-data-visualisation-using-influxdb-and-grafana/44946/141.
I recently experimented with SmartApp development (and NodeJS, and Javascript) and I may try something on my side too. The downside of the app linked above is that it only polls. I'll use event subscriptions if I write it myself.

@Konnichy, looking forward to your solution - it will likely be more simple and perform better than what I’ve seen so far. NodeJS type solutions seem too complex, require server setup, and as you stated only polls.

Unfortunately, with SmartThings abandoning Groovy, they also stop running services on their cloud. Device drivers now run on the hub, but it is now left to us where SmartApps are hosted. They provide guidelines for hosting on Amazon AWS or our own servers. So it doesn't simplify the hosting process at all.
Also, although the SmartThings API could be used from any development language, libraries provided by SmartThings are based on Node.js. So, any SmartApp development will likely be Node.js code.


Why can't I get the same results as in the paper?

This is what I get when I run your code, and the prompt is "a basketball". I haven't modified any parameters, can you give me some advice on where I went wrong?

Thanks! I know what happens to me!

Thanks! I know what happens to me!

maybe the sd model , check it

Hi,
Glad that you've figured out the solutions.
Please reopen this issue if you need more help regarding this.


fix paths

@MikeWasson - could you please take a quick look? Thanks!

@Petertaylor9999 I merged but it doesn't seem to be staging to master. I'll hold off pushing this to live.

I was able to manually request a build, should be live now.


add windows support

Guys on windows we need to make a build of this project, maybe someone can help here
#12 to pass this ci step

we tried, but it seems that the windows platform was not created for software developers


Internal error: Expected value to be neither null nor undefined: id

I am having this error for last few days. This is on a existing application folder which was deploying fine few weeks back. I have uninstalled and reinstalled VS Code and its Extensions 10+ times and still on the same error. I have tried updating all the npm packages. It is very frustrating and this was working fine a month back earlier. Not sure what changed in last 1 month. Unable to deploy even a simple hello world apps to Web App. I start getting these error when I am trying to deploy (selecting the Azure subscription --> Listing the Resource groups and then this error) . I see same errors under 13-Azure App Service.log under C:\Users<userid>\AppData\Roaming\Code\logs\20240813T121629\window1\exthost\output_logging_20240813T121631. Any pointers would be very helpful.
I am also getting following error right next. "Error reading response as text: aborted". Not sure where or why am I getting these errors.

When you expand our Azure view in VS Code, are you able to see your resources properly?  How about in the Portal?


Add the KDL mapper

This PR depends on https://github.com/dpla/heidrun/pull/36.  Let me know if you'd prefer me to squash the commits :)

This is straightforward and looks good to go, pending resolution of providedLabel for language, and making sure that any lines wider than 80 characters are wrapped.

Thanks all.  I've run Rubocop over it and switched prefLabel to providedLabel for language, so that should be good to go.  Two long lines remain, but Heidrun::MappingTools::File.extension_to_mimetype doesn't give me much room to move without wrapping somewhat unnaturally, so I left it as is :)

:+1: :horse_racing:


Return previous record from main query

Currently a second query is run using paging filters to determine if there is a previous record or not. By using >= or <= rather than > or < in the token query we should be able to return the previous and next results in a single query.

Fixed in #175


Enhance capability to add min/max instances

This change requires this PR in order to enable beanstalk capabilities.

Nice work! I'll merge, add a README, and publish a version.


Paginator's setPageName() not working

Laravel Version: 5.3.30
PHP Version: 7.0.13

Description:
Paginator creates links as expected with whatever is passed to setPageName() but all pages show the first paginator page.
Steps To Reproduce:
public function noticias(Request $request)
    {
        $news = News::where('enabled', 1)
            ->orderBy('date', 'desc')
            ->paginate(5)
            ->setPageName('foo');

        return view('news', [
            'title' => 'Latest News',
            'news' => $news
        ]);
    }

Generated links

http://test.dev/news?foo=1
http://test.dev/news?foo=2
http://test.dev/news?foo=3  // etc, etc

Expectation
That each link pulls the correct rows from the database, thus, all pages should have different results.
Actual result
All pages show the same results (the first 5 results in the paginator)
Notes
Removing setPageName('foo') makes links to be named page and paginator works as expected.
Why I want to do this:
I need to change the word page to whatever language the visitor is in.

Is because you are using the setPageName in the LenghtAwarePaginator that is the result from the paginate query, therefore you need to pass the page name to the Builder object in order to to let you know the page name is "foo".
 public function noticias(Request $request)
    {
        $news = News::where('enabled', 1)
            ->orderBy('date', 'desc')
            ->paginate(5, ["*"], "foo");

        return view('news', [
            'title' => 'Latest News',
            'news' => $news
        ]);
    }

For more information https://laravel.com/api/5.3/Illuminate/Database/Eloquent/Builder.html#method_paginate

@marconi1992
I have searched other solution

Paginator::setPageName('p');
You can place that in app/start/global.php

I don't know how to use them in Laravel 5.3 or higher. Can you please tell me?

@yosualb any news?


Show available JSON files within ZIP archive

A ZIP archive may contain multiple files. Show all files that have names ending in ".json" in a menu so that the user can choose which one they want to validate.

Looks great -- pulled down and tested on my local. Next steps are to push a new version to NPM.


How many steps does it need to converge for DSI training on MSMARCO?

Dear authors, thanks for your great work!
I'm not major in this field but want to try DSI for my own topics. However, when I tried to train on single 32G V100 GPU, it seems that I do something wrong that, after 200k steps it still doesn't converge. And the Hit@10 keeps to be zeros:

Am I do something wrong? Here is the script I used for training (I removed the distributed training code because I only have one GPU):
python3 run.py
--task "DSI"
--model_name "google/mt5-base"
--run_name "MSMARCO-100k-mt5-base-DSI"
--max_length 256
--train_file data/msmarco_data/100k/msmarco_DSI_train_data.json
--valid_file data/msmarco_data/100k/msmarco_DSI_dev_data.json
--output_dir "models/MSMARCO-100k-mt5-base-DSI"
--learning_rate 0.0005
--warmup_steps 100000
--per_device_train_batch_size 16
--per_device_eval_batch_size 8
--evaluation_strategy steps
--eval_steps 1000
--max_steps 1000000
--save_strategy steps
--dataloader_num_workers 5
--save_steps 1000
--save_total_limit 2
--load_best_model_at_end
--gradient_accumulation_steps 1
--report_to wandb
--logging_steps 100
--dataloader_drop_last False
--metric_for_best_model Hits@10
--greater_is_better True

Hi @pkuliyi2015
Are you using the msmarco data processing code example in this repo?
could you also try t5-base instead of mt5?

Yes I’m using your get_data.sh without modification
No I haven’t try t5-base. I will have a try then.

Update: I tried t5-base for 1 hour and the result seems to be pessimistic. Here is the score Hit@10, it becomes zero when after 10000 steps:

Update: your provided XORQA seems to not converge too. Urgently need your help!

Hi @pkuliyi2015
Sorry to see that, I think it is highly likely due to the batch size. Can you check my old repo which I also used a single v100 gpu, and I set a larger batch size for that.

I adjust the batch size from your 16 to 96 (my V100 cannot store 128. I don't know why). It still doesn't work at all.

I urgently request your help. I have wasted many dollars renting the V100 and didn't get sleep yesterday night. Here is the new params:
python3 run.py
--task "DSI"
--model_name "t5-base"
--run_name "XORQA-100k-t5-base-DSI"
--max_length 256
--train_file data/xorqa_data/100k/xorqa_DSI_train_data.json
--valid_file data/xorqa_data/100k/xorqa_DSI_dev_data.json
--output_dir "models/XORQA-100k-5-base-DSI"
--learning_rate 0.0005
--warmup_steps 100000
--per_device_train_batch_size 64
--per_device_eval_batch_size 64
--evaluation_strategy steps
--eval_steps 1000
--max_steps 1000000
--save_strategy steps
--dataloader_num_workers 10
--save_steps 1000
--save_total_limit 2
--load_best_model_at_end
--gradient_accumulation_steps 1
--report_to wandb
--logging_steps 100
--dataloader_drop_last False
--metric_for_best_model Hits@10
--greater_is_better True

@pkuliyi2015  for your last configs, you are using t5-base but using XORQA dataset which is a multi-lingual dataset. I suggest you keep t5-base change back to msmarco train and dev.
For larger batch size, you can try to set --max_length to 128, then you should be able to use larger batch size
But, in this case, I don't suggest you train the original DSI as it takes lots of computations. In fact, if you check our paper, t5-base is not good for DSI at all. I suggest you directly try our DSI-QG which is converging much faster. And for msmarco example, you don't need to train a query generation model (you can skip step 1), thus not expensive to try.

I'm trying your DSI-QG with the following command:
Step 2:
python3 run.py
--task generation
--model_name castorini/doc2query-t5-large-msmarco
--per_device_eval_batch_size 32
--run_name docTquery-MSMARCO-generation
--max_length 256
--valid_file data/msmarco_data/100k/msmarco_corpus.tsv
--output_dir temp
--dataloader_num_workers 10
--report_to wandb
--logging_steps 100
--num_return_sequences 10
The generated data is as follows (last line:)

Step 3:
python3 run.py --task "DSI"
--model_name "t5-base"
--run_name "MSMARCO-100k-t5-base-DSI-QG"
--max_length 32
--train_file data/msmarco_data/100k/msmarco_corpus.tsv.q10.docTquery
--valid_file data/msmarco_data/100k/msmarco_DSI_dev_data.json
--output_dir "models/MSMARCO-100k-t5-base-DSI-QG"
--learning_rate 0.0005
--warmup_steps 100000
--per_device_train_batch_size 128
--per_device_eval_batch_size 128
--evaluation_strategy steps
--eval_steps 1000
--max_steps 1000000
--save_strategy steps
--dataloader_num_workers 10
--save_steps 1000
--save_total_limit 2
--load_best_model_at_end
--gradient_accumulation_steps 1
--report_to wandb
--logging_steps 100
--dataloader_drop_last False
--metric_for_best_model Hits@10
--greater_is_better True
--remove_prompt True
I have cleanup all my files, reinstall Python3.8 and your requirements before starting this run. But from the first 3k steps, it seems that the DSI-QG still doesn't work. I'm training on a single V100 now and will update the outcome here.
Would you mind have a try to train on a single V100 card? I have wasted a lot of dollars on this. I hope to find a fast way to reproduce your result, at least, not all zeros in Hit@10.

Would you mind provide your loss curves? So I can find the issue of my training. I have printed my training set and evaluation set; they don't give me any hint.

Hi @LightChaser666 @pkuliyi2015
That looks weird, I'll have a look today.

Hi @LightChaser666 @pkuliyi2015
That looks weird, I'll have a look today.

I believe there may be significant difference in the hyper parameters between single card and multiple cards training. I spend some money renting 8 cards so the code works correctly.

Oh, okay, thanks for testing this. I'm sorry to hear that you spend lots of money on this. I guess how to make DSI training more efficient is a good research direction! I'm closing this issue now since there is no problem with the code.


Support for many columns

I'm trying to clean up my project 2 code on the dsten server, but it seems to be supporting an older version of Table. In particular, it doesn't seem to support > 255 columns. Do you know if the issue has been fixed, and if the server is up-to-date?
Thanks,
Xinghao

@mDibyo or @SamLau95 , did you fix this column issue already? Have we released since then?

Column issue was fixed with #101. I don't know if we had a release since then. @SamLau95?

I think this works now. @papajohn can you verify?

I can verify that it works on dsten now.

Great! Closing.


Wrong export "SheetSplitter"

Current Behaviour
If you have a atlas.json when the "components" are like
name.subname.morename.png ( several dots )
name (without extension)
The images in zip are incorrect
Expected Behaviour
Get the name without split ('.')

If it has extension then nothing
If it hasn't extension ( add random extension? add jpeg always? I don't know )

Thanks, my mistake... Please, check fix here: http://free-tex-packer.com/test/

Yes! all correct!
Later, this tool might be completed by:

Zoom +/-
Color background
Export PNG/JPG
etc

If I get the time, I help you filling the splitter.
Thanks!!

Cool! 👍


i run into this error when i try logging into calcom" https://api/auth/error"

I installed calcom in docker, below is my .en and doceker file.
Iam able to access the web interface via the url. the issue i am having is, once i type in my login details into the webinterface. it runs into "https://api/auth/error"
please help me with this issue.
root@transformersagencyworkspace028432://cal/docker# cat d
database-data/       docker-compose.yaml
root@transformersagencyworkspace028432://cal/docker# cat docker-compose.yaml
Use postgres/example user/password credentials
version: '3.8'
networks:
stack:
name: stack
external: false
services:
database:
container_name: database_calcom
image: postgres
restart: always
volumes:
- ./database-data:/var/lib/postgresql/data/
env_file: .env
networks:
- stack
calcom:
image: calcom.docker.scarf.sh/calcom/cal.com
build:
context: .
dockerfile: Dockerfile
args:
NEXT_PUBLIC_WEBAPP_URL: ${NEXT_PUBLIC_WEBAPP_URL}
NEXT_PUBLIC_LICENSE_CONSENT: ${NEXT_PUBLIC_LICENSE_CONSENT}
CALCOM_TELEMETRY_DISABLED: ${CALCOM_TELEMETRY_DISABLED}
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
CALENDSO_ENCRYPTION_KEY: ${CALENDSO_ENCRYPTION_KEY}
DATABASE_URL: ${DATABASE_URL}
DATABASE_DIRECT_URL: ${DATABASE_URL}
network: stack
restart: always
networks:
- stack
ports:
- 3000:3000
env_file: .env
environment:
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}
- DATABASE_DIRECT_URL=${DATABASE_URL}
depends_on:
- database
root@transformersagencyworkspace028432://cal/docker# cat .env
Set this value to 'agree' to accept our license:
LICENSE: https://github.com/calendso/calendso/blob/main/LICENSE

Summary of terms:
- The codebase has to stay open source, whether it was modified or not
- You can not repackage or sell the codebase
- Acquire a commercial license to remove these terms by emailing<EMAIL_ADDRESS>NEXT_PUBLIC_LICENSE_CONSENT=true
LICENSE=
BASE_URL and NEXT_PUBLIC_APP_URL are both deprecated. Both are replaced with one variable, NEXT_PUBLIC_WEBAPP_URL
BASE_URL=http://localhost:3000
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXT_PUBLIC_WEBAPP_URL=https://schedule.transformers.agency
Configure NEXTAUTH_URL manually if needed, otherwise it will resolve to {NEXT_PUBLIC_WEBAPP_URL}/api/auth
NEXTAUTH_URL=https://schedule.transformers.agency/api/auth
It is highly recommended that the NEXTAUTH_SECRET must be overridden and very unique
Use openssl rand -base64 32 to generate a key
NEXTAUTH_SECRET=secret
Encryption key that will be used to encrypt CalDAV credentials, choose a random string, for example with dd if=/dev/urandom bs=1K count=1 | md5sum
CALENDSO_ENCRYPTION_KEY=secret
Deprecation note: JWT_SECRET is no longer used
JWT_SECRET=secret
POSTGRES_USER=calcom_postgres
POSTGRES_PASSWORD=magical
POSTGRES_DB=calendso
DATABASE_HOST=database:5432
DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}
Needed to run migrations while using a connection pooler like PgBouncer
Use the same one as DATABASE_URL if you're not using a connection pooler
DATABASE_DIRECT_URL=${DATABASE_URL}
GOOGLE_API_CREDENTIALS={}
Set this to '1' if you don't want Cal to collect anonymous usage
CALCOM_TELEMETRY_DISABLED=1
Used for the Office 365 / Outlook.com Calendar integration
MS_GRAPH_CLIENT_ID=
MS_GRAPH_CLIENT_SECRET=
Used for the Zoom integration
ZOOM_CLIENT_ID=
ZOOM_CLIENT_SECRET=
E-mail settings
Configures the global From: header whilst sending emails.
EMAIL_FROM=
Configure SMTP settings (@see https://nodemailer.com/smtp/).
EMAIL_SERVER_HOST=
EMAIL_SERVER_PORT=
EMAIL_SERVER_USER=
EMAIL_SERVER_PASSWORD=
NODE_ENV=production

Hey @awakgeek  ! So I ran into a similar issue and here’s what worked for me:
What I did to fix it:
I set DATABASE_DIRECT_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB} directly in my .env. Yep, it’s exactly the same as DATABASE_URL, so you'd think the ${} variables should work, right? But for some reason, explicitly setting it like that fixed the issue ¯\__(ツ)_/¯
.env
DATABASE_DIRECT_URL=${DATABASE_URL} ❌
DATABASE_DIRECT_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB} ✅
Why this might work (even though it doesn’t totally make sense to me 🤔?):
It could be a funky variable expansion quirk in Docker or how the app is parsing the environment file. Sometimes the app or Docker-compose might not be evaluating the variable ${DATABASE_URL} exactly as you'd expect—maybe it doesn’t resolve nested variables correctly. I don't really know, but by explicitly naming it, you’re giving it no choice but to set it properly!
Will it work for you?
🤷♂ Honestly, not 100% sure, but it fixed my issue, so it’s definitely worth a shot! Give it a try and see if that clears things up for you! Best of luck :)


chore(renovate): maintain golangci-lint

Fixes https://github.com/statnett/controller-runtime-viper/issues/156

It is already fixed there: https://github.com/statnett/image-scanner-operator/blob/5486fee6a7f719c58836ec3b15bb82c2f3add731/.github/workflows/ci.yml#L30-L31


Unable to run install script after cloning

Describe the bug
The install script doesn't work out of the box presenting a bad UX:
[root@ip-172-31-21-116 configuration]# pwd
/root/aws-secretsmanager-agent/aws_secretsmanager_agent/configuration
[root@ip-172-31-21-116 configuration]# ./install
Can not read aws_secretsmanager_agent

To Reproduce

Run through step 1 and proceed to step 2 in https://docs.aws.amazon.com/secretsmanager/latest/userguide/secrets-manager-agent.html.
Run the script via one of: aws_secretsmanager_agent/configuration/install  or cd aws_secretsmanager_agent/configuration/ && ./install

The script will fail:
[root@ip-172-31-21-116 aws-secretsmanager-agent]# aws_secretsmanager_agent/configuration/install
Can not read awssmaseedtoken
[root@ip-172-31-21-116 aws-secretsmanager-agent]# cd aws_secretsmanager_agent/configuration/ && ./install
Can not read aws_secretsmanager_agent

Expected behavior
The agent is installed and the systemd unit file is activated
Environment
AL2023
Platform, Rust Version, etc.
[root@ip-172-31-21-116 configuration]# cargo --version
cargo 1.81.0 (2dbb1af80 2024-08-20)

[root@ip-172-31-21-116 configuration]# rustc --version
rustc 1.81.0 (eeb90cda1 2024-09-04)

Additional context
Add any other context about the problem here.

Fixed in #34


Not focusing on testcafe browser fails click() intermittently in live test

What is your Test Scenario?
I want to run testcafe in a full screen terminal, and to have it be 100% consistent
What is the Current behavior?
test controller fails to click on an element when I'm not focusing on the testcafe browser, and when I'm on a different workspace in OS X. (Full screen terminal, etc)
What is the Expected behavior?
It should still click the element
What is your web application and your TestCafe test code?
It's an internal applications and cannot be shared.
Sample test cafe code is as follows, however:
navigator = Selector('button')

async openNav(t: TestController) {
  const navElement = await navigator.with({ visibilityCheck: true })();
  // navElement.visible = true at this point, with height and width being > 0
  return testController.click(navElement)
}

Your complete configuration file (if any):

running with chrome --incognito --live, --debug-on-fail for debugging  purposes

Your complete test report:
The specified selector does not match any element in the DOM tree.

   | Selector('button')
 > |   .withText('sign in')

This error is not finding element in DOM due to click() not executing previously.
Steps to Reproduce:

Use OS X Catalina, may apply to lower versions *

Open terminal, full screen it
Run test cafe
Initial run is successful (majority of times)
press C-r to restart
Stay in terminal, don't focus browser
click() fails, and the subsequent selector search in DOM fails (intermittently)

Your Environment details:

testcafe version:                    1.8.3
node.js version:                     v10.16.1
command-line arguments:     testcafe --skip-js-errors --live 'chrome -incognito' test.ts --selector-timeout 5000 -r spec:output.spec --debug-on-fail,
browser name and version:  Latest Chrome
platform and version:           macOS 10.15.3
other:                                   --> Can someone reproduce this issue?

I haven't encountered this issue myself but I'd recommend running chrome headlessly as I imagine that will fix your issue

@ljowen
Yes, running headless has consistent outputs.
It'd be great if you (or anyone) could reproduce this issue on OS X, so I will know that I'm not alone on this.

@frnkshin
Hello,
I wasn't able to reproduce the issue. Here are steps I followed:

Open a terminal (fullscreen mode).
Run testcafe --live chrome test.js.
macOS switches to the Chrome window.
Switch back to the terminal.
Restart tests several times.

Test code:
import { Selector } from 'testcafe';

fixture `Fixture`
    .page `https://github.com/`

test('test', async t => {
     const selector = Selector('a').withText('Sign up');

     await t
         .click(selector);
});

Result:

Could you please send us a project (or a public URL with your test code)? We will examine it and check for a suitable solution.

@Farfurix
Weird, I'm getting inconsistent results with your provided code.
Running with following testcafe command:

$ testcafe  --skip-js-errors --live 'chrome -incognito --start-maximized' index.js -r spec:output.spec --debug-on-fail

Here are the outputs:
$ cat output.spec
 Running tests in:
 - Chrome 80.0.3987.149 / macOS 10.15.3

 Fixture
 ✖ test

   1) The element that matches the specified selector is not visible.

      Browser: Chrome 80.0.3987.149 / macOS 10.15.3

          6 |test('test', async t => {
          7 |     const selector = Selector('a').withText('Sign up');
          8 |     await selector.with({ visibilityCheck: true });
          9 |
         10 |     await t
       > 11 |         .click(selector);
         12 |});
         13 |

         at <anonymous> (/opt/projects/testcafe-tutorial/index.js:11:11)

 1/1 failed (14s)
 Running tests in:
 - Chrome 80.0.3987.149 / macOS 10.15.3

 Fixture
 ✓ test

 1 passed (5s)
 Running tests in:
 - Chrome 80.0.3987.149 / macOS 10.15.3

 Fixture
 ✖ test

   1) The element that matches the specified selector is not visible.

      Browser: Chrome 80.0.3987.149 / macOS 10.15.3

          5 |
          6 |test('test', async t => {
          7 |     const selector = Selector('a').withText('Sign up');
          8 |
          9 |     await t
       > 10 |         .click(selector);
         11 |});
         12 |

         at <anonymous> (/opt/projects/testcafe-tutorial/index.js:10:11)
         at test (/opt/projects/testcafe-tutorial/index.js:6:1)
         at <anonymous>

   (/opt/projects/testcafe-tutorial/node_modules/testcafe/src/api/wrap-test-function.js:17:28)
         at LiveModeTestRun._executeTestFn

   (/opt/projects/testcafe-tutorial/node_modules/testcafe/src/test-run/index.js:294:19)
         at LiveModeTestRun.start
      (/opt/projects/testcafe-tutorial/node_modules/testcafe/src/test-run/index.js:345:24)

 1/1 failed (12s)

Hi @frnkshin
I cannot reproduce the problem either. It is likely that the issue is connected to the web page with where you run tests. We need an complete example to reproduce the problem. Feel free to reopen this issue if you can create such example.

I made a quick screencast, feel free to check it out.
https://www.youtube.com/watch?v=C7N8_q7HYzM

Hello @frnkshin ,
Thank you for the screencast. It looks like the problem is in the Selector here. Please try to use the following one:
...
const selector = Selector('.HeaderMenu a').withText(/Sign\sup/);
...

Hey @aleks-pro,
Thanks for the fix, that fixed the example code.
It looks like having a single quote text value for withText() does not seem to work.
Is it always recommended to use the backslash to escape strings for TestCafe?
Or are there specific instances where you'd use one over the other?

Hi @frnkshin,
Backslashes in the /Sign\sup/ expression are used to create a RegExp instance. This is pure javascript syntax. So you can use the withText method with all capabilities of regular expressions.


JupyterLab Extension

This issue will contain all the necessary discussion around making the UI a JupyterLab extension.

Please edit the README to explain how to install the jupyterlab extension so we can test it

https://github.com/Quansight/jupyterlab-conda-store contains the Jlab extension


poetry new foo withouth git in the path fail with a meaning less message

$ poetry new foo

[OSError]
[Errno 2] No such file or directory

new [--name] [--src] [--] <path>

using a more verbose mode give some insight, but we have to look at the code.
$ poetry new -vvv foo

[OSError]
[Errno 2] No such file or directory

Exception trace:
 /usr/local/lib/python2.7/dist-packages/poetry/_vendor/cleo/application.py in run() at line 94
   status_code = self.do_run(input_, output_)
 /usr/local/lib/python2.7/dist-packages/poetry/console/application.py in do_run() at line 87
   return super(Application, self).do_run(i, o)
 /usr/local/lib/python2.7/dist-packages/poetry/_vendor/cleo/application.py in do_run() at line 197
   status_code = command.run(input_, output_)
 /usr/local/lib/python2.7/dist-packages/poetry/console/commands/command.py in run() at line 72
   return super(BaseCommand, self).run(i, o)
 /usr/local/lib/python2.7/dist-packages/poetry/_vendor/cleo/commands/base_command.py in run() at line 146
   status_code = self.execute(input_, output_)
 /usr/local/lib/python2.7/dist-packages/poetry/_vendor/cleo/commands/command.py in execute() at line 107
   return self.handle()
 /usr/local/lib/python2.7/dist-packages/poetry/console/commands/new.py in handle() at line 39
   config = GitConfig()
 /usr/local/lib/python2.7/dist-packages/poetry/vcs/git.py in __init__() at line 16
   ["git", "config", "-l"], stderr=subprocess.STDOUT
 /usr/lib/python2.7/subprocess.py in check_output() at line 212
   process = Popen(stdout=PIPE, *popenargs, **kwargs)
 /usr/lib/python2.7/subprocess.py in __init__() at line 390
   errread, errwrite)
 /usr/lib/python2.7/subprocess.py in _execute_child() at line 1024
   raise child_exception

new [--name] [--src] [--] <path>

Not sure what is the expected behavior: explicitly say that git is required but can't be found, or just ignore that git is not there.

You need a line break after the ticks, otherwise the first line will be cut off!

fixed - thanks :)

Ok, the problem here is that poetry is trying to get your name and email from git, but you don't have it installed (and you shouldn't have to!).
I'll try to fix this. If git is not installed, poetry should leave the authors list empty, I guess.

Could you update Poetry to 0.11 and try that again? :)

Closing since it's should be fixed in the latest release.

it works much better :)
thanks!


Error -10810 - not sure what that means, but the installer window size is very different now.

Running Applescript: /usr/bin/osascript "/var/folders/db/symwszkn31z9p8rthv3fsy4r0000gn/T/createdmg.Jl54F3LS" "GNURadio-<IP_ADDRESS>-94ee402"
/var/folders/db/symwszkn31z9p8rthv3fsy4r0000gn/T/createdmg.Jl54F3LS:85:89: execution error: An error of type -10810 has occurred. (-10810)
Done running the applescript...
Fixing permissions...

@cfriedt you solved this issue?

Let's go with yes. It's been so long at this point and the installer mostly works.


Optimize performance relevant backend methods

While especially enqueue is already heavily optimized, there are still a few backend methods that get used a lot and could benefit from SQL query and index optimizations. I'm thinking specifically of job_info, repair and stats.
At the same time we need to be very careful not to introduce performance regressions, like we did with the gin index on the parents column (IRC discussion).
This index might actually still be a reasonable optimization for job_info and the DELETE query of repair, but we need to verify this with reproducible benchmarks. Based on my personal experience with bigger Minion queues, i think it would be reasonable to optimize for queues containing about a million jobs where the majority also has dependencies.

We already have a benchmark script that can be adapted for this. https://github.com/kraih/minion/blob/master/examples/minion_bench.pl Filling the queue with a million jobs is pretty slow though.

I've brought back the GIN index after benchmarking a bit. There is a huge performance gain for job_info and maybe a tiny one for repair. https://github.com/kraih/minion/commit/dcc95da6b80a8f3b20ed69250a58b9f371e049d0

It appears our main bottleneck now is one query in repair.
  # Jobs with missing parents (can't be retried)
  $db->query(
    "update minion_jobs as j
     set finished = now(), result = to_json('Parent went away'::text),
       state = 'failed'
     where parents <> '{}' and cardinality(parents) <> (
       select count(*) from minion_jobs where id = any (j.parents)
     ) and state = 'inactive'"
  );

This is what the query plan looks like currently.
                                                                              QUERY PLAN
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Update on minion_jobs j  (cost=0.29..1987548.66 rows=41838 width=187) (actual time=267.343..267.343 rows=0 loops=1)
   ->  Index Scan using minion_jobs_state_priority_id_idx on minion_jobs j  (cost=0.29..1987548.66 rows=41838 width=187) (actual time=267.341..267.341 rows=0 loops=1)
         Index Cond: (state = 'inactive'::minion_state)
         Filter: ((parents <> '{}'::bigint[]) AND (cardinality(parents) <> (SubPlan 1)))
         Rows Removed by Filter: 42005
         SubPlan 1
           ->  Aggregate  (cost=47.10..47.11 rows=1 width=8) (actual time=0.006..0.006 rows=1 loops=42005)
                 ->  Index Only Scan using minion_jobs_pkey on minion_jobs  (cost=0.29..47.08 rows=10 width=0) (actual time=0.001..0.005 rows=5 loops=42005)
                       Index Cond: (id = ANY (j.parents))
                       Heap Fetches: 210025
 Planning time: 0.318 ms
 Execution time: 267.425 ms
(12 rows)

Btw. i do all profiling with our benchmark script, so my results can be reproduced.

Perhaps we could just get rid of the UPDATE query in repair, and modify our dequeue query to also accept jobs where one or more parents are missing.
  return $self->pg->db->query(
    "update minion_jobs
     set started = now(), state = 'active', worker = ?
     where id = (
       select id from minion_jobs as j
       where delayed <= now() and (parents = '{}' or cardinality(parents) = (
         select count(*) from minion_jobs
         where id = any(j.parents) and state = 'finished'
       )) and queue = any(?) and state = 'inactive' and task = any(?)
       order by priority desc, id
       limit 1
       for update skip locked
     )
     returning id, args, retries, task", $id,
    $options->{queues} || ['default'], [keys %{$self->minion->tasks}]
  )->expand->hash;

That would mean a dependency is considered resolved if the parent job is missing or in the state finished.

Ok, repair is now two orders of magnitude faster. 😄 https://github.com/kraih/minion/commit/5d069b1f57d01f74b041b65b51c2a38666e230ab

I've been trying to replicate my job_info results from yesterday but am failing. The query still looks much more efficient in EXPLAIN ANALYZE, but with our benchmark script the old query is actually faster...
test=# explain analyze select id, args, attempts, array(select id from minion_jobs where j.id = any(parents)) as children, extract(epoch from created) as created, extract(epoch from delayed) as delayed, extract(epoch from finished) as finished, parents, priority, queue, result, extract(epoch from retried) as retried, retries, extract(epoch from started) as started, state, task, worker from minion_jobs as j where id = 10000;
                                                             QUERY PLAN
------------------------------------------------------------------------------------------------------------------------------------
 Index Scan using minion_jobs_pkey on minion_jobs j  (cost=0.29..563.43 rows=1 width=190) (actual time=4.070..4.073 rows=1 loops=1)
   Index Cond: (id = 10000)
   SubPlan 1
     ->  Seq Scan on minion_jobs  (cost=0.00..555.11 rows=489 width=8) (actual time=4.025..4.025 rows=0 loops=1)
           Filter: (j.id = ANY (parents))
           Rows Removed by Filter: 10005
 Planning time: 0.532 ms
 Execution time: 4.121 ms
(8 rows)

test=# explain analyze select id, args, attempts, array(select id from minion_jobs where parents @> ARRAY[j.id]) as children, extract(epoch from created) as created, extract(epoch from delayed) as delayed, extract(epoch from finished) as finished, parents, priority, queue, result, extract(epoch from retried) as retried, retries, extract(epoch from started) as started, state, task, worker from minion_jobs as j where id = 10000;
                                                                QUERY PLAN
-------------------------------------------------------------------------------------------------------------------------------------------
 Index Scan using minion_jobs_pkey on minion_jobs j  (cost=0.29..168.12 rows=1 width=190) (actual time=0.099..0.101 rows=1 loops=1)
   Index Cond: (id = 10000)
   SubPlan 1
     ->  Bitmap Heap Scan on minion_jobs  (cost=24.39..159.80 rows=50 width=8) (actual time=0.057..0.057 rows=0 loops=1)
           Recheck Cond: (parents @> ARRAY[j.id])
           ->  Bitmap Index Scan on minion_jobs_parents_idx1  (cost=0.00..24.38 rows=50 width=0) (actual time=0.039..0.039 rows=0 loops=1)
                 Index Cond: (parents @> ARRAY[j.id])
 Planning time: 0.284 ms
 Execution time: 0.178 ms
(9 rows)

Think we are in a pretty good spot now overall. Been running benchmarks with a million jobs in the queue and everything feels snappy. Closest to feeling like a bottleneck now would be stats and maybe enqueue, but not enough to make either a priority.


Extend EndpointDiscoveryOptions to allow type filter

We would like to filter types during endpoint discovery - depending on configuration we only want certain endpoints to be active. We can of course limit what endpoints are registered, but we would also like to filter on the types (to avoid putting them in DI container).
I've added a simple Filter option on EndpointDiscoveryOptions to make this possible, if this is of interest I would be more than happy to submit PR. See my code here: https://github.com/noocyte/FastEndpoints/tree/add-evaluator

yeah send it through to the dev branch...
thanks!

oops sorry... dev branch only applies to the documentation repo. sorry bout that ;-)

v5.1.0-beta2 should be available in a few minutes.
thanks for the PR

are you by any chance in our discord channel? if so, let me know your nickname there.
thanks!

@dj-nitehawk  - noocyte on discord, just joined

cool... added the Contributor role on discord ;-)

我感觉如果 Endpoint 可以适配etc. OpenApiIgnoreAttribute 也可以起到一样的效果


Update reusing-workflows.md

Why:
The caller is passing in  repo-token but the called workflow expects envPAT.  This is either incorrect or something is happening to get the right values passed and it should be further explained in the doc.
Closes https://github.com/github/docs/issues/23207
What's being changed (if available, include any code snippets, screenshots, or gifs):

Check off the following:

[x] I have reviewed my changes in staging (look for the "Automatically generated comment" and click the links in the "Preview" column to view your latest changes).
[x] For content changes, I have completed the self-review checklist.

@feanil Thank you for opening a PR and linking it to your issue! ✨
I'll get this triaged for review! :zap:

Hi @feanil, the doc is correct.
The secret specified in step 1 is used as ${{ secrets.envPAT }} in step 2.
What it is being assigned to doesn't need to have the same name. It's being assigned to an input for an action used in the code example in step 2 (uses: actions-labeler@v4), and that action expects an input with the name repo-token.
It's the same convept as the reusable workflow input config-path, being used as another input for the action as         configuration-path: ${{ inputs.config-path }} in the next line.

@lucascosti thank you for the clarification! That makes sense! I think my confusion came from not realizing that the code block above and this one are in the same file and referencing the reusable workflow that is in a third file,  I thought that when the environment variable is defined it is automatically passed through to the re-usable workflow but that is not the case.


Slashing penalty not adequately specified in ChainParams

Describe the bug
Recent changes to ChainParams appear to have broken pd testnet join on preview.
To Reproduce
Steps to reproduce the behavior:

pd testnet unsafe-reset-all
pd testnet join testnet-preview.penumbra.zone
Observe error:

pd testnet join testnet-preview.penumbra.zone
2022-12-12T17:27:07.454822Z  INFO fetching genesis
Error: slashing_penalty_downtime_bps must be set in ChainParameters

Expected behavior
Can join testnet-preview fine and interact with preview network.
Screenshots
N/A
Additional context
Looks related to https://github.com/penumbra-zone/penumbra/pull/1721 ; some follow-up may be necessary.

Looks like preview was misconfigured to run the prior testnet tag; hat-tip to @erwanor for catching it. Pushed up a fix-it commit here: https://github.com/penumbra-zone/penumbra/commit/17a3267f63e1765d40cd5d3d071292b8bd4f7fbe monitoring deploy and will test again shortly.

That fixed it! I'm now able to join testnet-preview, because it's actually running the "main"-tagged container, as intended.


Do not create validation record for non-existing validations

Otherwise drift in state and AWS may cause this resource to fail.

Created release 0.3.3. Thanks


gitignore BuckleScript generated .merlin file

Thanks for adding this! Don't worry about the AppVeyor builds failing, it's an issue with the underlying Webpack loader, bs-loader.


Cordova plugin Fetch

Hi guys
So since the latest version of cordova, it uses a node dependency management to fetch it dependancies. For this reason we cannot pull this repository since its missing a package.json file. See https://github.com/wymsee/cordova-HTTP/blob/master/package.json

This plugin has a package.json file, as you can see here https://github.com/wymsee/cordova-HTTP/blob/master/package.json . I'm not getting any errors with this plugin.


Add WebAppsWG boilerplates

Group is launching this week, so we are moving specs over.
@tabatkins, let me know know if I've missed anything. I left the old test files alone, as I figure they are fine even though the point to the old group.

Please delete the .DS_Store files from your PR.

Will do. Should I send a new PR for this tho? The .DS_Store files show up all over my tree on MacOS, so worried I'll accidentally commit one.

Thanks for the speedy review, @tabatkins. I'm unsure of BikeShed's release cadence, but if this could be prioritized then it would help us republish all the Web Apps WG specs with the updated boilerplate.

Lol I thought I merged it already, thanks for the ping


fix srr.createdAt dates

see GOGH-5444 for the original issue
see analysis on https://github.com/startbahn/startrail/pull/368
this fixes the issue by only setting createdAt on the first Transfer as it should have done

@wshino can this be merged? I thought this got migrated to prod yesterday? but this PR is still here...

@chatch yes You can merge it. Yesterday's deploy was done from this branch, sorry for that.

@chatch oh, wait a second...

@chatch Sorry, I may have deployed STARTRAIL-768 yesterday. Please let me deploy it again.

@chatch done, sorry for that...


Folders for Cloudmask, Uno and Stemdl

Uploaded three folders to "juribranch"

recheck

Hey, I'm getting emails from this repo I know nothing about. You seem to be using the wrong user name in the messages.

Hey, I'm getting emails from this repo I know nothing about. You seem to be using the wrong user name in the messages.

@juri We're sorry, our CLA signing bot is having a bit of an issue. Please disregard any notifications in the meantime.


Place tower on top of tower that already excists

It's possible to place a tower on top of a tower that already excists. The price is also charged/withdrawn from the bank.
In the following print screen I have three towers on top of each other, check level and total sum.

This was introduced when I enabled replacing any tower, regardless of price. The logic should not allow replacing with the same tower. Fixed.


Please add prerequisite: Ensure that the group policy allows a user to log on as a service.

A pretty common issue when installing the gateway is the following: it fails to install as a service even though you are a local administrator for the computer - Installation can fail if the user is in the computer’s local Administrator group, but group policy does not allow that username to log on as a service. Please add this as a prerequisite for the installation (as this is missing in the troubleshooting for the on-premises gateway as well it is very hard to figure out): Ensure that the group policy allows a user to log on as a service.

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

ID: dc58ee8d-9650-6a07-8740-e10bf9dc12af
Version Independent ID: ca47ad42-0033-3b26-f7ac-6fb32c3ff8d6
Content: Install On-premises data gateway
Content Source: articles/analysis-services/analysis-services-gateway-install.md
Service: azure-analysis-services
GitHub Login: @Minewiskan
Microsoft Alias: owend

@mpoeckl
Thanks for the feedback! We are currently investigating and will update you shortly.

@Minewiskan a customer has discovered a prerequisite which may block the installation of a data gateway, could you take a look?

@mpoeckl Good suggestion. I added a line item. Now that it's live, I'm not happy with how it reads. I'll make an additional change that will show up on Monday. But, I think we can close this one out. Really appreciate your contribution!
#please-close

Added second bullet item for signed in user account needing Log on as service privileges.


Fix: Name and reference

This PR

[x] fixes the name of an action and the reference to it

💁♂ I have moved localheinz/composer-normalize-action from my personal account @localheinz to the @ergebnis organization, and consequently renamed everything. For reference, also see https://localheinz.com/blog/2019/12/10/from-localheinz-to-ergebnis//

Thank you, @jessicalostinspace!


[hevce] Use MFX_TASK_THREADING_INTRA

"DEDICATED" reduces density for multisession workloads in join mode.
MDP-57311
Signed-off-by: Dmitry Ermilov<EMAIL_ADDRESS>

You're right. Thanks !


Address issues with discovery component

https://github.com/microsoft/vscode-python-internalbacklog/issues/350

Hello, can one of you elaborate on the exact issue with discovery that is being solved here?
I've finally updated my vscode recently and it has broken test discovery.
I'm sure there are more details on the internal repo, but expanding on the issue's cause and workarounds could help those of us that are hitting it now.
Thanks for all your hard work on this fantastic extension!

@JacobCallahan Sorry for the late reply. This is only for python interpreter discovery, and not test discovery. So please open a new test issue if you still have it.

@JacobCallahan Sorry for the late reply. This is only for python interpreter discovery, and not test discovery. So please open a new test issue if you still have it.

@karrtikr I'll try to set aside some time tomorrow and try test discovery with the latest version. If the issue persists, then I'll open a new one and link it here. Thanks


SetRouteAction break separation of concerns

Requiring every view controller to know the whole application hierarchy breaks the separation of concerns. I am going to try to find a simple example to show what I mean. Again, this is heavily related to #3 and #4.
Say you are in the state (where each letter is a controller):

A -> B -> C

And C wants to show something that is its child. It's easy for it to add a new controller to the list:

A -> B -> C -> D

But now if C wants to show something that is out of its scope, like:

A -> E -> F

C should only be able to send an Action saying "I want to show F", without having to know about the whole "breadcrumb" to get there.
I could create and action called ShowF and having a reducer that knows how to create the correct Route. However, this reducer will be forbidden to dispatch SetRouteAction since it is already inside a dispatch action of ShowF.
Does this make sense?

Alright, I edited the issue text.

@jschmid Yes this makes sense! I definitely want to tackle setting relative routes. I presume once this router is further along, SetRouteAction will be rarely used, as there will be actions to set relative paths.
For now, you can implement your own action, e.g. ShowF. You actually don't need to call the SetRouteAction.
One thing you could do for now, is not use the NavigationReducer and instead provide your own reducer that owns the current route in the state. It would be very easy to implement ShowF and SetRoute within your own reducer.
Luckily the Router doesn't rely on the NavigationReducer being used.
This example setup would change accordingly:
struct AppReducer: Reducer {
    func handleAction(action: Action, state: FakeAppState?) -> FakeAppState {
        return FakeAppState(
            navigationState: YourCustomNaivationReducer.handleAction(action, state: state?.navigationState)
        )
    }
}

And you could reuse the NavigationReducer implementation for your custom reducer and go from there!
Let me know if that works for you and thanks a lot for bringing up these issues!

@jschmid This definitely should be doable with the current router setup. Have you found a satisfying solution? :smiley:

Since this issue has gone stale, I'm going to close it for now! Let me know if something new comes up and I can re-open!


Prefix Fix

Fix the prefixes for animation and transition
Create an easiest way for fix the other prefixes

Other way could be use (prop, args, prefixes) and send the correct prefixes per css3 option

yeah that's why we have the only / ignore options:
vendor(something, only: moz)
vendor(something, ignore: moz)
vendor(something) // everything


unitas_setup_tool 32 bit / 64 bit bepinex

Right now it doesn't seem to choose the right one

pretty sure its working


nixos/oauth2_proxy_nginx: allow placing the login page itself under aseparate domain

Description of changes
OIDC provider usually requires a callback URL which can now be set to one domain when securing multiple virtualhosts under different (sub)domains
Additionally I have the following set, not sure what of this should go into this here:
services.oauth2_proxy = {
  cookie.domain = ".example.de";
  nginx.virtualHosts = [ "domain.example.de" ];
  redirectURL = "https://${config.services.portunus.domain}/oauth2/callback";
  reverseProxy = true;
  extraConfig = {
    oidc-issuer-url = config.services.dex.settings.issuer;
    whitelist-domain = "*.example.de";
  };
};

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

i can't really review this as I don't understand enough about nginx config options and oauth2_proxy.

Can you suggest someone else for reviews?


Prostate

Hello thanks for publishing your algorithm !! Can i use it also for multimodal prostate mri ? Or it deoends on some average brain image ?

Hi @jakubMitura14 ,
Thanks for your interest in our work!
The answer is yes, but you'll need to retrain the network for prostate MRI registration using your own data.
Thanks,
Junyu


Upgrade to non-locked dependency (xmlbuilder) is forcing node >= 6.0.0

One of the dependencies (xmlbuilder) just got bumped from 8.2.2 to 9.0.0; as per this closed issue one of the changes causes crashes if your node version is < 6.0.0. Since xml2js itself doesn't require that node version, the dependency should be locked here to 8.2.2.

The new xmlbuilder (9.0.1 specifically) fixes some issues, so we depend on it now. Surprisingly, the tests still pass even on Node 0.10.
I'd be interested in a test which makes the old Node versions fail though.


Requested changes to flow timer

Requested changes to the flow timer change:

Allow the number of images to process to optionally be passed as an argument (to flow_runner.py ?).  The default can remain at 10.
Add a variable to allsky/variables.sh to define the directory, e.g., ALLSKY_FLOWTIMINGS.  This will make it easy for check_allsky.sh to find the directory.
How will check_allsky.sh know the names of the files?  Should other variables be added, e.g., ALLSKY_FLOWTIMINGS_XXX ?
allsky/allsky.sh should rm -fr "${ALLSKY_FLOWTIMINGS}" so we know any files are from the current instance of Allsky.
Please make times stored in the files in integer milliseconds.

Allow the number of images to process to optionally be passed as an argument (to flow_runner.py ?). The default can remain at 10.

Added --flowtimerframes option to flow-runney.py Default is 10

Add a variable to allsky/variables.sh to define the directory, e.g., ALLSKY_FLOWTIMINGS. This will make it easy for check_allsky.sh to find the directory.

Added the following variables
ALLSKY_FLOWTIMINGS="${ALLSKY_TMP}/flowtimings"
ALLSKY_FLOWTIMINGS_DAY="${ALLSKY_FLOWTIMINGS}/day-average"
ALLSKY_FLOWTIMINGS_NIGHT="${ALLSKY_FLOWTIMINGS}/night-average"

How will check_allsky.sh know the names of the files? Should other variables be added, e.g., ALLSKY_FLOWTIMINGS_XXX ?

See above

allsky/allsky.sh should rm -fr "${ALLSKY_FLOWTIMINGS}" so we know any files are from the current instance of Allsky.

New option --cleartimings added to flow-runner.py. This is called from allsky.sh to clear all timing data

Please make times stored in the files in integer milliseconds.

Values are now ints

Closing Issue.  Changes will be in upcoming point release.
Thanks Alex!!


Show a number beside the games

Like, 1st place, 2nd place etc. And maybe show a gold medal.
Like the old site:

I had the same thought. There could be different icons, one per category and each in three colors: gold, silver, bronze. The icons you win are displayed as an overlay on top of your game thumbnail. If there is space left, the overall rank could also be displayed, maybe restricted to the top 100 games. Or there could be other achievements with special icons, like top 10 game, top 25 game, top 50 game, top 100 game.

?

Yea, this can be closed now

Nevermind, I'm going to reopen this for having the medals appear in the game view too. (Where the results are)


App: Remove the unsupported params for CloudCompute

What does this PR do?

App: Remove the unsupported params for CloudCompute
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃
cc @borda @rohitgr7 @Felonious-Spellfire

The tests need to be updated. Do you need help with it?


Cache misses when mounted directory exist

drone.yaml:
kind: pipeline
name: Lint and Test

platform:
  os: linux
  arch: amd64

trigger:
  event:
    - push
    - pull_request
  branch:
    - master

volumes:
  - name: node_cache
    host:
      path: /tmp/cache

steps:
  - name: generate-cache-key
    image: ubuntu:14.04
    pull: if-not-exists
    volumes:
      - name: node_cache
        path: /cache
    commands:
      - md5sum yarn.lock | awk '{print "my-service-"$1;}' > .cache_key
      - cat .cache_key
      - ls /cache
      - ls /cache/$(cat .cache_key) || exit 0
    depends_on:
      - clone

  - name: restore-yarn-cache
    image: drillster/drone-volume-cache
    pull: if-not-exists
    settings:
      restore: true
      mount:
        - ./node_modules
    volumes:
      - name: node_cache
        path: /cache
    depends_on:
      - generate-cache-key

  - name: install
    image: node:12.20.0
    pull: if-not-exists
    commands:
      - yarn --offline
    environment:
      DEBIAN_FRONTEND: noninteractive
    depends_on:
      - restore-yarn-cache

  - name: rebuild-yarn-cache
    image: drillster/drone-volume-cache
    pull: if-not-exists
    settings:
      rebuild: true
      mount:
        - ./node_modules
    environment:
      PLUGIN_CACHE_KEY_DISABLE_SANITIZE: true
    volumes:
      - name: node_cache
        path: /cache
    depends_on:
      - install

Relevant output:
# Lint and Test — generate-cache-key

+ md5sum yarn.lock | awk '{print "my-service-"$1;}' > .cache_key
+ cat .cache_key
my-service-3915dae472a35a3dbba39b10e3ef37c1
+ ls /cache
my-service-3915dae472a35a3dbba39b10e3ef37c1
+ ls /cache/$(cat .cache_key) || exit 0
node_modules

# Lint and Test — restore-yarn-cache

Found a .cache_key file to be used as the cache path!
No cache for ./node_modules

# Lint and Test — install

+ yarn --offline
yarn install v1.19.1
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
[4/5] Linking dependencies...
[5/5] Building fresh packages...
Done in 88.63s.

# Lint and Test — rebuild-yarn-cache

Found a .cache_key file to be used as the cache path!
Warning! .cache_key will be used as-is. Sanitization is your responsibility to make it filename friendly!
Rebuilding cache for folder ./node_modules...

node_modules exists in the cache directory for the cache key generated so I'm a little confused why this isn't a hit.

Was missing PLUGIN_CACHE_KEY_DISABLE_SANITIZE on restore 🤦


SSHPORT env variable not working in docker

Hello,
I'm trying to use the SSHPORT environment variable to log on my server as it is not using the 22 port.
I can use SSHHOST to specify the host IP adress but the SSHPORT does not seem to work.
Tue Jan 15 2019 09:55:04 GMT+0000 (UTC) PID=49 STARTED on behalf of remote=<IP_ADDRESS>
Tue Jan 15 2019 09:55:06 GMT+0000 (UTC) Connection accepted.
{ args:
   [ '/app/bin/ssh',
     '<IP_ADDRESS>',
     '-t',
     '-p',
     22,
     '-o',
     'PreferredAuthentications=password,keyboard-interactive',
     '' ],
  ssh: '<IP_ADDRESS>' }
Tue Jan 15 2019 09:55:06 GMT+0000 (UTC) PID=57 STARTED on behalf of remote=<IP_ADDRESS>

I have set up 2 environment variables :
SSHPORT=1978
SSHHOST=<IP_ADDRESS>
Could use some help !
Regards

butlerx/wetty is now the official docker image

Thanks.
I migrated my docker image from krishnasrinivas/wetty to butlerx/wetty and it works (including SSHPORT).


update jshintrc

@juwai/frontend

:+1:

:sheep:

Can some one merge this PR?

i don't have write access either :disappointed:

Granted access to the @juwai/frontend team.


Can it work on ubuntu 22.04?

Hi! I am having the lap detected issue with my thinkpad T14. I am using ubuntu 22.04 and tried using your solution but it doesn´t work. Could you help me?
Te error:
sudo dkms build thinkpad_acpi/1.0

Kernel preparation unnecessary for this kernel. Skipping...

Running the pre_build script:
Downloading relevant files from linux git repsoitory...
Failed to download thinkpad_acpi.c

Building module:
cleaning build area...
make -j8 KERNELRELEASE=5.15.0-40-generic -C /lib/modules/5.15.0-40-generic/build M=/var/lib/dkms/thinkpad_acpi/1.0/build....(bad exit status: 2)
ERROR (dkms apport): binary package for thinkpad_acpi: 1.0 not found
Error! Bad return status for module build on kernel: 5.15.0-40-generic (x86_64)
Consult /var/lib/dkms/thinkpad_acpi/1.0/build/make.log for more information.

cat /var/lib/dkms/thinkpad_acpi/1.0/build/make.log

DKMS make.log for thinkpad_acpi-1.0 for kernel 5.15.0-40-generic (x86_64)
sex 01 jul 2022 18:43:58 -03
make: Entering directory '/usr/src/linux-headers-5.15.0-40-generic'
  CC [M]  /var/lib/dkms/thinkpad_acpi/1.0/build/thinkpad_acpi.o
  MODPOST /var/lib/dkms/thinkpad_acpi/1.0/build/Module.symvers
ERROR: modpost: missing MODULE_LICENSE() in /var/lib/dkms/thinkpad_acpi/1.0/build/thinkpad_acpi.o
make[1]: *** [scripts/Makefile.modpost:134: /var/lib/dkms/thinkpad_acpi/1.0/build/Module.symvers] Error 1
make[1]: *** Deleting file '/var/lib/dkms/thinkpad_acpi/1.0/build/Module.symvers'
make: *** [Makefile:1790: modules] Error 2
make: Leaving directory '/usr/src/linux-headers-5.15.0-40-generic'

Installed a fresh copy of ubuntu 22.04 on my thinkpad, I've replicated the issue. Will work on a fix and update later today.

So, turns out uname -r and linux.org track kernel versioning differently.
Ubuntu 22.04 uname -r reports 5.15.0 for it's kernel.
linux.org tracks this at 5.15.
I've made a change to the download script to fix this, and increased verbosity for future bug fixing. :)
Let me know how you get on, and close the issue if your problem has been solved.

I've made the instructions again and it aparentley works. Thanks very much!!


SwiftUI Support

I had updated it with SwiftUI support here:
https://github.com/Splash04/TagTextView


STREAM credentials on incoming payments

STREAM credentials should only be returned on

incoming payment creation
incoming payment GET request, if incoming payment is not expired or complete.
They should not be returned on
list GET request
update (since update = completing payment)

Depends on

https://github.com/interledgerjs/interledgerjs/issues/283

Superseded by #353


Display Transitioner title correctly

Fix a bug where the title, "Transitioner", was only visible if you moused near it.

This was a useful link. Maybe we can fix the actual display bug instead?
It should be easy. Add a className to the a tag here: https://github.com/react-community/react-navigation/blob/master/website/src/MDPage.js#L65
Then filter by the className here: https://github.com/react-community/react-navigation/blob/master/website/src/App.css#L23,L29
Please test the fix before submitting the PR!


Simplify by allowing only constants in maps and arrays at grammar level

@bratseth please review.

Constants means parameters, literals, arrays and maps.


docs: update quickstart.md

This PR updates documentation for quickstart page.

I have read the Code of Conduct and I hereby accept the Terms

I have read the CLA Document and I hereby accept the CLA


Add Legal pages: "Privacy Policy, Licensing and Terms & Conditions" in Footer

Hey @abhay-raj19 I would like add dedicated pages for Legal Pages which can be link to the empty space of footer section

like this:

I would like to take on this task and contribute to the development of the Fitbody website
could you please assign this issue to me under GSSOC 24?

Yeah sure, Thank you for assigning this issue to me @abhay-raj19, Also could you please add "Level" Label?


USHIFT-1591: Delete the VM-specific storage pool in scenario cleanup

A follow-up for the comment in #2219
Closes USHIFT-1591

/lgtm

metal tests are failing during the build phase with the only line in teh build log stating The compose result is empty.
log: https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/origin-ci-test/pr-logs/pull/openshift_microshift/2222/pull-ci-openshift-microshift-main-microshift-metal-tests/1692208432033042432/artifacts/microshift-metal-tests/openshift-microshift-infra-iso-build/artifacts/build-logs/osbuild-rhel-9.2-microshift-source-base-edge-commit-34084dd4-7391-4b64-b462-8470f3b64024.log

/test microshift-metal-tests


Asio Backend Support

Support for ASIO backend on windows
Current state
This is a very early stage attempt. There's lots to do before merging. I just want to start getting some feedback.
Feedback:
I'm fairly new to Rust so there's definitely going to be mistakes / non-idiomatic code in here.
Feel free to point out anything you think is weird / wrong or ask for explanations.
Things that are working:

The enumerate example
The beep example
Building the ASIO library and linking to it
Creating the bindings to the library with bindgen

Things that still need to be done (non-exhaustive):

[x] The record_wav example
[ ] Supporting all the possible ASIO formats
[x] Allow the CPAL user to set if the want ASIO or WASAPI at with an initialize call
[x] Check for potential threading issue (I'm new to this)
[ ] Stop any panics that could cross FFI boundaries
[x] Add comments and example usage docs
[x] Make the interleaving faster and avoid copying

Usage

You need to download the ASIO SDK and unzip it somewhere.
Put the full path into the environment variable CPAL_ASIO_DIR
eg. with powershell ($env:CPAL_ASIO_DIR="C:\Users\you\my_libs\ASIOSDK2.3")
Now you should be able to run "cargo run --example enumerate"
Note:
The beep example is currently hard set to select ASIO 4 All because there's no way to get the default asio driver and this made testing easier.

Resources

This is a good write up about how portaudio built there asio backend.
Theres a pdf in the ASIO sdk called ASIO SDK 2.3.pdf that explains the how ASIO works
Theres an example of how to write an ASIO host in c++ in ASIOSDK2.3/host/sample/hostsample.cpp

Note: I had to change branches and make this pr because of conflict problems.

I noticed that this isn't passing tests on Android because of this:

130 | use null as platform;
|     ---------------- previous import of the module platform here
...
141 | mod platform;
| ^^^^^^^^^^^^^ platform redefined here

Might need to change the name of the platform module?

So it doesn't appear that ASIO4All is passing on the correct bit rate when the actual device is changed.
It does detect a the correct rate when a different asio driver (for example dante) is running.
This might be a bug with ASIO4All but seeing as that is the most popular choice for people using asio we might need to investigate this further.

:warning: Note for those testing this PR :warning:
Make sure you first read and follow the the step-by-step setup for using ASIO on Windows in the updated README. Hopefully we can automate more of this process in the future.

Just leaving a note here that my current intention is to assist @ishitatsuyuki in addressing #268 and #204 first, then I'll look into rebasing this on top of that work.

What are your thoughts on using the sample crate to handle conversions between types?


validate if CREATE TRIGGER DDL is ignored with regex

Currently CREATE TRIGGER MySQL DDL are not translated to clickhouse.
For the user using the #895 feature they should be able to ignore the CREATE TRIGGER DDL.

Because its a multi-line DDL the regex need to match the entire DDL.
/CREATE\s+TRIGGER\s+\w+\s+BEFORE\s+INSERT\s+ON\s+\w+\s+FOR\s+EACH\s+ROW\s+PRECEDES\s+\w+\s+SET\s+(.|\s)+?;/gm

CREATE TRIGGER ins_transaction BEFORE INSERT ON account
       FOR EACH ROW PRECEDES ins_sum
       SET
       @deposits = @deposits + IF(NEW.amount>0,NEW.amount,0),
       @withdrawals = @withdrawals + IF(NEW.amount<0,-NEW.amount,0);

CREATE TABLE test.account (
    id INT AUTO_INCREMENT PRIMARY KEY,
    account_number VARCHAR(20) NOT NULL,
    amount DECIMAL(10, 2) NOT NULL
);

Debezium translates the DDL
to the following format
CREATE DEFINER=`root`@`%` TRIGGER ins_transaction BEFORE INSERT ON account
       FOR EACH ROW
       SET
       @deposits = @deposits + IF(NEW.amount>0,NEW.amount,0),
       @withdrawals = @withdrawals + IF(NEW.amount<0,-NEW.amount,0)```

Added unit test in #896
regex that multiple lines work
^CREATE\s+DEFINER*.*\n*.*\n*.*\n*.*\n*.*


Add aliasing to deploy script

By default, vercel deploys to a different target. We want to force this to be production.

Approved by @jclem .


Realistic synthetic idealised fields

As the product owner I want to be able to test parts of the post processing chain on synthetic but realistic fields.
To start with this should be a north-south valley/ridge in which values are generally lower than elsewhere
The dimensions of the 2-d x-y array need not be large than 50x50.
Related issues: #188, #189

[ ] Define, document and create an idealised topography mask with a north-south 3-pixel wide valley/ridge. Can be used to test #188 to apply to a neighbourhood mask.
[ ] Define, document and create an idealised field with values of 1,2,3,4,5 in which the the values in the north-south valley/ridge can only have values of 1,2 or 3 and the values in the rest of the domain can have values of 3, 4 or 5. Can be used to test #188 to apply to a neighbourhood mask.
[ ] Define, document and create an idealised precipitation field that varies in time and space over 10 frames. An isolated pixel, with value 2 surrounded by pixels with value 1 in a domain with all other values 0, appears at time T+3 (fourth frame starting from T+0) and persists for 5 frames moving east by one pixel and then disappears at time T+8 to T+10. Can be used to test #189 to apply to time weighting.

Acceptance criteria:

Written definition of idealised fields
Code available to re-create fields and adapt for variations
Visual inspection of idealised fields to check they are correct and image fed into documentation

Looks like the acceptance criteria have been met.

This has now been completed. 👍


Next button in posts/blog is buggy

Describe the bug
The next button in my wiki blog/posts is just buggy, it doesn't show the other posts but shows empty page using the theme for my base/home
To reproduce
Steps to reproduce the behavior:

Go to https://wiki.th3-gr00t.tk/
Click on read all under posts
Scroll down to the end then click next
See empty output

Expected behavior
Empty output nothing on page 2
Tried editing config but nothing fixed it. Also seen the Drassil/git-wiki-theme@master has alot of new files/features than my version. Why am I not receiving any feature updates?
Screenshots

Desktop (please complete the following information):

OS: [e.g. Windows 10]
Browser: [e.g. chrome, safari]
Version: [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser: [e.g. stock browser, safari]
Version: [e.g. 22]

Additional context
Add any other context about the problem here.

Hi, I've applied some fixes to the main repo, can you try to set this in your _config.yml file?
paginate: 5
paginate_path: "/assets/blog/page:num"
permalink: "/assets/blog/posts/:year/:month/:day/:title:output_ext"

Please, overwrite the ones you already have

I see you have made a change on the includes directory on your side, now am curious if I will get that update on myside or what exactly happens next?

Please remove your assets/blog folder, in this way it will inherit the ones from the remote theme and it should work

so I remove assets or just the blog sub directory?

Okay now it works, thank you :)


这个需要多大显存运行？

感谢开源
请问，这个需要多大显存运行，
4080 16G显存都报OOM了

Thank you for your interest.
To fully run this project (including both virtual try-on and pose transfer), 38GB of vRAM is required. This is because both models need to be loaded onto the GPU simultaneously.
If you only want to run one model, you can comment out the other model in the code.
If you run only the virtual try-on model, 16GB of VRAM should be sufficient.

You can refer to the modifications here: https://github.com/franciszzj/Leffa/issues/1#issuecomment-2541954529

You can refer to the modifications here: #1 (comment)

Thank you very much for your answer. It would be great if CPU uninstallation could be supported. Only 8GB of graphics memory is needed to run, which can meet the needs of more low-end graphics card users

Thank you for your suggestion.
Currently, for faster inference, CPU uninstallation has not been used. We will improve this in the future.
Additionally, please note that all the models are trained using open-source datasets (VITON-HD for virtual try-on and DeepFashion for pose transfer). Therefore, please ensure compliance with the respective dataset guidelines when using them. Thank you.


Handle arithmetic double negation

0 - - 4 should optionally be refactored to 4
0 - - - - 4 should optionally be refactored to 4

This should already be handled, can you send details on your setup? Works as intended on the web version

0 - - - - 4 should optionally be refactored to 4

so goes for any arithmatic chain of + with - irrespective of its length.

Should be fixed in latest commit

@ben-sb When will it go live in https://deobfuscate.io/ ?

I updated the website at the same time as updating the repo so should have been live since then. Works for me with the example you sent, 0 - - - - 4


Add a Gitter chat badge to README.md

spring-cloud/spring-cloud-security now has a Chat Room on Gitter
@dsyer has just created a chat room. You can visit it here: https://gitter.im/spring-cloud/spring-cloud-security.
This pull-request adds this badge to your README.md:
![Gitter](https://badges.gitter.im/Join Chat.svg)
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Merged


How to press You (Press ALT-Enter to submit):  on a Mac?

Currently pressing options (alt) + enter on a Mac will not submit the prompt.
After looking at the code I discovered that dir-assistent uses prompt-toolkit.
For anyone wondering how to submit a prompt on a Mac, press esc+enter
-> https://github.com/prompt-toolkit/python-prompt-toolkit/issues/1735#issuecomment-1460730561
It would be nice if option+enter submitted the prompt.
I will close this issue. I just wanted to document this so other people don't have to rediscover this.

I don't have a mac to test with, but if you make a PR for this change I'd like to add it.


🐛 [remote_config]: many [firebase_remote_config/internal] exceptions

Bug report
Remote config is throwing exceptions.
On Android message is simple: [firebase_remote_config/internal] internal remote config fetch error, so we don't know what causes the problem.
On iOS exceptions are more verbose, most of them have this structure:
[firebase_remote_config/internal] Failed to get installations token.
Error : Error Domain=com.firebase.installations
Code=0 "Underlying error: Вероятно, соединение с интернетом прервано."
UserInfo={
    NSLocalizedFailureReason=Underlying error: Вероятно, соединение с интернетом прервано.,
    NSUnderlyingError=0x282d6d1d0 {
        Error Domain=NSURLErrorDomain
        Code=-1009 "Вероятно, соединение с интернетом прервано."
        UserInfo={
            _kCFStreamErrorCodeKey=50,
            NSUnderlyingError=0x282d08e10 {
                Error Domain=kCFErrorDomainCFNetwork
                Code=-1009 "(null)"
                UserInfo={
                    _kCFStreamErrorDomainKey=1,
                    _kCFStreamErrorCodeKey=50,
                    _NSURLErrorNWResolutionReportKey=Resolved 0 endpoints in 1ms using unknown from cache,
                    _NSURLErrorNWPathKey=unsatisfied (Denied over cellular interface),
                    interface: pdp_ip0[lte], ipv4, dns, expensive
                }
            },
        }
    }
}

We understand that users may have connectivity problems, but not that much (>2600 exceptions in the past month).
Is this behavior expected? Or our setup is incorrect? A sample is attached below.
Expected behavior
Not this much exceptions.
Sample project
This is the simplified setup we have.
Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  try {
    await _remoteConfig.setDefaults(defaults);
    await _remoteConfig.setConfigSettings(
      RemoteConfigSettings(
        fetchTimeout: const Duration(seconds: 5),
        minimumFetchInterval: const Duration(minutes: 5),
      ),
    );
    await _remoteConfig.fetchAndActivate().timeout(const Duration(seconds: 5));
  } catch (exception) {
    logException(exception);
  }
  runApp(App());
}

Additional context
In addition, app is making requests from Russia. If this can cause problem, please leave a comment with possible fix.

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[√] Flutter (Channel stable, 3.10.4, on Microsoft Windows [Version 10.0.19045.3208], locale ru-RU)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
[X] Chrome - develop for the web (Cannot find Chrome executable at .\Google\Chrome\Application\chrome.exe)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.4.4)
[√] Android Studio (version 2022.1)
[√] IntelliJ IDEA Community Edition (version 2022.3)
[√] Connected device (3 available)
[√] Network resources

Thanks for the report @r-i-c-o
As the error says (translated to English for readability):
The internet connection is probably interrupted.
The error code thrown is Code=-1009 which indicates an issue with the internet connection that appears to be offline, so that means it is not an issue / bug in the plugin code, but could be occuring due to network connection at your end.
Also, you may take a look at https://firebase.google.com/docs/remote-config/loading and specially:
Don't rely on network connectivity to obtain Remote Config values. Do set in-app default parameter values so that your app always behaves as expected. You can periodically keep app and Remote Config backend default values in sync using [downloaded template defaults](https://firebase.google.com/docs/remote-config/templates#download_template_defaults).
And see if it helps in your case or not. Also, as mentioned above, this doesn't seem to be an issue with the plugin.

Thank you for answer, @darshankawar. I've sent a report to the Firebase support.
If it's OK with you, I would keep this ticket opened for now. I will close it if and when it's resolved or I get any information from the Firebase team via the support ticket.

It seems like there is nothing wrong with our setup or with Remote config plugin. Thus I close the issue.

We have the same issue. @r-i-c-o any information about this topic from firebase?