Do not need to require in a function

elfeed-show would have been required already

While true, I like that the dependency is explicit.
The awkwardness is due to circular dependencies, a trap I stepped into
early without realizing the consequences. The package entrypoint is
elfeed.el, and it depends on elfeed-search.el. But elfeed-search.el also
depends on elfeed.el for core Elfeed functionality. Similarly, as you've
seen here, elfeed-search and elfeed-show depend on each other.
What I probably should have done is made elfeed.el only the entrypoint,
split out the "core" Elfeed functionality into, say, elfeed-core, then
depend on everything from elfeed.el.
Though this still doesn't quite solve the circular dependency between
elfeed-show and elfeed-search. I'd either need to merge them into a
common source file (undesirable), or have one expose hooks on which the
other registers, so that one of the dependencies is "dynamic" and breaks
the loop.

While true, I like that the dependency is explicit.
The awkwardness is due to circular dependencies, a trap I stepped into
early without realizing the consequences. The package entrypoint is
elfeed.el, and it depends on elfeed-search.el. But elfeed-search.el also
depends on elfeed.el for core Elfeed functionality. Similarly, as you've
seen here, elfeed-search and elfeed-show depend on each other.
What I probably should have done is made elfeed.el only the entrypoint,
split out the "core" Elfeed functionality into, say, elfeed-core, then
depend on everything from elfeed.el.
Though this still doesn't quite solve the circular dependency between
elfeed-show and elfeed-search. I'd either need to merge them into a
common source file (undesirable), or have one expose hooks on which the
other registers, so that one of the dependencies is "dynamic" and breaks
the loop.

The reason I raised this PR is that every call to require will loop through current-load-list, and the overhead can be huge since elfeed-search-show-entry runs for every entry in a search. It is noticeable for me.
I am not sure I understand the dependency issue. Since elfeed.el is the only entry point, it should be OK if it requires everything else, and all other files requires nothing. By the time any function is invoked, everything should have already been loaded. Functions defined in another file can be declared with declare-function. Another (maybe not ideal) solution is to set some functions as autoload, and corresponding dependencies are pulled in just in time.

The reason I raised this PR is that every call to require will loop through current-load-list, and the overhead can be huge since elfeed-search-show-entry runs for every entry in a search. It is noticeable for me.
I am not sure I understand the dependency issue. Since elfeed.el is the only entry point, it should be OK if it requires everything else, and all other files requires nothing. By the time any function is invoked, everything should have already been loaded. Functions defined in another file can be declared with declare-function. Another (maybe not ideal) solution is to set some functions as autoload, and corresponding dependencies are pulled in just in time.

What kind of search is this? elfeed-search-show-entry is an interactive
function (i.e. user facing) that Elfeed only uses as a "RET" binding
from elfeed-search, and "n" and "p" in elfeed-show. It sounds like
you're calling it from a custom search function that renders each entry
with elfeed-show and searches within that buffer? If so, I'm surprised
to hear that scanning current-load-list is so slow compared to parsing
HTML and rendering it in a buffer.
I'd like to understand the use-case better.

What kind of search is this? elfeed-search-show-entry is an interactive
function (i.e. user facing) that Elfeed only uses as a "RET" binding
from elfeed-search, and "n" and "p" in elfeed-show. It sounds like
you're calling it from a custom search function that renders each entry
with elfeed-show and searches within that buffer? If so, I'm surprised
to hear that scanning current-load-list is so slow compared to parsing
HTML and rendering it in a buffer.
I'd like to understand the use-case better.

My fault. I confused it with some other function.
Here is what happened. I was experiencing a long delay (a few seconds) after I hit "RET" on an entry from elfeed-search, before the content shows up (I am only talking about the text part, as images can take much longer to load). A quick look into the code reveals an obvious unnecessary require call. I made an advice to skip this call, and it seems I am experiencing the delay much less often. When it do happen, a quick profiling shows most of the time in auto compressing/uncompressing (I forgot the function name). While the improvements in performance may be of some other origin, I still feel it a good idea to remove it from a function called every time I open an entry.

My fault. I confused it with some other function.
Here is what happened. I was experiencing a long delay (a few seconds) after I hit "RET" on an entry from elfeed-search, before the content shows up (I am only talking about the text part, as images can take much longer to load). A quick look into the code reveals an obvious unnecessary require call. I made an advice to skip this call, and it seems I am experiencing the delay much less often. When it do happen, a quick profiling shows most of the time in auto compressing/uncompressing (I forgot the function name). While the improvements in performance may be of some other origin, I still feel it a good idea to remove it from a function called every time I open an entry.


Use of out parameter semantics results in incorrect behavior vs. the native implementation.

Observed:  A pattern of porting pass-by-reference for on-success output value fill, replaced with "out" parameter semantics in C#, departs from the original native behavior.
Example, in geo_normalize.cs:
			// --------------------------------------------------------------------
			//		Check for a datum setting, and then use the datum to derive
			//		an ellipsoid.
			// --------------------------------------------------------------------
			GTIFKeyGet(gtif, geokey_t.GeogGeodeticDatumGeoKey, out defn.Datum, 0, 1);
			if(defn.Datum!=(geodeticdatum_t)KvUserDefined)
				GTIFGetDatumInfo(defn.Datum, out dummy, out defn.Ellipsoid);

...vs. its native counterpart...
/* -------------------------------------------------------------------- */
/*      Check for a datum setting, and then use the datum to derive     */
/*      an ellipsoid.                                                   */
/* -------------------------------------------------------------------- */
    GTIFKeyGetSHORT(psGTIF, GeogGeodeticDatumGeoKey, &(psDefn->Datum), 0, 1 );

    if( psDefn->Datum != KvUserDefined )
    {
        GTIFGetDatumInfo( psDefn->Datum, NULL, &(psDefn->Ellipsoid) );
    }

The native GTIFKeyGet behavior is to leave the output value alone on failure.
The managed behavior, by mandate of out parameter use, is to zero the output parameter unconditionally.   This results in previously initialized KvUserDefined values being overwritten with zeroes, which then cause the subsequent check for these to depart the native behavior in these cases.
This could probably be avoided by using temporaries at calling scope that can be readily stomped like this, updating the target defn.XYZ values only on success.  Or perhaps more simply by ref semantics instead (eliminating the current unconditional out parameter clears).   I have yet to look at all cases to see if either would cause problems.
Anyhow, as always, FYI.
Keep well.

Had exactly the same problem.
Original C++ interface only modified the out parameter when the method returned true, otherwise left the original value of the out parameter unchanged,
unsafe keyword to the rescue:
    public unsafe bool Get(string field, out double value)
    {
        fixed (double* v = &value)
        {
            return UnsafeGet(field, v);
        }
    }

    private unsafe bool UnsafeGet(string field, double* value)
    {
        var field_value = GetField(field);
        if (field_value != null && (field_value.type == FieldType.Double || field_value.type == FieldType.Float))
        {
            if (field_value.type == FieldType.Double)
                *value = (double)(field_value.value);
            else
                *value = (double)(float)(field_value.value);
            return true;
        }
        else
        {
            return false;
        }
    }

Note  that the out value parameter is only modified when Get returns true.
Need to set the unsafe compiler flag as well to get this to compile.
Works in VS 2008 and VS 2010.

I simply used ref parameter semantics for this, which avoids the need for unsafe code.  Mainly an "out" -> "ref" conversion for all signatures (and, of course, callers), plus the removal of "value=0" clearing lines at the start of most if not all of the methods (for parity, by inspection of the original code).


[WIP] offline manager

What type of PR is this?
Feature
What this PR does / why we need it:

move node resource controller as offline manager to agent
add offline job qos ensurance feature in offline manager
add a data source, offline manager can get data from both tsp and local

Special notes for your reviewer:

move node resource controller as offline manager to agent I think @szy441687879 was about to do the same thing? can you guys have a sync?

move node resource controller to agent I think @szy441687879 was about to do the same thing? can you guys have a sync?

we are syncing


Alloy pod logs should use integrations/alloy for job label

We should automatically set the correct job labels for services that we know like Alloy, Node Exporter, etc...

To do this properly, we'd need a way to have the pod log processor set the job label, maybe by annotation?


Adding support for SIGINT (including on Windows)

👍 !
Nice addition, it was missing

@benouat Thank you for your review!


Fix #44 ios simulator not working

Fix for https://github.com/DiemasMichiels/emulator/issues/44 to not use the instruments commands which are removed in Xcode 13

Thanks for your PR!
I'm going to add an option for people who haven't set their Xcode/Simulator path the same as the default installation does.


[QUESTION][REQUEST] Options for not showing tweets while searching

Issue Template
Please use this template!
Initial Check

Make sure you've checked the following:

[x] Python version is 3.6;
[x] Using the latest version of Twint;
[x] I have searched the issues and there are no duplicates of this issue/question/request.

Command Ran

c = twint.Config()
c.Username = account
c.Pandas = True
twint.run.Search(c)

Description of Issue

Is there a way to tell twint to not show the tweets it's scrapping in the loggs?
 I use it just for the Pandas Dataframe, I'm not interested in watching tweets on the terminal. I'd be more interested in current tweets count or something like that.

Environment Details

Linux Ubuntu terminal using nohup and OSX using terminal

I'll push changes in the next days, while you can comment out this line
https://github.com/twintproject/twint/blob/d0fe42d31502ce1ba9eecce6b476fb2856f7d880/twint/output.py#L76
Or simply redirect the output

(reopening since I did not push changes, yet)


Recommended way to format html and rust code within the html! macro

Question
What is the recommended way to format html and rust code within the html! macro invocation?
What I've tried (optional)
rustfmt 1.4.14 - doesn't (re)format anything within html! by default

Sadly Rust doesn't provide a way for macros to format the code they're given.
The only option right now is to format the code by hand.
For the Rust code within the macro there's a trick you can use that might help. You can copy the code out of the macro to a normal function anywhere in your code and run cargo fmt. Of course you won't be able to compile this code but rustfmt can still format it.
In the future we might provide an IDE plugin to do this.

I'm seeing some relevant discussion here https://github.com/rust-lang/rustfmt/issues/3434
I looks like people suggest to add
// Skip formatting everything whose name is `html`
#![rustfmt::skip(html)]
// Or make it explicit that you only want to skip macro calls
#![rustfmt::skip::macro(html)]

With my current rustfmt version skip looks to be a default behaviour. Maybe there is a way to enable it explicitly via config.
Although I don't see anything related in the doc https://rust-lang.github.io/rustfmt/?version=master&search=macro

The problem is that rustfmt can format Rust programs, but it has no idea as to how to format the contents of procedural macro invocations.

One nice (more or less) workaround I've found : format selection as html msvsc plugin https://marketplace.visualstudio.com/items?itemName=adrianwilczynski.format-selection-as-html

I've produced a crate called Malvolio (available on crates.io) which allows you to construct HTML trees using the builder pattern and use them inside Yew components. Because the API is macro-free it works with rustfmt.
It can be incrementally adopted but is currently lacking support for child components (which I intend to add in a future release) and listeners (support for those is also planned.)

I've produced a crate called Malvolio (available on crates.io) which allows you to construct HTML trees using the builder pattern and use them inside Yew components. Because the API is macro-free it works with rustfmt.
It can be incrementally adopted but is currently lacking support for child components (which I intend to add in a future release) and listeners (support for those is also planned.)

In vim i have following:
" Format selected block of HTML code
noremap <leader>f :'<,'>! prettier --parser html --stdin-filepath<cr>

This allows me to format the block in the html macro

In vim i have following:
" Format selected block of HTML code
noremap <leader>f :'<,'>! prettier --parser html --stdin-filepath<cr>

This allows me to format the block in the html macro. This can be added to almost any other editor. The only thing is that it has to be run manually.

lua version for neovim:
vim.api.nvim_set_keymap( 'n', '<F7>', 'vi{:! prettier --parser html --stdin-filepath<CR>vi{>', {noremap = true})

what this does:

selects code block between curly brackets
uses prettier to format it nice
selects code block between curly brackets  (again)
indents once

advantages: touching F7 within the html macro will prettify html code
disadvantages: touching F7 anywhere else will force you to press u

Here is a version that find the html! macro and format the following code block:
vim.cmd.nnoremap('<leader>h', ':vimgrep /\\Vhtml\\!/ % | normal jvi} <Esc>:!prettier --parser html --stdin-filepath<CR>vi}>')

I failed to make it work on any rust file we can use it with autocmd but I'm sure someone can :)
BTW switch to lua

Here is a version that find the html! macro and format the following code block:
vim.cmd.nnoremap('<leader>h', ':vimgrep /\\Vhtml\\!/ % | normal jvi} <Esc>:!prettier --parser html --stdin-filepath<CR>vi}>')

Btw are you sure prettier html parser doesn't conflict with some of yew's syntaxes like dynamic tags? @kantum

@TechTheAwesome No idea, hopefully if someone finds out they will tell us here :)

@TechTheAwesome No idea, hopefully if someone finds out they will tell us here :)

Well about that....
@ttax00  your solution works only on the first html! macro(or I'm stupid, both could be correct)
prettier struggles with:
        =>
Can't process </> and gives errors
Can't process nested tags like: <Link> gives errors
Changes {false} to "false" (it causes errors in trunk)
Changes  to  (when you have custom struct component called Nav it messes it up)
messes up indentation relatively to other rust code(that one was pretty obvious and I don't mind it that much)
and probably many others
for the <> MAYBE something like this would work:
in lua
vim.api.nvim_set_keymap("n", "<leader>h=",    "<cmd> execute '%s/<>/<diamond_tag>/g' | execute '%s#</>#</diamond_tag>#g' <CR> | vi{:! prettier --parser html --stdin-filepath<CR>vi{>:%s/<diamond_tag>/<>/g | %s#</diamond_tag>#</>#g <CR>", { noremap = true, silent = true })

@kantum there's feedback for your vim command

I created this plugin for yew code block formatting, it still has 1 or 2 caveats, but it seems to work fine on my code https://github.com/emilien-jegou/vim-yew-prettifier.
ps: it doesn't use prettier internally, the name just resonates better to me than "formatter"


Decoy Parsimony and Top-Picked FDR

propose we skip parsimony for decoy peptides. Do only target parsimony. Then use the target groups to create replica decoy groups. Then assign top scoring only decoy peptides to the decoy protein groups. This means every target group has an exact complement in decoy space. And, we can then do top-picked FDR all the way down the list.

I have concerns about this. I understand this as being a second-pass search that uses a reduced search space which is biased to the target identifications that were used to construct the reduced space.

I'm still worried about the partial decoy thing that we're doing (take 100 decoys, if one outscores it counts as 1/100 of a decoy).
Nobel was generating 100 decoy DATABASES, not 100 decoys. The top decoy from each of his 100 databases was used in the comparison. Generating only 100 decoys and comparing them with the target is not a fair measure of the FDR. TD assumes that a false positive has a 50:50 chance of being assigned target or decoy. If you compare a spectra with 900 targets and 100 decoys, there's a 90:10 chance of being labeled a target when it's a false positive.
The method might be functional, because these decoys are more targeted than random decoys, but there's not a statistical foundation for doing this.

I don't see this as a second pass search. Still had in mind the same searches we're doing now against target and decoy databases. Differnence is in the parsimony step. suggesting we don't do parsimony with the decoy matches but construct decoy protein groups that match the target protein groups. Then use the top scoring psm for each to score the group. Top picked simply junks the lower scoring group.

The multi-shuffled decoy thing is a separate issue than what @trishorts is suggesting here. It's not a change in the TD search strategy. just a change in parsimony


Extend hoist collapse out of scf.forall pattern to use same offsets for all users

The existing pattern added in https://github.com/iree-org/iree/pull/19044 created different offsets for each user even though we previously checked that the offsets will be exactly same. This was preventing recursive application of the pattern as the comparison of the offsets for the next application of patten would fail. The change in this PR is tested by removing cse in test file which was added by https://github.com/iree-org/iree/pull/19044 to workaround this exact issue.

MI300 runner seems broken (?) Maybe try rerunning the jobs.

Looks like other PRs have the same three exact failures in mi300 and they are in runtime which this PR shouldn't cause so I will land this soon.


[HW]

Name: Prateeek
Linkedin Profile:
Attach the homework screenshots below:

https://api.badgr.io/public/assertions/fE-fOIHLSC-76nWGQ5o86g?identity__url=https%3A%2F%2Fgithub.com%2Fprateekengineer


#155542613 Switch WeConnect API from in-memory data to data from a PostgreSQL database.

What does this PR do?

Sets App to use Postgresql database
Set up SQLAlchemy
Creates models for the data which the API will be manipulating using SQLAlchemy.
Creates scripts for handling migration of data when the data model changes.
Implements searching based on the name using a GET parameter q.
Allows filtering of businesses by category or location
Sets pagination on GET endpoints so users can specify the number of results they would
like to have via a GET parameter limit.

Description of Task to be completed?
This PR has the following endpoints working:
Users Endpoints

Method
URL
Description

POST
/api/v2/auth/register
Creates a user account

POST
/api/v2/auth/login
Logs in a user

POST
/api/v2/auth/logout
Logout a user

PUT
/api/v2/auth/reset-password
Resets user password

Businesses Endpoints

Method
URL
Description

POST
/api/v2/businesses
Register a new business

GET
/api/v2/businesses
List all registered businesses

GET
/api/v2/businesses/user
Gets all businesses for the current logged in user

PUT
/api/v2/businesses/<businessId>
Update business

DELETE
/api/v2/businesses/<businessId>
delets a business

Reviews Endpoints

Method
URL
Description

POST
/api/v2/businesses/<businessId>/reviews
Create a new review for a specific business

GET
/api/v2/businesses/<businessId>/reviews
Get all  reviews for a give business

PUT
/api/v2/businesses/<businessId>/reviews/reviewId
Updates a review

DELETE
/api/v2/businesses/<businessId>/reviews/reviewId
Deletes a review

How should this be manually tested?
Clone the repository into your machine
$ git clone https://github.com/mwenda-eric/WeConnect.git
Change directory into WeConnect
$ cd WeConnect
Activate Your virtual environment
source <env_folder>/bin/activate
Install project dependencies
pip install -r requirements.txt
Set The following environment variables SECRET_KEY,APP_SETTINGS,DATABASE_URI,FLASK_APP

Variable
Description

SECRET_KEY
Sets the applications secret key

APP_SETTINGS
sets the environment, either development testing or production

DATABASE_URI
sets the application database URL

FLASK_APP
Exports flask app. set it to run.py

Finally, run flask run
Any background context you want to provide?
Interact with a live demo online:
https://weconnect1-api.herokuapp.com/
The documentation of this API (V2) can be found here:
https://app.swaggerhub.com/apis/miriti/WeConnect/2.0/ui
What are the relevant pivotal tracker stories?
https://www.pivotaltracker.com/n/projects/2153526

Pull Request Test Coverage Report for Build 78

835 of 866 (96.42%)  changed or added relevant lines in 27 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+3.3%) to 95.837%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

app/tests/v1/test_register_user.py
34
35
97.14%

app/tests/v1/test_update_business.py
10
11
90.91%

app/tests/v2/test_create_user.py
36
37
97.3%

app/tests/v2/test_user_login.py
27
28
96.43%

app/v2/review.py
59
61
96.72%

app/tests/v2/test_delete_business.py
38
41
92.68%

app/v2/auth.py
76
79
96.2%

app/tests/v2/test_update_business.py
51
55
92.73%

app/v1/v1.py
51
58
87.93%

app/v2/business.py
60
68
88.24%

Totals

Change from base Build 59:
3.3%

Covered Lines:
1105

Relevant Lines:
1153

💛  - Coveralls


Fix yarn V2 compatibility.

Fixes #933. Adds dependency rules required by yarn v2.

hey @jxnblkm will this be merged or shall we fork / trash previous work using rebass? thx for update :)

This isn't Yarn 2 specific so there is no need to label it as such, it's an issue that should be fixed for all package managers, though Yarn in PnP mode is the only one capable of telling you what is broken at the moment https://yarnpkg.com/advanced/rulebook#packages-should-only-ever-require-what-they-formally-list-in-their-dependencies

This isn't Yarn 2 specific so there is no need to label it as such, it's an issue that should be fixed for all package managers, though Yarn in PnP mode is the only one capable of telling you what is broken at the moment https://yarnpkg.com/advanced/rulebook#packages-should-only-ever-require-what-they-formally-list-in-their-dependencies


FtpClient.GetListing() return FtpListItem with incorect Created DateTime

FTP OS: Windows
FTP Server: FileZilla
Computer OS: Windows
that code
client.GetListing()
	.Where(item => item.Type == FtpFileSystemObjectType.File)
	.ForEach(item => Log.Info($"{item.FullName} created at {item.Created}, modified at {item.Modified}"));

on that directory:
Mode            CreatedTime     LastModifiedTime Length Name
----            -----------     ---------------- ------ ----
-a---- 05.11.2019     12:08 05.11.2019     12:13     10 test

logs
2019-11-06 19:28:09,347 INFO  /test created at 01.01.0001 0:00:00, modified at 05.11.2019 12:13:56

Logs :
# Connect()
Status:   Connecting to <IP_ADDRESS>:21
Response: 220-FileZilla Server 0.9.60 beta
Response: 220-written by Tim Kosse<EMAIL_ADDRESS>Response: 220 Please visit https://filezilla-project.org/
Status:   Detected FTP server: FileZilla
Command:  USER e.makrushin
Response: 331 Password required for e.makrushin
Command:  PASS ***
Response: 230 Logged on
Command:  FEAT
Response: 211-Features:
Response: MDTM
Response: REST STREAM
Response: SIZE
Response: MLST type*;size*;modify*;
Response: MLSD
Response: UTF8
Response: CLNT
Response: MFMT
Response: EPSV
Response: EPRT
Response: 211 End
Status:   Text encoding: System.Text.UTF8Encoding
Command:  OPTS UTF8 ON
Response: 202 UTF8 mode is always enabled. No need to send this command.
Command:  SYST
Response: 215 UNIX emulated by FileZilla
2019-11-06 19:24:59,015 INFO  Connected to <IP_ADDRESS>

# GetListing(null, Auto)

# GetWorkingDirectory()
Command:  PWD
Response: 257 "/" is current directory.
Command:  TYPE I
Response: 200 Type set to I

# OpenPassiveDataStream(AutoPassive, "MLSD /", 0)
Command:  EPSV
Response: 229 Entering Extended Passive Mode (|||49717|)
Status:   Connecting to <IP_ADDRESS>:49717
Command:  MLSD /
Response: 150 Opening data channel for directory listing of "/"
+---------------------------------------+
Listing:  type=file;modify=20191105051356;size=10; test
-----------------------------------------
Status:   Disposing FtpSocketStream...

# CloseDataStream()
Response: 226 Successfully transferred "/"
Status:   Disposing FtpSocketStream...

# Dispose()
Status:   Disposing FtpClient object...
Command:  QUIT
Response: 221 Goodbye
Status:   Disposing FtpSocketStream...
Status:   Disposing FtpSocketStream...

Bug not at parse stage
https://github.com/robinrodricks/FluentFTP/blob/2845a26bfb361d5586c0de078e06516b159582eb/FluentFTP/Helpers/Parsers/FtpMachineListParser.cs#L74
At record get stage, it's clear from the logs: Listing:  type=file;modify=20191105051356;size=10; test
I will try fix this soon

Ouch. FtpWindowsParser ignore created
https://github.com/robinrodricks/FluentFTP/blob/2845a26bfb361d5586c0de078e06516b159582eb/FluentFTP/Helpers/Parsers/FtpWindowsParser.cs

Buddy as you can see, the created date is not sent by the server.

Listing:  type=file;modify=20191105051356;size=10; test


Refer to classes from the dunedaq::oksXYZ namespaces

Approved. Along with the other packages in the OKS suite which had a gcrone/oksnamespace branch, the code built successfully, and then the tutorials covered in https://github.com/DUNE-DAQ/dal#readme and https://github.com/DUNE-DAQ/dbe#readme continued to work.


New viz link

how long will it take for the refactor?

Nice! Thanks~
Do we need to add this feature in document somewhere? Or in comments?


Improved asset code (with realistic interfaces)

As discussed with @jmorel here is an alternative implementation for the opener/algo/metrics.
They are meant to 1. have an implementation that is very simple and 2. use interfaces that match the intended usage, in particular:

train returns a model structure
predict calculates y based on the input model and the input X

Please let me know your thoughts. I'm particularly interested in feedback on the comments,
Performance impact
I compared the time it takes to run make test between:

master
improved_asset_code
improved_asset_code_v2

I ran make test 10x on each branch. Both improved_asset_code and improved_asset_code_v2 take longer to run, but the increase is very small.

(those numbers are not worth much, it's just to get a general idea of the size of the increase)
In a future iteration, we could make changes so that the new algo/opener/metrics are only used for a few specific tests that ensure that data flows correctly between opener, algo and metrics. All the other tests could use a dummy algo that does nothing (like in master). This would shave a few seconds :man_shrugging:

@AurelienGasser could you review @jmorel's comment to move on this topic ?

@jmorel I finally had a chance to look at this.
I made changes, what do you think?

I'm adding @Esadruhn as a reviewer because she also made an attempt at proper asset code.

💯


Stream Status Change Link Not Clickable

When a streamer's status changes online, the closing bracket causes the link to be incorrect.

yep, mistake on my part, it has already been reported and fixed (will be fixed in the next release)


My subpages redirect to the main page

Before opening, please confirm:

[X] I have checked the custom domains troubleshooting guide.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
d28nfrfmnre557
Region
us-east-2
Step
Deployed
Status
Sucessful
Issue or question
I've successfully deployed my site and have been able to update the site multiple times. Recently, not sure what changed, all of my subpages redirect to the home page. i.e. the 'About' page loads the url with the /about, but then doesn't actually take the user to the 'About' page.
I recently update the domain and DNS settings from GoDaddy so my intuition is that I've somehow managed to mess that up. I double checked my namespaces from Route 53 and those are correct. I also double checked my CNAME DNS with whatsmydns.net and everything checks out.
Website: https://www.engineer-aid.com/
Error message
No response
Additional information
No response

Hi @engineeraid-austin 👋🏽 it appears that requests to your pages are returning 404 errors. Your app is configured to redirect 404s to your home page:

Are your pages accessible when you run your app locally?

Hi @hloriii thanks for helping out. Yea so I am using Hugo to develop the site, as you probably already know, they have a local host function. When running locally the navigation is okay. Maybe this is something I should try on their help docs? I just assumed it was related to the routing since it was working pre-DNS change and works locally.

Huh, that is so weird. Thanks for the heads up @calavera Well I am glad that it is working, any ideas on what might have happened? Just want to make sure it's something that I am aware of going forward?


Error - fallen at the first hurdle. - E5112: Error while creating lua chunk:  nvim/init.lua:39: '=' expected near 'vim' `

On launching nvim init.lua
E5112: Error while creating lua chunk: /Users/.../.config/nvim/init.lua:39: '=' expected near 'vim'
I am not sure how to troubleshoot.

line 39 in the init says -- See :help mapleader`` have you removed the comments?

What @Drakx said :) If you're still having trouble we'd need a bit more info to proceed.
Can you please tell us:

The platform and OS version you're using
The Neovim version you're using

Can you please show us:

The diff between your init.lua and the one currently in the kickstart.nvim HEAD?

@capnahab Do you happen to be still facing this error? If you've solved it, would you be able to tell us what you changed so that we can update our installation instructions if need be?

It's been over a month. If we don't hear back by next week let's close this one.


DBT_TEST_ATHENA_AWS_PROFILE_NAME should be optional if using SSO

DBT_TEST_ATHENA_AWS_PROFILE_NAME should be optional for those who use SSO and don't have a profile
https://github.com/dbt-athena/dbt-athena/blob/f31a8634efb412b7cd739389873381161ccf75b3/tests/conftest.py#L23

DBT_TEST_ATHENA_AWS_PROFILE_NAME is optional : indeed if it is not passed, the value will be None and then it is the same as not putting the value, leading to AthenaConnection having default profile.

DBT_TEST_ATHENA_AWS_PROFILE_NAME is optional : indeed if it is not passed, the value will be None and then it is the same as not putting the value, leading to AthenaConnection having default profile.

But I don't use any profile because I export AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN directly in the terminal. This works well with dbt run or dbt compile.
It works if I comment out `"aws_profile_name": os.getenv("DBT_TEST_ATHENA_AWS_PROFILE_NAME"),

@mattiamatrix I've your same setup, I'm assuming a role using sso. I don't think that we need to change anything here, as in the cases where we use AWS_ env (doesn't matter how they are set), we can just ignore to setup the DBT_TEST_ATHENA_AWS_PROFILE_NAME.

mmh, @nicor88 can you run make test locally? I can't with the current setup. Let me know if you can reproduce.
My .env looks like this make test fails.
DBT_TEST_ATHENA_S3_STAGING_DIR=s3://athena-output-results-eu-west-2
DBT_TEST_ATHENA_REGION_NAME=eu-west-2
DBT_TEST_ATHENA_DATABASE=awsdatacatalog
DBT_TEST_ATHENA_SCHEMA=athena_dbt_tests
DBT_TEST_ATHENA_WORK_GROUND=primary
# DBT_TEST_ATHENA_AWS_PROFILE_NAME=

I believe this is because
@pytest.fixture(scope="class")
def dbt_profile_target():
    return {
        "type": "athena",
        "s3_staging_dir": os.getenv("DBT_TEST_ATHENA_S3_STAGING_DIR"),
        "schema": os.getenv("DBT_TEST_ATHENA_SCHEMA"),
        "database": os.getenv("DBT_TEST_ATHENA_DATABASE"),
        "region_name": os.getenv("DBT_TEST_ATHENA_REGION_NAME"),
        "threads": 1,
        "num_retries": 0,
        "work_group": os.getenv("DBT_TEST_ATHENA_WORK_GROUND"),
        "aws_profile_name": os.getenv("DBT_TEST_ATHENA_AWS_PROFILE_NAME"),
    }

if DBT_TEST_ATHENA_AWS_PROFILE_NAME is not defined, it returns
"aws_profile_name": None

But, this makes AthenaCredentials or boto3 look for a default profile that doesn't exist in my setup.
I can make it works with
@pytest.fixture(scope="class")
def dbt_profile_target():
    return {
        "type": "athena",
        "s3_staging_dir": os.getenv("DBT_TEST_ATHENA_S3_STAGING_DIR"),
        "schema": os.getenv("DBT_TEST_ATHENA_SCHEMA"),
        "database": os.getenv("DBT_TEST_ATHENA_DATABASE"),
        "region_name": os.getenv("DBT_TEST_ATHENA_REGION_NAME"),
        "threads": 1,
        "num_retries": 0,
        "work_group": os.getenv("DBT_TEST_ATHENA_WORK_GROUND"),
        # "aws_profile_name": os.getenv("DBT_TEST_ATHENA_AWS_PROFILE_NAME"),
    }

I updated the PR, I tested with SSO user, it works now, let me know if it works for you


server can not verify password base on CHAPPassword and CHAPChallenge(not mschapv2)

Tested with radius client on switch huawei s5700
I may try to implement it myself.
relative: layeh/radius#96

Tested with radius client on switch huawei s5700 I may try to implement it myself.
relative: layeh/radius#96

Did you manage to solve the issue?


Feature / Charge Date Change

Added ability to update charge date.

Codecov Report

Merging #125 (1a1c541) into master (064ee48) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff            @@
##             master     #125   +/-   ##
=========================================
  Coverage     98.32%   98.32%
- Complexity      983      986    +3
=========================================
  Files           161      161
  Lines          3460     3471   +11
=========================================
+ Hits           3402     3413   +11
  Misses           58       58

Files Changed
Coverage Δ

...c/Controller/Wallets/Charges/ChargesController.php
100.00% <100.00%> (ø)

app/src/Request/Charge/CreateRequest.php
100.00% <100.00%> (ø)

app/src/View/ChargeView.php
100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Lookup subnets in VCN compartment

Currently we search for subnets within the compartment specified in the driver configuration file. This causes a problem when the VCN is in a separate compartment to the compartment specified in configuration. The compartment specified in configuration is typically that of the cluster.
Some customers have a split compartment model where the network (VCN) and cluster are in separate compartments. The configuration file already contains the VCN OCID as a mandatory field so we can safely assume it is always present.
This change modifies getAllSubnetsForVCN such that the API call to core.ListSubnets is performed in the same compartment as the VCN. This is backwards compatible (where the VCN compartment is equal to the cluster compartment).

This doesn't fix #137 it only fixes a subset where the VCN is in a different compartment than was previously configured for the driver.
#137 should be about removing the dependency on VCN for determining the instance id of a node

LGTM

Updated to reflect the fact that this doesn't solve the requirements for #137


SharedTable sorts alphabetically but shouldn't sort at all

SharedTable sorts rows and columns alphabetically, but this is a change in behaviour from the Results table and also BoneJ1's results inserter. Sorting while inserting has no practical necessity and makes the code difficult to maintain.
Columns and rows should be created in the order that results are produced by plugins.

Fixed by https://github.com/mdoube/BoneJ2/commit/895a7fef935c72f0bceff94165e368ec2c576b0c


[feat] HEAD for CIDs + refactoring of handlers

Here I've done several things:

Added HEAD handler that returns Content-Length header as in Kubo
Refactored handlers to make them slightly more idiomatic
Fixed bug that doesn't set Location in redirect
Applied Clippy to iroh-gateway

Done!

@Arqu Did you reconfigure clippy recently? Checks are failing on code that I didn't write. I can fix it anyway.

Can you rebase, shouldn't be the case.

Rebase again, all checks was ok @Arqu

Rebased again, all checks was ok @Arqu

Sorry, lots of stufff floating around. Reviewing now.


expose properties for set duration enter/exit of showBottomSheet/showModalBottomSheet

Use case
I want to show bottomSheet with custom duration of enter/exit action
Proposal
expose some properties for config this duration/animation

Pull request created.

You can provide an AnimationController to the BottomSheet.animationController to configure however you like, is that not sufficient?

You can provide an AnimationController to the BottomSheet.animationController to configure however you like, is that not sufficient?
Hi, @Piinks
How can I provide an AnimationController to BottomSheet?
I was tried but not found any way to do

I just saw it. But if I don't use BottomSheet, is there any way I can pass AnimationController?

This should be closed now.

This should be closed now.

Thank you for your PR @ZainUrRehmanKhan

Thank you for your PR @ZainUrRehmanKhan


5553080B - Tom Clancy’s Splinter Cell: Conviction

Validation

[X] I've read the FAQ.
[X] The Xenia build used is from a canary branch. (not MLBS/AlexVS/master/pull requests, etc)
[X] This issue isn't for help (tech support) with Xenia, or a game.
[X] I've checked if this game doesn't already have a compatibility report.

Xbox 360 Marketplace link
https://marketplace.xbox.com/en-us/product/splintercellconviction/66acd000-77fe-1000-9115-d8025553080b
Xenia version
https://github.com/xenia-canary/xenia-canary/commit/a246c81e3ba6d541a9d8c23b5a92433046a8068f
Issues
The game loads up into the menu. From there on no graphics are displayed. Sound is working. It is possible to interact with the game and start the campaign. The xenia.log calls for a report to the developers.
Log
xenia.log.zip
Screenshots

Labels
state-intro
gpu-drawing-missing
tech-engine-unrealengine

Tested on: https://github.com/xenia-project/xenia/commit/7003e54e510fa2169a9434cdb8d608bff7f7be1e
xenia.zip

nothing renders in gameplay, only text and HUD. !> 01000010 1D texture is too wide (65536) - ignoring!
intros are fast forwarded.

gpu-drawing-missing | state-gameplay | tech-middleware-havok | tech-middleware-scaleform


Case-sensitive matching

The documentation is pretty scattered when it comes to the exact modes of querying offered, and I'm having trouble finding a way to perform a case-insensitive exact string search. In other words, I want this:
select * from sources * where foo contains 'beep boop';

to match a document like {"foo": "beep boop"}, but not {"foo": "BEEP BOOP"}, and of course not {"foo": "beep boop BZZT"}.
As far as I can gather, contains on a field of type string with indexing mode attribute will always match the entire input string against the entire indexed string. However, it appears that contains is always case-insensitive (as is match), even if you specify normalization: none and match { exact } in the schema. It's unclear to me what exactly match { exact } does with such a field. It appears to have no impact on contains or on normalization, and since string attribute fields are not (according to the docs) tokenized, it doesn't affect tokenization, either.
I did come across this very old Stack Overflow question. This seems like an odd gap in the functionality, especially given how Elasticseach (which Vespa positions itself as a replacement for) offers extensive control over normalization etc. on a per-field basis.

Yes, there's no way to do case-sensitive matching. It would be easy to add but so far it seems nobody has really needed it. Do you?

Okay, I'll add support for it then - thanks.

That's great news. Thank you.


Fix Potential Randomisation Bug

Resolves #37

@cymox1 only file changed here is readme

@onejgordon will finalize on this. It is still WIP

@onejgordon this is ready for review

Looks good. Though checks failing:
ImportError: No module named pyparsing


fix(e2e): obscure secrets in video recordings

Description
secret creation shows the value in cypress recordings, make it unreadable

[test]

/lgtm


axios update

Please update the axios peer dependency to the latest.

Why? ^0.25.0 is fully compatible with latest

Moro moro! 👀 Just to weigh in, I had to change axios version (to the semver-compatible one).
Axios has released v1 now.
In order to support the latest version, some things have to be fixed.
I ran into these before giving up and downgrading axios:

https://github.com/axios/axios/issues/5142

and
/[redacted]/.pnpm/axios@1.1.3/node_modules/axios/lib/core/dispatchRequest.js:17
  if (config.cancelToken) {
             ^
TypeError: Cannot read property 'cancelToken' of undefined

Any chance to get at least beta version wit axios 1+? In our case we've been using axios 1+ for some time, then added openapi-client-axios which is superb when working with external apis. We manage to make it work with 1+ and 0.25 in peer dependency leveraging legacy-peer-deps flag, but that leads to problems with prisma (that some deps/post-scripts are not run properly).

Hi guys<EMAIL_ADDRESS>is now out with support for axios v1. 🤝


Auto attach does not connect on ElementaryOS

Testing #46570
elementary OS 0.4.1 Loki
Built on "Ubuntu 16.04.2 LTS"
node v8.9.1

create index.js

setInterval(() => {
    console.log('ssss');
}, 1000);

enable auto attach
in the integrated terminal run node --inspect index.js

Dev tools show:
[ms-vscode.node-debug]Maximum call stack size exceeded
e.$onExtensionRuntimeError @ mainThreadExtensionService.ts:43
mainThreadExtensionService.ts:44 RangeError: Maximum call stack size exceeded
	at RegExp.exec (<anonymous>)
	at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:96:44)
	at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)
	at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)
	at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)
	at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)

Also tried on a bare Ubuntu 16.04 LTS. No stracktrace in the dev console,  ut also no connect.

Same on Fedora 25. No stack trace

Same when starting from an external terminal

basically the same issue as #46672

This feature is confined to the integrated terminal. Processes in external terminals are not picked up.

Still the same problem in Version 1.22.0-insider
Commit 952b2a641da89a6c7bc28387474bc8afd47f0d2f
Date 2018-03-29T05:13:04.457Z
on Elementary OS
[ms-vscode.node-debug]Maximum call stack size exceeded
e.$onExtensionRuntimeError @ /usr/share/code-insiders/resources/app/out/vs/workbench/workbench.main.js:2867
/usr/share/code-insiders/resources/app/out/vs/workbench/workbench.main.js:2867 RangeError: Maximum call stack size exceeded
at RegExp.exec ()
at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:96:44)
at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)
at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)
at walker (/usr/share/code-insiders/resources/app/extensions/ms-vscode.node-debug/out/node/extension/nodeProcessTree.js:105:13)

But works on Fedora.

Also works on a plain Ubuntu 16.04 LTS. Looks like it's related to Elementary OS.

What version of node.js are you using?

psout.txt

psout.txt
Node v8.9.1

Can reproduce with your ps output.


Improved store button amazon-darkmode

Closes #986 . Improved store button amazon-darkmode. Attached screenshots.
Before:

After:

Amazing work.


Make Locations API internal facing

There is no need for this to have an external DNS.
Trello: https://trello.com/c/gPRVvLXh/2848-set-up-remaining-infrastructure-for-locations-api-5

Closed in favour of #1564


italics and quotes in diwan.xsl

In projects/alea/html/diwan.xsl, we need italics from @rend="italic" and quotes from <q>.

added 45m of time spent


Update README.md

Just fixed a small typo

Hi @SebsSa, can you add your Signed-off-by? Then it can be merged :-)

Sorry :) Done


Reading file from S3 fails to parse

Exception: Nokogiri::XML::SyntaxError: Document is empty
--
 0: /usr/local/bundle/gems/nokogiri-<IP_ADDRESS>/lib/nokogiri/xml/document.rb:58:in `read_io'
 1: /usr/local/bundle/gems/nokogiri-<IP_ADDRESS>/lib/nokogiri/xml/document.rb:58:in `parse'
 2: /usr/local/bundle/gems/nokogiri-<IP_ADDRESS>/lib/nokogiri/xml.rb:64:in `parse'
 3: /usr/local/bundle/gems/rubyXL-3.3.22/lib/rubyXL/objects/ooxml_object.rb:110:in `parse'
 4: /usr/local/bundle/gems/rubyXL-3.3.22/lib/rubyXL/objects/ooxml_object.rb:440:in `block in parse_file'
 5: /usr/local/bundle/gems/rubyzip-1.2.0/lib/zip/entry.rb:495:in `get_input_stream'
 6: /usr/local/bundle/gems/rubyXL-3.3.22/lib/rubyXL/objects/ooxml_object.rb:440:in `parse_file'
 7: /usr/local/bundle/gems/rubyXL-3.3.22/lib/rubyXL/objects/root.rb:65:in `parse_zip_file'
 8: (pry):47:in `block in __pry__'
 9: /usr/local/bundle/gems/rubyzip-1.2.0/lib/zip/file.rb:133:in `open_buffer'

I'm using parse_buffer on a string derived from S3 via the fog gem. The content type is "application/vnd.ms-excel". It works if the file is local.

Hey Kurtis, did you manage to solve this? I am having the same issue.

@dmferrari : can you provide a minimal test case please?

It was a bit ago. Either I wasn't actually pulling down a document or the document IO was incorrectly being thought of as empty. I think it was the latter.
I probably forced them to export XML files.

@krainboltgreene , @dmferrari :  give me a minimal test case so I can reproduce the issue.


Redirect attachments spike

Quick spike to figure out bits of https://trello.com/c/DMpTECux/1262-handle-redirecting-and-removing-old-assets-as-part-of-whitehall-migration
Lots still to figure out, but early comments welcome.

@ChrisBAshton Hmm a few of my comments didn't come through then - not sure what went wrong.
Things I flagged that seem to have got lost are:

use of deprecate terminology. This isn't a concern for exploring ideas but this word seems to be a new bit of terminology in this migration and, on instinct, doesn't feel right to me. So as this becomes more formed I'd like to see if we can either use existing terminology or have a chat about what we should call things.
Inheritance on CreateAsset. I think we should start with duplicated code on these before embracing inheritance. Ideally we'd want to avoid inheritance if at all possible because of the negative impact it has on code comprehension and instead a compositional approach should be preferred. Obviously these classes have aspects that may lend themselves to inheritance so maybe that ends up being the right approach but I'd suggest arriving at that destination after exhausting other possibilities rather than starting there.
Rather than Document.find(record.created_document_id) we should use the model relationship to access the object. For example record.created_document
I don't think we cracked the naming created_document_id. I actually think we'd be fine going with just document_id here since the whitehall equivalent is prefixed. Alternatively we could go with content_publisher_document_id for consistency but that'll be a bit of a mouthful, not necessarily needed and may present other consistency concerns

Now to wonder how github lost my things 🤔 - do feel free to tell me to butt out if I'm adding these things too early

Your GitHub comments were probably lost as I was rebasing and pushing up changes, most of which correlate with your suggestions already, which is great! 🎉 Early comments are always helpful in a spike such as this, so don't worry about butting in.
Not sure what to call the deprecate method, would be good to decide that soon. Perhaps along the lines of LockWhitehallDocument, although I imagine we'll be calling that before we begin the import, and this task is more about tidying up the loose ends after an import. We could use the terminology you use in the migration document - PerformIrreversibleSteps - or perhaps something more descriptive such as MigrateUpstream?

Questions:

Best way of determining the new asset URL and mapping it to the old one that needs redirecting.
Best way of creating the redirect from the old to the new asset URL.
How many references are needed in the whitehall_imported_assets table (I think we could get more value out of an import_id associated with the whitehall_imports table than by document_id alone).
Whether revision_number is a good thing to be tracking (can probably just track live vs draft editions). Let's say we have a document with edition A (first), B (second), C (third - live), D (fourth - draft). And let's say we have an asset in edition A, removed in edition B, a new asset in edition C and no new assets in edition D. I'd say it's out of scope for us to go back into edition A and delete the asset - that should have been Whitehall's responsibility in edition B. I think we should only be looking at the assets in editions C and D.
I need to spend a bit of time figuring out how best to create the whitehall_imported_assets table vs WhitehallImportedAsset class. I've only ever created a Rails migration before, and don't yet have experience of setting up an ORM model from scratch! Looking forward to it though, and will put it in my personal development spreadsheet.
Are there any variants of attachments that we actually want to keep? 🤔 all I know of are the PDF thumbnails which I know we want to delete.

I'm in meetings most of the day today, would be great if you could have a quick look at this spike and these questions by tomorrow @kevindew 😊 thanks!

Sat down with Kevin IRL a couple of days ago and got the answers to my questions:

Can't remember exactly, I think the Whitehall asset URL will be linked with a revision (Image/Attachment), and when the document is synced a new revision will be created which has the new asset URLs? We could then get the previous revision to get the old URL and set the redirect.
Use GdsApi.asset_manager.update_asset(live_asset.asset_manager_id, redirect_url: current_asset.file_url) as per https://github.com/alphagov/content-publisher/blob/7f4a1601cbbf10ef3f61c4c78a94143fb63e555f/app/services/publish_asset_service.rb#L73-L86
We will just use an import_id, not a document_id - and a lot of this doesn't need to be explicitly added, Rails adds ID columns automatically. Easier to experiment with migrations rather than edit schema directly.
Yes, we'll associate assets with a Content Publisher Revision rather than Whitehall revisions. But probably Image Revisions and Attachment Revisions, rather than Revision.
...
There are no variants we will want to keep.

Can't remember exactly, I think the Whitehall asset URL will be linked with a revision (Image/Attachment), and when the document is synced a new revision will be created which has the new asset URLs? We could then get the previous revision to get the old URL and set the redirect.

Prior to syncing to live we don't have asset manager urls for Image::Revision and FileAttachment::Revision assets. Once synced we can access them like so:
For a FileAttachment::Revision id (22) :
irb(main):002:0> FileAttachment::Revision.find(22).asset_url
=> "https://assets.publishing.service.gov.uk/media/5d95b627ed915d08f0f326a8/letter-to-wda-holders.pdf"

For an Image::Revision id (1304) and variant name ("960") :
irb(main):005:0> Image::Revision.find(1304).asset_url("960")
=> "https://assets.publishing.service.gov.uk/media/5defb9fae5274a71e5049268/food.jpg"

Cool, and to confirm, we could get the previous revision to get the old whitehall asset url?
irb(main):002:0> FileAttachment::Revision.find(22).asset_url
=> "https://assets.publishing.service.gov.uk/media/5d95b627ed915d08f0f326a8/letter-to-wda-holders.pdf"

irb(main):002:0> FileAttachment::Revision.find(21).asset_url
=> "https://assets.publishing.service.gov.uk/path/to/old/whitehall/asset/Letter--to__-WDA-holders.pdf"

Hi Kevin - I've rewritten the spike commits and outlined a structure I think this can take. The only bit I haven't yet specced out fully is the asset_exists_in_a_live_edition? method (see last commit).
Could you have a quick look and make sure this is on the right track? On Monday I plan on closing this spike PR and starting the real one 🤞

Closing in favour of the 'real' branch: https://github.com/alphagov/content-publisher/pull/1530
But do feel free to leave some comments here which I can incorporate into my new branch.


[WIP] Route 53 API

Currently a work in progress.
Changes made:

Created Route 53 API
Added additional AWS Interfaces for Route 53
Partially implemented method signatures from interfaces as functions for Route 53 Client

To Do List (after feedback from @R-Lawton )

[ ] Set up development environment for Route 53 API in the operator by implementing (in a simple manner) the code required to get the controller up and running, and therefore test functionality of the controller.
[ ] In order to test the functionality of the controller, test each function as it is written. This allows for a more simpler and incremental approach. Try to test the CreateHostedZone() first without worrying about the current checks for root domain, for example.
[ ] For the IsRootDomain() function, add more params to the function, such as the rootDomain itself to test if exists. The root domain can be specified in the CRD sample for the Route 53 controller.

@R-Lawton it is time... :)
If you could review my PR that would be great!

@dlaw4608 Can you give this PR a gander too, please

lgtm nice job Evan


Static JS file "was not found" on intial page request (but ok after subsequent requests)

Describe the bug
I am getting some unexpected behavior involving use of an external (non svelte) that is intended to be invoked after svelte-kit renders the initial page.
In my src/routes/index.svelte file I have the following:
<svelte:head>
	<script src="/js/index.bundle.js"></script>
</svelte:head>
// and then in this same .svelte file also a <script> , some html content and a <style> section )

The JS file I have bundled separately (outside of svelte land) and just needs to run after my initial svelte powered index runs; I'm not sure if there is a better way to wait for svelte to finish rendering but currently I just am using a 500ms delay in this particular external script.
Anyway, that is beside the point - the main problem is this error on the first request I make (see log)
(but actually I just tested the production build ie- yarn build and noticed there were no such problems; so evidently this only occurs in dev mode.   And another reason this isn't such a big deal is even in dev mode the bundle 'was not found' msges go away on subsequent requests; ie- i just have to reload the page once and my external bundle works as intended.... so just thought I would share this; not sure why that initial request is not working as intended I supppose the only inconvenience is that I have to remind other collaborators on my project to refresh the index page once it loads initially after starting in dev mode)
Reproduction
:/
Logs
drs@mypc:/dev/project$ yarn dev
yarn run v1.22.10
warning package.json: No license field
$ svelte-kit dev --port 3027

  SvelteKit v1.0.0-next.115

  local:   http://localhost:3027
  network: not exposed
  network: not exposed
  network: not exposed

  Use --host to expose server to other devices on this network

## (idles here until requesting my index page ie- localhost:3027/ aka ./src/routes/index.svelte )

warn - You have enabled the JIT engine which is currently in preview.
warn - Preview features are not covered by semver, may introduce breaking changes, and can change at any time.
[svelte-preprocess] The file  "/js/index.bundle.js" was not found.
[vite-plugin-svelte] /dev/project/src/routes/index.svelte:96:1 Unused CSS selector "p"
[svelte-preprocess] The file  "/js/index.bundle.js" was not found.

System Info
System:
    OS: Linux 5.11 Ubuntu 20.04.2 LTS (Focal Fossa)
    CPU: (24) x64 AMD Ryzen 9 3900X 12-Core Processor
    Memory: 831.66 MB / 15.58 GB
    Container: Yes
    Shell: 5.0.17 - /bin/bash
  Binaries:
    Node: 14.17.4 - ~/n/bin/node
    Yarn: 1.22.10 - ~/n/bin/yarn
    npm: 6.14.14 - ~/n/bin/npm
  Browsers:
    Firefox: 90.0.2
  npmPackages:
    @sveltejs/adapter-node: ^1.0.0-next.26 => 1.0.0-next.26
    @sveltejs/adapter-static: ^1.0.0-next.13 => 1.0.0-next.13
    @sveltejs/kit: next => 1.0.0-next.115
    svelte: ^3.34.0 => 3.38.2

Severity
annoyance
Additional Information
No response

This sounds quite likely to be a Vite issue. Can you try reproducing it there without SvelteKit to confirm? E.g. you could use this project as a base to test against: https://github.com/sveltejs/vite-plugin-svelte/tree/main/packages/e2e-tests/vite-ssr

would something like this work for you?
__layout.svelte
<script>
  import { onMount } from 'svelte';
  import { doStuff } from 'my-bundle'

  onMount(() => {
    doStuff(); // if this is too early, maybe listen for a custom event thats fired when ready
  });
</script>

onMount and imports exlusively used in onMount are removed from the ssr bundle so this would not be affecting ssr
You could also use a dynamic import inside onMount.
Maybe unrelated but very odd
[svelte-preprocess] The file  "/js/index.bundle.js" was not found.

Why is svelte-preprocess trying to read that file? cc @kaisermann
(maybe it's using a regex to find <script> tags and doesn't ignore them when inside <svelte:head>)

Thanks for the tips!
A little more debugging and it became clear why the firstload did not work; turns out on my system svelte dev needed more than 500ms to intialize; i found in dev I have set it to 1000ms on the first pageload request (subsequent requests are faster, hence it 'appeared' as an issue).
And the import & init via onMount tek looks awesome, thanks for sharing!  Far better than waiting for xxx milliseconds.   That said, my bundle currently is not exporting as a ES6 module but should be easy enough to refactor that to do it...
in the meantime, I found an easier solution:  attach an event listener in the external JS for 'sveltekit:start' and then initialize on that.   So I'm good to go.
Perhaps I will leave the issue open however if you think it is worthwhile to further pinpoint the [svelte-preprocess] The file  "/js/index.bundle.js" was not found. issue.
It's simply a static file src/static/index.bundle.js and the afformentioned svelte:head no other references so yeah maybe svelte-preprocess needs some extra logic to detect and ignore the file in this context; maybe it could cross reference ./static  for example.

(maybe it's using a regex to find

Can't reproduce this, and the original comment put ':/' in place of a repro so I'll close this.
Note that script tags in a <svelte:head> won't load and execute synchronously when client-side navigating to a page, so any globals it creates etc can't be accessed immediately


ARROW-12763: [R] Optimize dplyr queries that use head/tail after arrange

Uses SelectKSinkNode for head/tail on sorted query. tail() is implemented by reversing the sort orders, taking the top K rows, and then reversing the resulting row order to match as if we had taken the (ordered) bottom K rows.
Some subtle differences in expectation: row order appears to be locally deterministic (within chunks), but SelectK doesn't necessarily follow that when there are ties. Also, missing value handling by SelectK doesn't match R's expectations--there may be a sort option that isn't handled the same way in the SelectK algorithm (I don't see anywhere else to pass in another option but maybe I missed it)

Looks good to me. I don't think it covers pathological cases like airquality %>% arrange(Temp) %>% head(10) %>% arrange(Wind) or airquality %>% head(10) %>% tail(5) but I'm pretty sure that's a given for our current dplyr implementation anyways.

Those do work, though internally they can't be done in a single ExecPlan:
Table$create(airquality) %>%
  arrange(Temp) %>%
  head(10) %>%
  arrange(Wind) %>%
  collect()

   Ozone Solar.R Wind Temp Month Day
1     NA      NA  8.0   57     5  27
2      1       8  9.7   59     5  21
3      4      25  9.7   61     5  23
4     32      92 12.0   61     5  24
5     18      65 13.2   58     5  15
6     19      99 13.8   59     5   8
7     NA      NA 14.3   56     5   5
8     NA     266 14.9   58     5  26
9     NA      66 16.6   57     5  25
10     6      78 18.4   57     5  18

Table$create(airquality) %>%
  head(10) %>%
  tail(5) %>%
  collect()

  Ozone Solar.R Wind Temp Month Day
1    28      NA 14.9   66     5   6
2    23     299  8.6   65     5   7
3    19      99 13.8   59     5   8
4     8      19 20.1   61     5   9
5    NA     194  8.6   69     5  10

surprisingly(?) not much faster

Turns out there is a 7.0.0 followup to make TopK more efficient, so this is apparently correct.

Even then, more efficient in terms of RAM, but not in terms of speed.  arrange() %>% head() requires reading all of the data (you never know when that last item will be your biggest).


xaxis labels rotate

Hi Travis,
I'm using the line chart. I am trying to rotate the xaxis labels. It works for the yaxis but not the xaxis. Any ideas? In the image, i tried -45 degrees but i actually want -90 degree.

Try rotateAlways: true.
https://apexcharts.com/docs/options/xaxis/#rotateAlways

I did look at the that URL but I stopped at rotate 😞. So the issue was between the chair and the computer lol.

thanks Nikolai


Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure for Selenium 4.1.2 and above

I am facing this issue for Selenium Version 4.1.2 and above.
Issue
Class: org.openqa.selenium.remote.RemoteWebDriver| on Line Number: 161 Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
I am using aerokube/selenoid:1.10.0 and aerokube/selenoid-ui:1.10.0
I am not facing this issue for other selenium versions which are below 4.1.2.
Code used to start the browser
private static final Supplier<WebDriver> remoteChromeDriverSupplier = () -> {
        chromedriver().setup();
        var chromeOptions = getChromeOptions();
        var timeOut = "--idleTimeout=150";
        var idleTimeOut = 190;
        chromeOptions.addArguments(windowSize, timeOut);
        chromeOptions.setPageLoadStrategy(NORMAL);
        chromeOptions.setCapability("timeZone", "America/New_York");
        chromeOptions.setAcceptInsecureCerts(true);
        chromeOptions.setExperimentalOption("prefs", getDownloadFolderPrefs());

        Map<String, Object> cloudOptions = new HashMap<>();
        cloudOptions.put("idleTimeout", idleTimeOut);
        cloudOptions.put("enableVNC", true);
        cloudOptions.put("name", getScenario());
        chromeOptions.setCapability("cloud:options", cloudOptions);

        setProperty(silentLog, "true");
        return exceptionHandler(() -> {
          var driver = new RemoteWebDriver(new URL('http://localhost:4444/wd/hub'), chromeOptions);
          driver.setFileDetector(new LocalFileDetector());
          return driver;
        });
    };

@ashwink-tech what's inside Selenoid logs? What's inside browser container logs?

@vania-pooh Thanks for your quick reply.
Following are the browser container logs
2023/03/13 13:21:57 [INIT] [Listening on :7070]
19
Waiting X server...
Waiting X server...
Logging to: /dev/null
Waiting X server...
Waiting X server...
Waiting X server...
Waiting X server...
Waiting X server...
Starting ChromeDriver 110.0.5481.77 (65ed616c6e8ee3fe0ad64fe83796c020644d42af-refs/branch-heads/5481@{#839}) on port 4444
All remote connections are allowed. Use an allowlist instead!
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.

Hi @vania-pooh,
Yup but the above-mentioned error is thrown and sessions are not get created.
Any clue how to go about this issue?

@ashwink-tech probably you are just overloading your Selenoid instance.

@vania-pooh It's just one thread. The same code works for Selenium version 4.1.1 and below. It should have failed for other Selenium versions as well right?

@vania-pooh Same issue with the latest Selenoid release 1.10.10 as well.


Infer types based off of the abi.json directly

ABI type inference
This issue's development is ongoing and it serves a dual purpose now:

To act as a task tracker for all the features necessary to exist before we can merge it into master
To contain the initial description of the task

The corresponding feature branch into which all changes are merged is feat/abi-type-inference.
Tasks

[ ] Write the base type inference functionality and apply it to function inputs #1114
[ ] Implement type inference for configurables
[ ] Implement type inference for predicates
[ ] Implement type inference for scripts
[ ] Implement type inference for contracts
[ ] Implement the CLI tool for generating contracts, scripts and predicates

Motivation
The current abi-typegen implementation does per-abi on-disk file generation. It generates a factory and a declarations file per abi, as well as a shared common.d.ts file.
The proposal is to infer types based off of the abi files directly. Given that the abi files contain everything necessary to define a sway program and they are .json files, we can, in the ideal case, import them directly into our code as .json files and not have the need for abi-typegen altogether (pending the implementation of this typescript feature request), or we can reduce abi-typegen's functionality to just copying over the abis, changing their extension to .ts and assigning them to an object as const, and then creating a fuelFactory.ts file where they all would be imported and passed to an instance of a generic FuelFactory class that would then be able to call all of the programs and would be fully typesafe based solely off of type inference.
Usage examples
What is possible to implement now
Implementation details aside, the end result, after running fuels typegen could possibly look like this:
import { counterContractAbi } from './abis/counterContractAbi'
import { FuelFactory } from 'fuels'

const factory = new FuelFactory([{programName: "counterContract", ...counterContractAbi} as const]);

// typesafe contract names
const counterContract = factory.programs("counterContract").connect(CONTRACT_ID, wallet);

// typesafe function names and whatever else you wish for
const count = counterContract.count().txParams({gasPrice: 1}).call();

The const assertions in the FuelFactory constructor are necessary for the narrowing of inference from i.e. {name: string} to {name: "count"} and for the whole thing to work.
What would be possible if TS issue 32063 was implemented
The process would be so straightforward that there wouldn't be any need for abi-typegen at all.
import counterContractAbi  from './abis/counterContractAbi.json' as const;

const factory = new FuelFactory([{programName: "counter", ...counterContractAbi} as const]);

// ... as in first example

The difference between the first and second example is that in the first example we're importing from a counterContractAbi.ts file which looks like this:
export const counterContractAbi = {...abi-stuff...} as const;

Whereas the second example is importing the counterContractAbi.json file directly and has the as const assertion on the import.
Although the first example could also be done without abi-typegen, it seems to me that it might be burdensome for some developers to think about changing extensions, assigning the abis to variables and adding as const at the end of them - so much so that it justifies having a tool for it.
However, after the mentioned TypeScript feature gets implement, I think the process would be so straightforward and intuitive that a simple example in our documentation would be enough and the abi-typegen package wouldn't be necessary anymore.
Implementation details
In essence, what would be done is something this:
type NamedJsonFlatAbi = { programName: string } & JsonFlatAbi;
type TupleToUnion<T> = T extends Array<infer ITEMS> ? ITEMS : never;
type Filter<T, Condition> = T extends Condition ? T : never;

class FuelFactory<TAbisArray extends NamedJsonFlatAbi[] = NamedJsonFlatAbi[], TAbis = TupleToUnion<TAbisArray>> {

    #abis:TAbisArray;

    constructor(...abis: TAbisArray) {
        this.#abis = abis;
    }

    programs<ProgramName extends TAbis["programName"],
    SelectedProgramAbi = Filter<TAbis, {programName: ProgramName}>
    >(programName: ProgramName, id, wallet): Contract<SelectedProgramAbi> {
        const abi = #abis.find(a => a.contractName === contractName);

        return new Contract<SelectedProgramAbi>(id, abi, wallet);
    }
}

Now, based off of the inferred SelectedProgramAbi type passed into Contract<SelectedProgramAbi>, all other properties of the contract (functions, multicall, etc.) can be inferred to the narrowest type possible.
Note: currently all three types of sway programs get typegen-ed into a Contract, and that is why the method programs is returning Contract.
So, from what it looks like, the only thing that would change on existing infrastructure are the types going in/being returned from our classes. The implementation would ideally stay the same in the first step, and the new top-level FuelFactory abstraction would later on enable better cohesion and coupling between code that is currently possibly hard to connect in an appropriate way.

in the past I worked on a PoC for this https://gist.github.com/luizstacio/b33b62c6c84375081f37ac563a6f6a20

Love this idea @nedsalk. You can also have a look at abitype by wagmi which does something similar for Ethereum ABIs. Maybe you can take some inspiration from there too, in terms of design choices.

Hey @Nedim Salkic, thanks for putting this together.
I believe we should only put effort into this if we could infer everything from the ABI Json (example) and drop the Typegen package altogether, including any need for a CLI or pre-build step. In this direction, and to minimize risks, we should avoid introducing breaking changes while keeping a reliable unit testing strategy (which can be challenging when dealing with type helpers). That's all to say, such a move seems very delicate and must be carefully considered.

Here we have a nested ref. as well, in case you didn't see it yet:

/abi-typegen/test/fixtures/forc-projects/struct-nested/src/main.sw

Let's not mix the addition of a possible FuelFactory facade with the purposes of type inference. There's a lot of complexity in play already; we should reduce the scope instead of expanding it.
Also, given the reach of everything in this issue, please try assigning points to each listed task. You can also break them into smaller ones if it makes them more assertive.


#818 Explanations for certain R and package version choices.

Close #818
Thank you for your Pull Request! We have developed this task checklist from the Development Process Guide to help with the final steps of the process. Completing the below tasks helps to ensure our reviewers can maximize their time on your code as well as making sure the admiral codebase remains robust and consistent.
Please check off each taskbox as an acknowledgment that you completed the task or check off that it is not relevant to your Pull Request. This checklist is part of the Github Action workflows and the Pull Request will not be merged into the devel branch until you have checked off each task.

[x] Code is formatted according to the tidyverse style guide
[x] Updated relevant unit tests or have written new unit tests - See Unit Test Guide
[x] If you removed/replaced any function and/or function parameters, did you fully follow the deprecation guidance?
[x] Update to all relevant roxygen headers and examples
[x] Run devtools::document() so all .Rd files in the man folder and the NAMESPACE file in the project root are updated appropriately
[x] Address any updates needed for vignettes and/or templates
[x] Update NEWS.md
[x] Build admiral site pkgdown::build_site() and check that all affected examples are displayed correctly and that all new functions occur on the "Reference" page.
[x] Address or fix all lintr warnings and errors - lintr::lint_package()
[x] Run R CMD check locally and address all errors and warnings - devtools::check()
[x] Link the issue so that it closes after successful merging.
[x] Address all merge conflicts and resolve appropriately
[x] Pat yourself on the back for a job well done!  Much love to your accomplishment!

@pharmaverse/admiral
Hi everyone.  Through some past discussion I threw together some guidance on why we develop with a certain R version and certain package versions.
In need of a reviewer or two as I think it is a hot topic!

Thanks Thomas - Merging into devel


http-response-line/v1: add unittests

Includes test for DetectHttpResponseLineTest02
Link to redmine ticket: https://redmine.openinfosecfoundation.org/issues/4911

Corresponding Suricata PR: OISF/suricata#6868

Followed by: #681


Skip swapchain logic if there is nothing to present (Android OpenXR)

When we are running XR in standalone mode (e.g. OpenXR on Android such as Quest, Lynx, ML2, etc) output to screen is handled by OpenXR however Godot still creates and attempts to display it's build in swapchain for normal output. This is causing a bundle of issues from warnings being spammed (suboptimal swapchain), outright failures (device lost), to simply an empty swapchain overwriting whatever was rendered to screen by OpenXR.
This PR solves that issue by having Godot skip it's normal output if nothing is being blit to screen (e.g. there is no output because the output has been redirected).
Testing so far has removed the issues I was having on Quest Pro, awaiting feedback to see if this solves more serious issues on Quest 3 and ML2. It also shaved 1ms of overhead per frame.
For GLES3 I had to introduce a proper end_viewport to get the logic to work correctly.
Test project:
https://www.dropbox.com/scl/fi/htl04po1ylfex3k64e1c9/TestXRv2.zip?rlkey=l7t9nmpwtlt44o5ogbib3xr8w&dl=0
(requires android build templates to be compiled and installed)
Fixes #74963

This may make #74754 unnecessary

Tested on Quest 3. Both debug and release templates are working with your test case.

Just some extra info here for reviewers and the production team.
This was always an annoyance on Quest 2 and Pro, but on Quest 3 without this fix you can't run a Vulkan game. So far the feedback I've had is that compatibility works fine. I should be able to test this myself soon and add some extra feedback.

Would be good to hear from someone with a Quest 3 about whether this fixes the issue we are having there.

I've had feedback from several users on the XR discord that it does, but they don't tent to come here on github.

Note for merging: this should be merged after https://github.com/godotengine/godot/pull/83452. Bastiaan has some small fixups related to this PR to make it work well with the RDD changes. It makes sense to do those fixups directly on this PR after merging https://github.com/godotengine/godot/pull/83452

Note for merging: this should be merged after #83452. Bastiaan has some small fixups related to this PR to make it work well with the RDD changes. It makes sense to do those fixups directly on this PR after merging #83452

If this is wanted for 4.2 and 4.1 cherrypicks, a dedicated PR with the current version would likely need to be made against the 4.2 branch then, as we won't be able to cherry-pick the change after it has been rebased on top of RDD.

If this issue really is preventing Quest 3 from using Vulkan (I have a Quest 3 - I'll try to test this when I have a chance :-)), then I think we really should try to get a version of this PR cherry-picked into 4.2. Most folks deploying to Quest are using the compatibility renderer (myself included), but having Vulkan supported on Quest 1, Quest 2, Quest Pro, but not Quest 3, would be unfortunate.

Hm, I'm not entirely sure how to trigger the Quest 3 issue. Using Godot 4.2-stable (so without this PR), I tried switching one of my projects from gl_compatibility to mobile, and I ran it 3 times on the Quest 3 (only playing for about 20-30 seconds each time) and everything seemed to work fine. And there were no messages in the log like those described in issue https://github.com/godotengine/godot/issues/74963
Is this something that only happens some percentage of the time? Or, only after the app runs for awhile? Or, maybe it depends on certain setup from your test project?
Anyway, I'm happy to try testing again, but I'm not sure I fully understand what the critical Quest 3 issue is :-/

Anyway, I'm happy to try testing again, but I'm not sure I fully understand what the critical Quest 3 issue is :-/

Weird, it's pretty consistent for me. Interestingly enough @RandomShaper PR does prevent the crash as well, but the error spam remains a problem. Or maybe another fix snuck in since I last tested this that prevents the crash.
All in all it's still a good fix as we're never presenting this swapchain, there is extra overhead we're removing, both memory wise and performance wise.

I assume this still needs a rebase?

I assume this still needs a rebase?

It did since Pedros PR was merged :) should be all good now

There's a warning/error with MSVC:
.\drivers/d3d12/d3d12_context.h(235): error C3668: 'D3D12Context::flush': method with override specifier 'override' did not override any base class methods
.\drivers/d3d12/d3d12_context.h(235): error C3668: 'D3D12Context::flush': method with override specifier 'override' did not override any base class methods
.\drivers/d3d12/d3d12_context.h(235): error C3668: 'D3D12Context::flush': method with override specifier 'override' did not override any base class methods

scons: *** [platform\windows\godot_windows.windows.editor.x86_64.obj] Error 2
Error: platform\windows\display_server_windows.cpp(4663): error C2259: 'D3D12Context': cannot instantiate abstract class
.\drivers/d3d12/d3d12_context.h(68): note: see declaration of 'D3D12Context'
platform\windows\display_server_windows.cpp(4663): note: due to following members:
platform\windows\display_server_windows.cpp(4663): note: 'void ApiContextRD::flush(bool,bool,bool)': is abstract
.\servers/rendering/renderer_rd/api_context_rd.h(61): note: see declaration of 'ApiContextRD::flush'

This is because that class hasn't been updated and the override has just two arguments instead of three

There's a warning/error with MSVC:
.\drivers/d3d12/d3d12_context.h(235): error C3668: 'D3D12Context::flush': method with override specifier 'override' did not override any base class methods
.\drivers/d3d12/d3d12_context.h(235): error C3668: 'D3D12Context::flush': method with override specifier 'override' did not override any base class methods
.\drivers/d3d12/d3d12_context.h(235): error C3668: 'D3D12Context::flush': method with override specifier 'override' did not override any base class methods

scons: *** [platform\windows\godot_windows.windows.editor.x86_64.obj] Error 2
Error: platform\windows\display_server_windows.cpp(4663): error C2259: 'D3D12Context': cannot instantiate abstract class
.\drivers/d3d12/d3d12_context.h(68): note: see declaration of 'D3D12Context'
platform\windows\display_server_windows.cpp(4663): note: due to following members:
platform\windows\display_server_windows.cpp(4663): note: 'void ApiContextRD::flush(bool,bool,bool)': is abstract
.\servers/rendering/renderer_rd/api_context_rd.h(61): note: see declaration of 'ApiContextRD::flush'

Oops, forgot about that. Added the property but didn't do anything with this. The scenario where this would be set to false really only happens on Android (and possibly iOS/VisionPro some day) so there doesn't need to be a DX12 implementation. @RandomShaper I'm guessing we could skip the _wait_for_idle_queue if p_sync is false just in case? But it feels risky to me as there is no way to test the behaviour.

If there's no expectation it will be called with false, we can even just ERR_FAIL_COND it as not implemented.

If there's no expectation it will be called with false, we can even just ERR_FAIL_COND it as not implemented.

Done!

Thanks!

This PR is not cherry-pickable because it's based on the codebase after https://github.com/godotengine/godot/pull/83452 (and D3D12). A separate PR needs to be made for the 4.2 branch.


Bugs about VM metrics

What happened?
I saw kepler support to capture vm process metrics. I tried it and met so many bugs, I don't know how it can the pass the CI successfully....

not mount the /var/run/libvirt, which means it is impossible for kepler to obtain vm information on the host.
path join error https://github.com/sustainable-computing-io/kepler/blob/8c8dab40d82fcc952f2c00651c87470c7d868dfa/pkg/libvirt/resolve_vm.go#L35

I1017 02:22:25.436020       1 resolve_vm.go:41] fullPath: /proc/%s/task/proc/%s/task

not exclude libvirt driver.pid
https://github.com/sustainable-computing-io/kepler/blob/8c8dab40d82fcc952f2c00651c87470c7d868dfa/pkg/libvirt/resolve_vm.go#L70

.....
I can help to fix these bugs, but I found this part of the code will be refactored in the near feature.
@aharivel @marceloamaral Any update https://github.com/sustainable-computing-io/kepler/pull/931?
What did you expect to happen?
None
How can we reproduce it (as minimally and precisely as possible)?
None
Anything else we need to know?
No response
Kepler image tag

Kubernetes version

$ kubectl version
# paste output here

 None
Cloud provider or bare metal

 None
OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Install tools

Kepler deployment config

For on kubernetes:
$ KEPLER_NAMESPACE=kepler

# provide kepler configmap
$ kubectl get configmap kepler-cfm -n ${KEPLER_NAMESPACE}
# paste output here

# provide kepler deployment description
$ kubectl describe deployment kepler-exporter -n ${KEPLER_NAMESPACE}

For standalone:
put your Kepler command argument here

Container runtime (CRI) and version (if applicable)

Related plugins (CNI, CSI, ...) and versions (if applicable)

Hi @LeiZhou-97 ,
Did you try it by installing Kepler via the RPM ?
If not you may encounter problem with path that are absolute to the Host compute.
Is driver.pid process of Libvirt not consuming any power ? if so, I guess it has to be reported.
The refactoring code will happen as soon as possible but is not yet started.

Hi @aharivel,
Thanks for the response.

No, I deploy kepler by manifests. I tried to mount /var/run/libvirt and /proc manually, it still has a bug. This seems to be caused by a problem with your code logic.

        if procPath != "" {
                // extraPath=/proc/%s/task; procPath=/proc/%s/task
		fullPath = filepath.Join(extraPath, procPath)
	} else {
		fullPath = procPath
	}

I agree with you that the power of driver process should be reported, but I just mean driver.pid should not be included in the vm metrics.

I can fix these bugs or fix them yourself, but I don't know if the code will be refactored soon, so these fixes will be meaningless.

If you have an easy / quick fix for the problem you describe in 1. then you can submitted a bug fix. Otherwise I'll try to fix it next week.
About 2. I imagined that if a user want to know how the consumption of everything related to VM is, it has to include the VM-1+ VM-2+ ... + driver. Then to do so it is easier to already have the driver process in the VM metrics. It is just a question of filtering the name. Maybe the naming is bad then ? "driver" should be "libivrt" ?
The refactorisation will happen not before next month and maybe more end of next month. If there are any easy/quick fix that prevent people not to fall into your bug during that time I think that worth doing it.

@LeiZhou-97, I am currently in the process of refactoring the code. However, as pointed out by @aharivel, it might be good to consider implementing some quick fixes.
In relation to the VM libivrt process, the refactoring will aggregate all processes within the VM cgroup, including not only the ibvirt but also any other processes associated with the VM itself.

@marceloamaral looking forward to your re-factorization !
I planned to do so next month after my current work on QEMU but I will just wait on your patch and see.
I might propose a patch to add a vCPU field in the VM metrics for better visibility of the workload threads.
Some fields like Telco uses CPU pinning / isolation for specific heavy task and it could be interesting to be able to filter it easily in Grafana to monitor the power consumption.


[BE-104] Fix pipeline examples

Currently, quite a few of the examples are failing. This PR fixes these. I'm not too familiar with all the expected behaviour of this library so any help here would be greatly appreciated.

Thanks @alexpearce for reviewing. I've done a bit more cleanup:

I've deleted the old examples that we don't want to support currently
I've combined examples/api_usage.py and examples/api_pipeline_run.py and deleted the latter, since there was a lot of overlap between the two and I think just having one clear example is better
I've applied some changes based on your feedback (API tokens + try/except handling)

I guess some (all?) of these require access to the API, otherwise it would be nice to automate the testing of these to avoid them drifting away from the spec in the future.
Most, but not all, required API access. We could still add some tests by mocking parts of the API client. Let me know if you'd like me to do this or not.

sorry @alexpearce, I needed to bump the version in pyproject.toml


Open new window in same working directory as old one

Use case
Since I use a tiling window manager (the one in Pop!_OS), I open new windows instead of tabs or panes.
It would be great to have the equivalent of #38 for new windows also (at least as an option).

The current Qt based version has a "move tab to new window" command in the command palette which will should get you most of the way now.


test added for GET/api/users

What does this pull request aim to achieve? 💯
Added test for GET/api/users
Please be concise and link any related issue(s):

[x] I have checked that no one else is working on similar changes.
[x] I have read the latest README and understand the development workflow.
[x] The name of this branch is: feature/<branch_name>, or hotfix/<branch_name> if this is a hotfix, where <branch_name> briefly describes the issue(s) resolved and is prefixed with the issue number(s) (e.g. 1127-1130-update-git-branching-model). The branch is created in a cloned version of this repo, not a forked repo.
[x] This branch is rebased/merged with the latest staging (or the latest production if it is a hotfix).
[x] There are no merge conflicts.
[x] There are no console warnings and errors.
[x] On the right hand side of this PR, I have linked the appropriate issue(s) under "Issues" and added a project progress under "Projects".
[x] The title describes the issue(s) being addressed using format: <issue_numbers> - <brief_issue_description> (e.g. #1127/#1130 - Update Git Branching Model)

LGTM. TY

LGTM. TY

LGTM. TY @JayashreeSamantasinghar

LGTM. TY @JayashreeSamantasinghar

Thanks Everyone !! @galeza ,can you please merge this PR if you have access.

Thanks Everyone !! @galeza ,can you please merge this PR if you have access.


Remove node-github module on NPM to avoid confusion

https://www.npmjs.org/package/node-github

+1

@mikedeboer Would it be ok/possible to take down the node-github package?

I don't have the ability to remove the node-github package myself but I think adding a note to the top of the README is the next best option.


Stop spawning remote creeps for remotes that are enemy reserved

To clarify, the spawning of remoteCoreAttackers and remoteDefenders should not be limited

All needs are set to 0 by default, now, in theory. Only if conditional applicable does their value gets increased. The logic of the plan to send Antifa to enemy-owned rooms and edge cases for the reservation part is still missing.
Most code hasn't changed. Rather restructured to check for enemy influence over the room, first, and if it isn't owned and reserved by an enemy, and no enemies are present, harvesters, haulers, dismantlers, and reservers get sent to the room.
The check for if the room is undefined was rather deep down. If that had a reason. Please let me know.
TODO:

[x] Stop spawning remote creeps for remotes that are enemy reserved
[ ] Add further logic to enemy reserved rooms
[ ] Potential rework, restructuring, and refactoring, once changes are discussed in the Discord Server
[ ] Testing & Debugging


Repro for #1295

This PR reproduce error with ARM Template Language Server.
Upon opening the workspace the template server gets stuck in a loop.

Found and mapped a matching parameter file: "file:///workspaces/azure-quickstart-templates/application-workloads/apache/apache2-on-ubuntu-vm/azuredeploy.json" -> "/workspaces/azure-quickstart-templates/application-workloads/apache/apache2-on-ubuntu-vm/azuredeploy.parameters.json"
Using dotnet core executable at /home/vscode/.vscode-remote/data/User/globalStorage/ms-dotnettools.vscode-dotnet-runtime/.dotnet/6.0.4/dotnet
Starting ARM Template Language Server at /home/vscode/.vscode-remote/extensions/msazurermtools.azurerm-vscode-tools-0.15.6/languageServer/Microsoft.ArmLanguageServer.dll
Language server nuget version: 3.0.0-preview.22111.2
Client options:
{
  "documentSelector": [
    {
      "language": "arm-template",
      "scheme": "file"
    },
    {
      "language": "arm-template",
      "scheme": "untitled"
    }
  ],
  "diagnosticCollectionName": "ARM Template Language Server diagnostics",
  "outputChannel": {
    "name": "Azure Resource Manager Tools",
    "extensionPrefix": "azureResourceManagerTools",
    "_outputChannel": {
      "name": "Azure Resource Manager Tools"
    }
  },
  "revealOutputChannelOn": 3,
  "synchronize": {
    "configurationSection": "azureResourceManagerTools"
  },
  "middleware": {}
}
Server options:
{
  "run": {
    "command": "/home/vscode/.vscode-remote/data/User/globalStorage/ms-dotnettools.vscode-dotnet-runtime/.dotnet/6.0.4/dotnet",
    "args": [
      "/home/vscode/.vscode-remote/extensions/msazurermtools.azurerm-vscode-tools-0.15.6/languageServer/Microsoft.ArmLanguageServer.dll",
      "--logLevel",
      "Warning"
    ],
    "options": {
      "shell": false
    }
  },
  "debug": {
    "command": "/home/vscode/.vscode-remote/data/User/globalStorage/ms-dotnettools.vscode-dotnet-runtime/.dotnet/6.0.4/dotnet",
    "args": [
      "/home/vscode/.vscode-remote/extensions/msazurermtools.azurerm-vscode-tools-0.15.6/languageServer/Microsoft.ArmLanguageServer.dll",
      "--logLevel",
      "Warning"
    ],
    "options": {
      "shell": false
    }
  }
}
Error: The connection to the ARM Template Language Server got closed.
[Info  - 5:07:54 PM] Connection to server got closed. Server will restart.
Error: The connection to the ARM Template Language Server got closed.
[Info  - 5:08:46 PM] Connection to server got closed. Server will restart.

This PR should not be merged until the issues with ARM Template Language Server starting are reproduced and resolved.

Just got back from vacation, this is on my list.


Clearer error message when using concatenate_cube on multi-variable cubes list

🚀 Pull Request
Description
This pull request addresses issue #4342: cube method concatenate_cube() can produce confusing error messages, reporting that var1 != var1 when a user (erroneously) attempts to concatenate a multi-variable cube list consisting of, e.g., multiple time steps of var1 and var2  with cubes = [var1, var1, var2, ...].
The reason for this behaviour is that the error message in the method quotes the first two elements of list names, which can be identical in the above scenario. This pull request replaces names with list unique_names when generating the error message - the latter list is used as a criterion for concatenate_cube() to reject concatenation, and it is guaranteed to produce non-identical variable names.  This should give the user better feedback on why concatenation failed.
It should not be necessary to handle the cases of length-zero or length-1 list, since len(unique_names) should always be >=2, given that the method will fail earlier on an empty cube list, and it will accept length 1 for concatenation.

Consult Iris pull request check list

Note that I just signed the SciTools CLA.

Hi @tinyendian, thanks for your contribution!
We have some unit tests that check concatenate throws the right error in various circumstances.  Would you be happy to add a test there to cover the case you've highlighted?
Also, so that we can advertise your contribution in the next release, could you add an entry under "Bugs Fixed" in the whatsnew/latest.rst file?  There is guidance about writing a "whatsnew" entry here.
Do let us know if any of this isn't clear, or if you need help with anything.

Sorry, I just realised I pointed to the wrong set of tests in my last comment 🤦♀.  The "names differ" error is raised within CubeList.concatenate_cube() itself, so a test to cover this case would need to be added to this class.

Hi @rcomer, I added a unit test that replicates the multi-variable scenario mentioned in the issue and checks the error message, as well as a "whatsnew" entry in the list of bug fixes. I hope that both match the required styles.
The doctests and link check are failing with error message "Unknown target name: "@tinyendian", does my GitHub name need to be added somewhere?

"Unknown target name: "@tinyendian", does my GitHub name need to be added somewhere?

Correct!
https://github.com/SciTools/iris/blob/a07e20dd88f0d8367c908cba986d413869cdc50f/docs/src/whatsnew/latest.rst#L145-L149
See here for a populated example from v3.1:
https://github.com/SciTools/iris/blob/b15386e49d7e9597f69adf870481d7cee579fa9e/docs/src/whatsnew/3.1.rst#L300-L305

Thanks, @rcomer, working on it...

Awesome - thanks @tinyendian!

Thanks for your help getting this over the line, @rcomer and @trexfeathers!


[ios] ios support prerender

[ios] ios support prerender

Can you give us a example that how to use this feature?


Update contacts enpoint

Added address phone as system attributes.
The problem with address is however that AgileCRM expects it to be json string such as
"{\"address\":\"asdasd\",\"city\":\"e\",\"state\":\"f\",\"zip\":\"g\",\"country\":\"AF\"}"

That is. in json returned by AgileCMR, address field looks like:
{
    "name": "address",
    "subtype": "home",
    "type": "SYSTEM",
    "value": "{\"address\":\"asdasd\",\"city\":\"e\",\"state\":\"f\",\"zip\":\"g\",\"country\":\"AF\"}"
}

@graudeejs Much appreciated!


Remove a duplicate runAsNonRoot from the UI Deployment

It looks like we don't need this one in the ui-deployment template, since it's in the default values here:
https://github.com/polarislabs/sk8l-api/blob/9026d11336cb658bea35a6d020012b181de547ac/charts/sk8l/values.yaml#L130
Closes #16

Hey dbirks! Indeed I forgot to remove that line. Thank you for taking the time to look at it and come up with the fix! 👍

Chart v0.10.1 with the bug fix is up!
https://artifacthub.io/packages/helm/sk8l/sk8l/0.10.1
https://artifacthub.io/packages/helm/sk8l/sk8l/0.10.1?modal=template&template=ClusterRole.yaml&compare-to=0.10.0

Awesome, thanks!


Blacksreen, but can still click on the left tap

Please check if your issue is not a duplicate by searching existing issues
Describe the bug
When i write something where i have used shift, like to make a big letter or !"#¤%&/() or something like that, it goes black after i press enter, and sometimes even before
To Reproduce
Steps to reproduce the behavior:

Write something with shift, like a big letter or a sign
press enter
Screen goes black

Expected behavior
I just wanted to write a a letter or capsed a word
Screenshots

Environment (please complete the following information):
Windows 10

its the newest version (downloaded it yesterday, but cant find where it says version)
Launcher version: [e.g 1.5.2] (cant find where it says launcher version)

Additional context
Add any other context about the problem here, e.g. logs. Your client logs can usually be found in
C:\Users\<your_user_name>\.runelite\logs on Windows and ~/.runelite/logs on Linux and macOS.

If you are still able to reproduce this, could you please post your logs as instructed in the Additional context section?

As this has not received any new information in many months, I am closing this issue. Please re-open it if you have further information on this problem.


yarn bin

Hey,
great docker images, any chance to fix the yarn bin?
yarn
sh: 1: yarn: not found
seems like its inside /root/.yarn/bin/yarn for some reason

Hi @danijelk
Thank you for notifying me of this error.
I've submitted a fix for this error.


Revisiting TODOs

Remove the unreferenced DynamicResourceInfo function
Remove the // TODO remove this hack. This is allowing the GetOptions to be serialized. since that's required for the REST client to talk to the apiserver

/retest