Investigate what causes the API to hang upon redeployment

The ingest-api container still runs upon restart but it doesn't response in the first 30 seconds or longer, thus causing the monitoring reporting downtime. It was not like this until after the data ingest board caching as I remember. As the data keeps growing, I anticipate this will become a more obvious issue.
Would it be a good idea if we move the scheduler caching calls inside the /datasets/data-status endpoint and /uploads/data-status endpoint? So we cache data upon the first request if not existing, then use the cached version for subsequent requests?

From @DerekFurstPitt:

I reckon its not the caching itself that causes the slowdown/downtime, but the generation of the data in the first place. Basically this is what happens:
Server begins:
Scheduler objected created.
Scheduler started
Add jobs to scheduler (The job is generate the dashboard info, and then update it to the cache all in the same function)
Run the function one time when the server starts (so the data will be there right away).
Then once per hour, generate the dashboard info again and update to the cache. If for whatever reason the info is failed to be generated, it leaves the cache alone and keeps supplying the last functioning data in the cache (per Bill's request)
When someone hits the endpoints /datasets/data-status or uploads/data-status all it does is checks the cache, if the cache present, it returns what's in the cache. if the cache isn't present (which should only ever happen if there's an error), it generates the dashboard info fresh and returns it.
This was done this way with the cache that refreshes every hour rather than putting an expiration on the cache and waiting for someone to hit the endpoint is because we don't want anybody to ever go to the website and have to wait 15 seconds for the data to refresh. There were quite a few discussions on how the cache is supposed to behave and this is what we landed on.
Per your suggestion, say we move the scheduler caching calls inside /datasets/data-status. We would still be initially calling the function that generates the data and updates the cache once when the server starts. Say we remove that initial call and ONLY use the scheduler: the scheduler is set for 1 hour, so after the endpoint were hit, it wouldn't run for an hour. We need the initial call, so its either run the initial call at the very beginning, or wait until someone tries to access the site. All we've done then is change the load time from occurring when someone is probably NOT going to be affected (when the container first starts) and moved it to when it will most certainly affect people (right when they're trying to hit the endpoint).
But more importantly, if we move the call that generates the ingest board data and updates the cache within the endpoint, that will mean it runs every single time someone hits the endpoint, which is what we didn't want to happen. Say someone doesn't hit that endpoint for 2 days, then the first person to access the website will either get 2 day old information (and initiate the data to update behind the scenes) or we make them wait while the data gets generated which is undesirable).
So I'm all for trying to make this process happen in the back-ground in a non-interrupting way that doesn't cause the monitor to show downtime, I don't think moving the scheduler inside of the endpoint will accomplish what we're trying to do. I'm also not sure how it would work if every time the endpoint is hit, a new scheduler object is made.

I think I know what the problem is. And I don't think its actually because the data being generated takes too much resources. Let me explain.
this is the end of app.py

[1]    scheduler = BackgroundScheduler()
[2]    scheduler.start()
[3]
[4]
[5]    scheduler.add_job(
[6]        func=update_datasets_datastatus,
[7]        trigger=IntervalTrigger(hours=1),
[8]        id='update_dataset_data_status',
[9]        name="Update Dataset Data Status Job"
[10]    )
[11]
[12]    scheduler.add_job(
[13]        func=update_uploads_datastatus,
[14]        trigger=IntervalTrigger(hours=1),
[15]        id='update_upload_data_status',
[16]        name="Update Upload Data Status Job"
[17]    )
[18]
[19]    update_datasets_datastatus()
[20]    update_uploads_datastatus()
[21]
[22]    # For local development/testing
[23]    if __name__ == '__main__':
[24]        try:
[25]            parser = argparse.ArgumentParser()
[26]            parser.add_argument("-p", "--port")
[27]            args = parser.parse_args()
[28]            port = 8484
[29]            if args.port:
[30]                port = int(args.port)
[31]            app.run(port=port, host='<IP_ADDRESS>')
[32]        finally:
[33]            pass

Pay attention to lines 19 and 20. In addition to the scheduled 1 hour calls, there's these 2 initial calls that occur before the flask app is even run. This was done to make sure that the ingest-board wasn't inaccessible for a full hour after the container restarts. The scheduled calls actually already happen in the background, I don't need to mess around with threading. Its handled by the scheduling library. The reason we don't experience downtime every hour is because those scheduled calls are working as intended. Its only the initial calls that are the problem because they are not in the background. Meaning these 2 calls are blocking the flask app from starting until they've completed.
Its not a performance issue. In my testing just now, I moved lines 19 and 20 to instead occur at line 33 (in the finally block). I added time.sleep(120) to update_datasets_datastatus just to test and make sure, and the flask server is able to handle calls no problem right after starting now. Better yet, even the /datasets/data-status endpoint still works despite the update function taking an extra 2 minutes because of my sleep statements because its still able to pull from the existing redis server (which I believe is in a separate containe).
This should fix all of the issues we're experiencing


App crashes on calling  notifyExpandableDataSetChanged(); for a new Item when added

Please help , I am unable to fix the issue past 5 days and in lot of pressure . Please any and all help highly appreciated .

@shrinijaiswal, I'll likely need a bit more information to look into that issue.
Although this repo hasn't been maintained for about 2 years
May be more sustainable to look into https://github.com/thoughtbot/expandable-recycler-view for similar functionality, or https://github.com/lisawray/groupie as well.


Invalid agreement URL?

Command

Output Log:

using server https://acme-v01.api.letsencrypt.org/
trying to create new registration
error:
**urn:acme:error:malformed**
Provided agreement URL [https://letsencrypt.org/documents/LE-SA-v1.0.1-July-27-2015.pdf] does not match current agreement URL [https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf]

Run including the new agreement url.
eg acme.exe -t https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf -a example.com -m<EMAIL_ADDRESS>


Unicode support.

@XzaR90 thansk for the PR. But the method ReadSection doesn't supports unicode. It was implemented based on Encoding.ASCII. Can you fix it?


Check later on @nuxt/pwa

currently there is no official pwa modules for nuxt3/bridge, for temporary using this kevinmarrec/nuxt-pwa-module

let's check on @nuxt/pwa module later

https://github.com/nuxt-community/pwa-module

Originally posted by @yangwao in https://github.com/kodadot/nft-gallery/issues/4713#issuecomment-1383905551

Do we have PWA now?

Do we have PWA now?

yessir, @vite-pwa/nuxt module is installed but no "refresh content" modal

package installed, maybe need configuration, <ClientOnly> and pwa card ($pwa?.offlineReady || $pwa?.needRefresh)


New Theme: Liva

Theme submission
Please make sure that you have read the theme submission guidelines before submitting a theme. The guidelines provide all relevant information and requirements that have to be fulfilled before the submission. Please tick the relevant boxes for your theme in the checklist below:
Link to my theme repository: https://github.com/themefisher/liva-hugo
I made sure that...

[x] the repository contains a good README.md describing my theme
[x] an open source license has been added to LICENSE.md
[x] all metadata have been added to theme.toml
[x] screenshots have been added in the images/ folder with the required dimensions
[x] in case I'm using a customized demo via the exampleSite folder that

[x] https://example.com is set as base url in exampleSite/config.{toml, yaml, json} to avoid the abuse of unused domains
[x] I tested that my theme's demo works with the content directory of gohugoio/HugoBasicExample

[x] I tested my theme against the gohugoio/HugoBasicExample

[x] I've checked the developer tools' console in my browser for error messages

[x] in case my theme is using Hugo Pipes features like toCSS and PostCSS that I have committed the /resources directory with all generated assets, for my theme to work in the basic version of Hugo

N.B. By submitting a theme to the Hugo Themes Showcase you understand that you need to maintain your theme. You will need to keep an eye on whether your theme's demo generates on the Hugo website, whenever there is a new release. We are a very small team and we just cannot keep up opening issues in the various theme repositories to notify authors. Whenever a theme demo breaks and remains broken then at some point it will be removed from the list without prior warning. If you no longer wish to maintain a theme please let us know.
Feel free to ask questions. We're glad to help.

Hello again @Somrat37
Thank you for the theme submission. I tested your theme with the Hugo Themes Build Script and its demo generates fine.
However since Hugo uses semver versioning please change line 8 of theme.toml to:
min_version = "0.58.0"
Also we no longer accept third party tracking on the Hugo Themes website and you need to remove the Disqus username from line 8 of exampleSite/config.toml
Once you do the above please let me know.

@onedrawingperday ,
Thanks for your feedback, I fixed this issue.

@Somrat37
Everything looks fine on my end.
Once the tests for pull request #744 succeed, I will add the theme to the Hugo website.

@digitalcraftsman
This is a fully featured blog theme.

I've promoted your theme on Hugo's official Twitter account.


BUILD: create needed folder structure

The folder structure we want looks something like this:

root folder

Builds

GameName-1.0.0
Zips

(Creating a zipped folder out of that and placing it in the zips folder will come later)
Steps needed

[ ] Create  root folder/Builds if it does not exist
[ ] Generate a file name
[ ] Handle the case where there is an existing file or folder named that (see questions below)
[ ] Create the new folder for that file name
[ ] Create a Zips subfolder within the empty folder.
[ ] Create a zip of that (currently empty) folder in the Zips folder (note: can wait til #4 if wanted)

Questions to figure out here:

does the above folder structure and file naming convention look ok?
what do we want to happen if there already exists a file at root folder/Builds/Zips/GameName-x.x.x.exe and/or a folder at root folder/Builds/GameName-x.x.x?

Overwrite the folder?
Create a new folder called GameName-x.x.x (1) or whatever?
whichever we choose - should the command line application ask for confirmation ("are you sure you want to overwrite ___? y/n") or just go ahead?
if it does ask for confirmation should there be a -f option to override that?

Notes from conversation with @jacobliv

I'd say we want to be intentional with the versions, so if it exists, fail the build, and log that it exists and maybe a path to the version file to update or something
need only a major and minor version, so 1.1 or whatever. It will be 0.x until we have the version we are ready to release and submit to the game jam, which will be 1.0.

root folder

Builds

GameName-1.0.0
Zips

Lets add onto this a bit.
I love the idea of having a builds folder, and then generating subfolders for each version.
Inside of those folders, we should probably have this structure:

root folder

Builds

GameName-1.0.0

GameName-Mac-1.0.0
GameName-Windows-1.0.0
GameName-Web-1.0.0
Zips

GameName-Mac-1.0.0.zip
GameName-Windows-1.0.0.zip
GameName-Web-1.0.0.zip

does the above folder structure and file naming convention look ok?

Close, but I moved the zip folder down a level to each game version, otherwise we will have a zip folder with every version of the game.

As you mentioned from my comments, I think we can just fail the build. We don't want to overwrite, cause that would potentially lead to a loss of a version of the game, or unneeded building time if the same unchanged version is already built.

We could have a param to the command -i for increment the version, where your script will auto increment. I am not opposed to that.

working on this in https://github.com/EMCain/unity-build-tool - may want to move these issues over there

Closing this as I've got the basics down and can create an .exe


CS2 NOT WORKING?!?!

detection works fine, Im pretty sure its due to CS2 having raw input forced on at all times. I do not know if you can disable this in cs2
(side note to developer: have you thought of using RawAccel? to work around the raw input issue. i heard about it from one of the comments on this post on reddit: https://www.reddit.com/r/GlobalOffensive/comments/146lfxe/no_raw_input_option_in_cs2/ )
EDIT: raw accel did not seem to fix it.

it works as well for alot of people but it varies according to the processors that can analyze the neural network .. but it still work fine ..
can you try this and give me feedback ..

remove raw accel completely
remove python completely  and download latest version and install it by followin this steps :

Fix Python
Download latest version of python then install it like this pictures..

Optimazing For cs2 :

Best Setting for CS2 and make sure use this crosshair or make your own dot crosshair, to make natural network more faster by give some space to analyse model.

import this crosshair is game setting CSGO-YE93T-V6tTU-Cxa9r-jCf7s-2XJaA

for best result use this setting

and please keep me informed about these matters so that i can improve it to make it good for use in all games.


Assignment-5

Short but effective assignment. Enjoyed solving it.

Nice work, 133

Hi,
The grade uploaded on blackboard is 130. Kindly update it.
Best,
Ishan
On Mon, Apr 25, 2022, 12:03 AM JimmyWork668 @.***>
wrote:

Nice work, 133
—
Reply to this email directly, view it on GitHub
https://github.com/bostongfx/cs480student/pull/123#issuecomment-1108050572,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APCTUIVI7FEU2NI5GCYLJE3VGYKP7ANCNFSM5TES7JOA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Hi Ishan,
Thank you for your notice. I will fix it.
Best,
Chengjie

Chengjie Zheng, Ph.D. Student
University of Massachusetts Boston
College of Science and Mathematics
100 Morrissey Blvd, Boston, MA 02125, U.S.A.
E: @.***
P:<PHONE_NUMBER>
GitHub: https://github.com/JimmyWork668

发件人: Ishan Dubey @.>
发送时间: 2022年4月25日 11:03
收件人: bostongfx/cs480student @.>
抄送: Chengjie Zheng @.>; State change @.>
主题: Re: [bostongfx/cs480student] Assignment-5 (PR #123)
EXTERNAL SENDER
Hi,
The grade uploaded on blackboard is 130. Kindly update it.
Best,
Ishan
On Mon, Apr 25, 2022, 12:03 AM JimmyWork668 @.***>
wrote:

Nice work, 133
―
Reply to this email directly, view it on GitHub
https://github.com/bostongfx/cs480student/pull/123#issuecomment-1108050572,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APCTUIVI7FEU2NI5GCYLJE3VGYKP7ANCNFSM5TES7JOA
.
You are receiving this because you authored the thread.Message ID:
@.***>

―
Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbostongfx%2Fcs480student%2Fpull%2F123%23issuecomment-1108692176&data=05|01|chengjie.zheng001%40umb.edu|2ebba882f5bb4a4678e908da26ccb3e3|b97188711ee94425953c1ace1373eb38|0|0|637864957918467563|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=nU2LbC8NQDIwOYRD7tA1OLIa6WGaO3bTMshiM%2BS4B%2FE%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAQKC6H2EQLCETNK6KT423K3VG2X2TANCNFSM5TES7JOA&data=05|01|chengjie.zheng001%40umb.edu|2ebba882f5bb4a4678e908da26ccb3e3|b97188711ee94425953c1ace1373eb38|0|0|637864957918467563|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=r3N%2BWsYGtRDU8JSfNkwNMd1bMpN5B1eNF%2Fr%2BCvcJT1I%3D&reserved=0.
You are receiving this because you modified the open/close state.Message ID: @.***>


REST API Design

This issue is to brainstorm the design of the API endpoints and responses. I'll start with a couple of points on shorter URLs, HATEOAS and the folder structure.
Shorter URLs
I propose maintaining numeric IDs for each author, corpus, text, etc. and using those to construct the REST endpoints.
So, for example, endpoint GET /lang/latin/corpus/perseus/author/tacitus/text/germania becomes GET /lang/latin/corpus/1/author/6/text/8.
This keeps the URLs short while allowing the actual names that the IDs map to to be as long as needed.
A problem with this (assuming an external API consumer) is figuring out the ID of a specific author/corpus/text.
API Discoverability
The formal term for this is HATEOAS. This implies a user should be able to browse and discover all the endpoints of the REST API using the REST API itself.
Towards this, we should define endpoints like  GET /lang/latin/corpus/ that returns a response:
{"corpora": [ {"name": "perseus", "id": "1"}, ... ]}

This way, the user will be able to query for all the available corpora and figure out the ID.
Another example of this is from my POS tagger implementation. It is possible to view the list of languages and POS tagging methods they support via GET /core/pos, and perform the actual POS tagging for a string via POST /core/pos.
In general, adding a GET request handler to endpoints like /lang, /lang/<int:lang_id>/corpus, etc. should make the API discoverable.
Folder Structure
Right now all the resources are defined in a single file (api_json.py), and so are tests (tests.py). There is also no distinction between files containing utility functions and actual REST resources.
I briefly mentioned this in my https://github.com/cltk/cltk_api/issues/20#issuecomment-198688724.
An example of my proposed organisation is in https://github.com/cltk/cltk_api/pull/27/. Inside the folder for a specific function (/pos), the resources will be in views.py, the database stuff (if any) in models.py, utility functions in utils.py and parameters in constants.py.
(It may be better to keep constants.py at the root of the API folder structure, to easily find and change)

@Imran31 Thanks for sharing your thoughts. Here are a few initial responses:

So, for example, endpoint GET /lang/latin/corpus/perseus/author/tacitus/text/germania becomes GET /lang/latin/corpus/1/author/6/text/8.

The API is intentionally explicit. I prefer this because it the URL is instantly recognizable. "Author 6, text 8" means nothing, but "Tacitus, Germania" is universally recognizable.
There is something to be said for keeping URLs short, but we are very, very far from what I would consider long.

a user should be able to browse and discover all the endpoints of the REST API using the REST API itself.

We have this already, though I think it could be made more intuitive. For example:

http://api.cltk.org:5000/lang
http://api.cltk.org:5000/lang/latin/corpus
http://api.cltk.org:5000/lang/latin/corpus/perseus/author
http://api.cltk.org:5000/lang/latin/corpus/perseus/author/catullus/text

I'm open to hearing other ways of doing this.
About your POS addition to API, I'll need to look into this further. I will probably want to see an API which accounts for all "core" processing, not just individual parts.

There is something to be said for keeping URLs short, but we are very, very far from what I would consider long.

Yeah IDs will not be more helpful then, I thought that the growing URL length is a problem. I too think the existing URLs are much easier to recognise.

About your POS addition to API, I'll need to look into this further. I will probably want to see an API which accounts for all "core" processing, not just individual parts.

Sure! Does it make sense to list out all the /core/* endpoints and how they will respond to different HTTP methods?
I'll start with a list of endpoints and their associated classes:

/core/jvreplacer: JVReplacer
/core/stem: Stemmer
/core/lemmatize: LemmaReplacer
/core/syllabify: Syllabifier
/core/ner: ner
core/tokenize: PunktLanguageVars, TokenizeSentence, word_tokenize
core/distance: TextReuse, Levenshtein

I think this looks good for the first iteration of the project and can revise them in the future as it makes sense for the more complex tasks.

@lukehollis If you're comfortable with this API, then let's go for it. Just so long as everyone knows that the specifics will be subject to a revision sometime.
Thanks to all on this.

Thanks @lukehollis, I have extended this discussion into my proposal (I just shared it with the organisation via the GSoC website). I look forward to your comments there.


Remote Content (Integrated Search Connectors)

Are there plans to include "Remote Content (Integrated Search Connectors)" Databases as a widget or similar to the way it is displayed in the EDS Search from EBSCO? Also is this the right place to ask this question? Sorry if it isn't.

There is a way to include Integrated Search Connectors as a widget via the customisation manager.
https://github.com/ebsco/edsapi-koha-plugin/wiki/Customisation-Manager
Happy for you to raise a request with EBSCO support if you would like to explore this.
Cheers,
Alvet

No that's fine. But If I could get the full javascript code for that widget that would help a lot.

Kindly contact EBSCO support or submit a request via EBSCO Apps & Cloud Services.Thanks.
https://orbit.ebsco.com/


Is it worth removing all domain delegations and bringing management all back to Operations Engineering

Background
We currently have a lot of domain delegations. There isn't really any policy around what should or shouldn't be delegated and as such there isn't great visibility of what or why domains have been delegated. This makes the management and ownership of domains unclear.
Should be review what is delegated and either leave as is or bring this back to management by Operations Engineering?
We should do some work to determine if there is any value in doing this and clarify what problem we are trying to solve by doing so.
Questions

[ ] Why do we want to do this?
[ ] What is the currently delegated?
[ ] What the implications for support?
[ ] Is this worth doing?

This seems to be part of the domain management strategy, so it's probably worth at least investigating, especially for not auto-renewable ones.


Run Module from Library

Problem Description
I am building a custom module that fetches some data and would like to use a module from the library to render the data.
How can I instantiate a Library Module and get its render output from my PHP module render function?

@dthuering is the data you're fetching from a saved Divi page (i.e. the data is the raw shortcodes string generated by the Divi builder)? If yes, then you probably want to use do_shortcode instead.

@dthuering is the data you're fetching from a saved Divi page (i.e. the data is the raw shortcodes string generated by the Divi builder)? If yes, then you probably want to use do_shortcode instead.


third-party refactor

This cleans up a few issues when building third-party libraries from scratch.

Looks fine to me.


Improve Readme

Task 1:
Update the Demo Section
Reference
Task 2:
Improve the Intro line. We need a convincing pitch for the repo description as well!
Task 3:
Design a banner image for github repo (would be visible when the link is shared on social media platforms)

@smaranjitghose please assign me this I want to work

Assigned for Task 1. Complete that and proceed with the other two in separate PRs

Reassinged to @N-Shar-ma

@smaranjitghose Should I make separate PRs for the 3 tasks or do them all in 1 PR?


Tell a user they are about to access a third party service

What is the problem?
Due to the structure of the NHS App, users may move between data processors/controllers while still inside the App. We are legally obliged to tell the user who is handling their data.
Up to now, the pattern for doing this has been handled by showing the user an "interruption card" that is meant to inform them that they are moving to a 3rd party service.
We've observed in research that this pattern is not very effective. Users tend to have 1 of 2 reactions to this pattern:

They completely ignore it, likely because it looks like a GDPR banner that they are now used to dismissing without thinking. In this instance, we are meeting the letter, but not spirit, of the law.
They read it and go "Wait, what's this? Who's a {{Service name}}?! Why isn't this an NHS thing? I'm not using this", and then they back out of the journey. In this instance we are creating a barrier to the user getting care.

What is to be done?
There is work being done on a new pattern, which more closely resembles a standard start page. The hypothesis here is that we can set better expectations and better inform users without needlessly scarring them.
There is an open question about how much of this work – informing users about using third-party services – should be done at the point of them accessing the service. Would it be better to write this information into a general privacy policy/T&Cs, to be shown when the user first logs in, and then provide fewer interruptions when trying to access a specific service? We think this idea needs to evaluated by mapping the different kinds of scenarios (i.e. how would this work for third-party, locally commissioned services? how would this work for national services? how would this work for hybrid services?)

here is an example of the new start page being tested by the team...

an issue raised just now in a call with clinical is whether we need a pattern for showing a user which GP surgery the information produced by e.g. an online consultation will be sent to. the current pattern just says "your GP surgery uses X", but the question is whether we need to be more specific about who we (the app) think your GP surgery is, because occasionally it is wrong and if it is then the user could think their concern is being dealt with but it won't be, so this is a clinical safety problem.
@mariapinillapease has this come up at all before?

New navigating to third-party pattern
Plan is for this pattern to be tested as a pilot for Accurx
Hypothesis: If we make the transition out of the NHS App core journeys to third-party journeys more obvious then users will better understand where they are and who is providing the service.
Proposed design pattern includes three changes:
(1) Including the name of the supplier in the panel link
This was particularly useful for Online Consultation providers. As some GP's are specifically telling users to use a certain supplier to submit their requests. Then users come to the App directly looking for that name. This gives them earlier visibility in the hub
(2) Replace the current interrupt page
More details in the interrupt page issue
(3) Supplier screens in an native overlay
Suppliers screen will be shown in native overlay (no longer keeping the NHS App header and footer). This helps users understand they are no longer in the NHS App core journey and they've been taken out into a supplier screen. To help visually reinforce this difference we are proposing for the supplier to add a banner with their logo.
The overlays (iOS & Android) does have some customisation to prevent users opening this SSO integrated journey in a separate browser.
Returning to the NHS App:

Users need to use the 'Done' control in the overlay to return to the NHS App. In usability testing we didn't observe any major users in navigating this way back to the App.


Sort grid and puzzle lists alphabetically

Fixed.  In webapp.grids() and webapp.puzzles(), added a list sort just after it is generated.


Gzipped cached pages are not decoded

From the support forum, many user has a issue with gzip and cached page.
the issue appears when..

browser cache is enabled
gzip under browser cache is enabled
the page is cached
the user is not log on

the issue disappears when..

disable GZip under Browser Cache seems to solve the issue

the page on website appears:

some topic:
https://wordpress.org/support/topic/white-homescreen-after-latest-update/
https://wordpress.org/support/topic/w3tc-causes-garbled-code-display-on-pages/

disable GZip under Browser Cache seems to solve the issue

Disabling GZip under Browser Cache seems to be a word-around

This makes a gzipped html file work
AddType text/html .html_gzip
AddEncoding gzip .html_gzip

SetEnvIfNoCase Request_URI \.html_gzip$ no-gzip

Or the page could be double-gzipped...

do you know how replicate the issue?

No, I am an offical w3tc-only user.

do you know how replicate the issue?

Maybe by removing the above rules.

Was playing around and found the problem can only be replicated if you change your php version to 5.3.x (didn't try lower though).  Anything from v5.4 and up will not experience this problem.
Didn't WP or W3TC have a minimum PHP version requirement?  I thought one (or both?) of them was v5.4.  I can't remember.  It's been a while. 😺
Anyway, i am heading out for the day so i wont be able to tackle this for a while.  Just wanted to give you guys some new insight.
Cheers
Kimberly :octocat:

😢 5.2.4 https://wordpress.org/about/requirements/

Spotted something:
http://php.net/manual/en/function.gzdeflate.php

5.4.0 	Added encoding parameter.

Any w3tc includes that parameter in lib/Minify/HTTP/Encoder.php:254
gzdeflate($this->_content, $compressionLevel);

From doc http://php.net/manual/en/function.gzdeflate.php

Version.  Description
5.4.0.      Added encoding parameter.

I found the specific area causing the problem. It's in PgCache_ContentGrabbber.php line 1244-1246.  It's reeking havoc for php 5.3:
if ( isset( $value0['n'] ) ) {
    $name = $value0['n'];
    $value = $value0['v'];
}

Just working my way backwards to figure out why this was needed.  So to solve the problem (for php5.3 users) these lines either have to be stripped or modified.  Of course i am speaking too early since i dont know what they do just yet.  Right now they send back garbage headers to the client browser:
F: F, F
p: p
m: m
g: g
A: A

Great catch! the fix is a simple php version check, eg.:
if (version_compare(phpversion(), '5.4.0', '<')) {
   gzdeflate($this->_content);
} else {
    gzdeflate($this->_content, $compressionLevel);
}

I'm right?

Ahh i will check it out.

Ok i checked.  nope the problem is still there.  I believe because gzdeflate's 3rd parameter is what was introduced in 5.4 (aka [, int $encoding = ZLIB_ENCODING_RAW ]])  Since w3tc only uses the 1st two parameters it should work fine in pre-5.4.  If i understanding it wrong please correct me.
Ok, back to my potential clue.

You are right.

I found the specific area causing the problem. [...]

But removing those lines it works?

Yup when those lines are removed then things start working again all versions of php work as expected.

Mhh,  ok but those line are important?

Still roaming the code and yea these lines are necessary when one makes use of the w3tc_repeating_headers filter and have the same header name in the cache headers input box.
From what i see these lines are used to allow for repeating headers to send back to the user e.g. "set-cookie".  But is used only when the user implements the filter and adds it into the cache headers input box.   So it's pretty rare that someone will make use of this feature.
So far w3tc's code looks correct and the problem lies in how php 5.3 is doing things.  php 5.3 is seeing an array that doesnt exist (w3tc didnt add it).  So i dont think its a bug in w3tc but either a bug in php 5.3 or how it interprets things.
I will go play with php 5.3 and their array handling and get back to ya what i learn

Ok i got it fixed :bowtie:
To fix the problem you need to change line 1244 (of PgCache_ContentGrabbber.php) from:
if ( isset( $value0['n'] ) ) {

to this:
if (  is_array($value0) && isset( $value0['n'] ) ) {

Notice the only change is the inclusion of is_array($value0) &&

If there are no objections after discussion i will do a PR

Great work @amiga-500! It's ok for me!


Get-DbaDiskSpace update - Improved IsSqlDisk integration

Type of Change

[ ] Bug fix (non-breaking change, fixes #)
[x] New feature (non-breaking change, adds functionality)
[ ] Breaking change (effects multiple commands or functionality)
[x] Ran manual Pester test and has passed (`.\tests\manual.pester.ps1)
[ ] Adding code coverage to existing functionality
[ ] Pester test is included
[ ] Nunit test is included
[ ] Documentation
[ ] Build system

Changes

Added IsSqlDisk as object property, rather than adding it to the finished object
Added IsSqlDisk to default display as column

Screenshot

are you the bon'nest of the land 🥇


Abandonware?

Seems like this is abandoned software. No pull-requests accepted and no updated framework support.

I'm sorry for not keeping it updated. But I will update it on Sunday, i'm also planing to add test cases. Any pull request will be appreciated.

Sounds good!


Netflix clone with my own style

Title and Issue number
#5189 Need a movie website
Close #<issue_no>
Close #5189

Checklist:

[X] I have mentioned the issue number in my Pull Request.
[]X I have commented my code, particularly in hard-to-understand areas
[X] I have created a helpful and easy to understand README.md

Whats the problem mate


Got a error while import SWR 1.2.2

Discussed in https://github.com/vercel/swr/discussions/1867

Originally posted by marklee1972 February 21, 2022
I tried to use SWR in my next.js app ,but it's not work.
For excluding other variables, I install a pure page (index.js)from next.js example.
And it's fine to work,until I add a line on the head "import useSWR from 'swr'".
npm run dev console appeared :
error - SyntaxError: The requested module 'react' does not provide an export named 'useRef'
My browser appeared:
_Server Error
SyntaxError: The requested module 'react' does not provide an export named 'useRef'
This error happened while generating the page. Any console logs will be displayed in the terminal window.
Call Stack

file:///C:/Users/mark/Downloads/react/fo/nextjs-layout/node_modules/swr/dist/index.mjs (1)
ModuleJob.instantiate
internal/modules/esm/module_job.js (92:21)
async ModuleJob.run
internal/modules/esm/module_job.js (107:20)
async Loader.import
internal/modules/esm/loader.js (179:24)
async importModuleDynamicallyWrapper
internal/vm/module.js (422:15)
My package.json:
{
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start"
},
"dependencies": {
"next": "latest",
"react": "17.0.2",
"react-dom": "17.0.2",
"swr": "^1.2.2"
}
}
According CatalyticMusa's suggestion,I changed swr version back to 1.1.2.
Then the error disappered.
So I suspected the version.1.2.2 had bug.

Can you share more details about the node version and next.js you're using? Will be easy to investigate. And also a minimal reproduction so we know how you configured your nextjs project. Thanks 🙏

I have confirmed that this error occurs with Node.js v14.1.0 and that updating to v16.14.1 will work around this.
swr is 1.2.2

I tried to repro with swr latest stable version 1.3 it works well with node 14, can you try to upgrade swr to see if it's resolved?


[Feature Enhancement]: Fix Swift 6 data race issues

Summary
ATProtoKit should be used without needing to use @preconcurrency.
Pain points
At this time, Swift Package Index states that there are data race issues in ATProtoKit. While this isn't too much of a big deal, the problem is that developers will have to type @preconcurrency import ATProtoKit when using it in Swift 6. The goal is to completely eliminate the need to use @preconcurrency when importing the library.
Considered Alternatives
There are no other alternatives to this: using @preconcurrency is not ideal when using a library in an application.
Is this a breaking change?
No
Additional Context
The list will be for checking off the operating systems that have data race issues. It will also state how many data race errors remain (this will be based on the main branch).

[x] iOS (No data race errors remaining)
[x] macOS  (No data race errors remaining)
[x] visionOS  (No data race errors remaining)
[x] watchOS  (No data race errors remaining)
[x] tvOS  (No data race errors remaining)
[x] Linux  (No data race errors remaining)

Docker won't be counted since it uses Linux. Swift Package Index seems to be creating builds using Ubuntu Linux, so selecting the Linux checkbox requires ATProtoKit to have 0 data race issues on that distro.
A branch specifically designed to get rid of data race issues has been created and uploaded on GitHub. It will be in-sync with the develop branch, and will also merge its changes to develop once the changes have been tested.

Finally, it is finished. Closing this issue now.


Adding check for libfuse deadlock

Resolves: #512

Draft for now while I figure out why the unit test is failing,
{0} tests.unit.test_lxd.TestLXDScenarios.test_lxcfs_hits_fuse_deadlock [0.006773s] ... FAILED

Captured traceback:

    Traceback (most recent call last):

      File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 382, in create_files_inner2
    ret = f(*args, **kwargs)

      File "/usr/lib/python3.10/unittest/mock.py", line 1379, in patched
    return func(*newargs, **newkeywargs)

      File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 174, in inner
    YScenarioChecker().load_and_run()

      File "/home/nikhil/Downloads/myhotsos/hotsos/hotsos/core/ycheck/scenarios.py", line 149, in load_and_run
    self.load()

      File "/home/nikhil/Downloads/myhotsos/hotsos/hotsos/core/ycheck/scenarios.py", line 83, in load
    scenario.checks.initialise(scenario.vars, scenario.input,

      File "/home/nikhil/Downloads/myhotsos/hotsos/hotsos/core/ycheck/engine/properties/checks.py", line 145, in initialise
    for path in _input.paths:

      File "/home/nikhil/Downloads/myhotsos/hotsos/hotsos/core/ycheck/engine/properties/common.py", line 59, in _inner
    ret = f(inst)

      File "/home/nikhil/Downloads/myhotsos/hotsos/hotsos/core/ycheck/engine/properties/inputdef.py", line 74, in paths
    args_callback = self.options['args-callback']

      File "/home/nikhil/Downloads/myhotsos/hotsos/hotsos/core/ycheck/engine/properties/inputdef.py", line 24, in options
    defaults.update(_options)

    TypeError: 'NoneType' object is not iterable

I also tried something like this - by separating the check out into its own files,
nikhil@nikhil-Lenovo-Legion-Y540-15IRH-PG0:~/Downloads/myhotsos/hotsos$ git show
commit 047ee874536e3f77c0c2b59055db2fc48e9edb6f (HEAD -> main)
Author: Nikhil Kshirsagar<EMAIL_ADDRESS>Date:   Mon Oct 16 10:26:21 2023 +0530

    Adding check for libfuse deadlock

    Resolves: #512

diff --git a/hotsos/defs/scenarios/lxd/lxcfs_fuse_out_of_pids.yaml b/hotsos/defs/scenarios/lxd/lxcfs_fuse_out_of_pids.yaml
new file mode 100644
index 00000000..5b484765
--- /dev/null
+++ b/hotsos/defs/scenarios/lxd/lxcfs_fuse_out_of_pids.yaml
@@ -0,0 +1,23 @@
+checks:
+  has_lxd_version_5_9:
+    snap:
+      lxd:
+        - min: 24096
+          max: 24180
+  out_of_threads:
+    input:
+      command: journalctl
+    search:
+      expr: '(\S+) .+ lxd.daemon[d+]: fuse: error creating thread: Resource temporarily unavailable'
+
+conclusions:
+  fuse_deadlock:
+    decision:
+      - has_lxd_version_5_9
+      - out_of_threads
+    raises:
+      type: LXDWarning
+      message: >-
+        libfuse is out of pids. This can happen due to a known lxcfs
+        deadlock detailed in https://github.com/lxc/lxcfs/issues/471.
+        This is fixed in lxd snap version 5.10 (5.10-b392610)'
diff --git a/hotsos/defs/tests/scenarios/lxd/lxcfs_hits_fuse_deadlock.yaml b/hotsos/defs/tests/scenarios/lxd/lxcfs_hits_fuse_deadlock.yaml
new file mode 100644
index 00000000..e0b7df8f
--- /dev/null
+++ b/hotsos/defs/tests/scenarios/lxd/lxcfs_hits_fuse_deadlock.yaml
@@ -0,0 +1,33 @@
+target-name: lxcfs_fuse_out_of_pids.yaml
+mock:
+  patch.object:
+    hotsos.core.ycheck.engine.properties.inputdef.CLIHelperFile:
+      kwargs:
+        create: true
+        attribute: journalctl
+        return_value: /tmp/hotsos-unit-test-lxcfs-libfuse-deadlock.txt
+data-root:
+  files:
+    sos_commands/snap/snap_list_--all: |
+      lxd                  5.9-76c110d  24164  latest/stable  canonical**  -
+    sos_commands/lxd/lxd.buginfo: |
+      ## Instances
+      ```
+      +---------------------+---------+-------------------+------+-----------+-----------+
+      |        NAME         |  STATE  |       IPV4        | IPV6 |   TYPE    | SNAPSHOTS |
+      +---------------------+---------+-------------------+------+-----------+-----------+
+      | juju-04f1e3-1-lxd-0 | RUNNING | <IP_ADDRESS> (eth0) |      | CONTAINER | 0         |
+      +---------------------+---------+-------------------+------+-----------+-----------+
+      | juju-04f1e3-1-lxd-1 | RUNNING | <IP_ADDRESS> (eth0) |      | CONTAINER | 0         |
+      +---------------------+---------+-------------------+------+-----------+-----------+
+      ```
+      ## Images
+      ```
+    /tmp/hotsos-unit-test-lxcfs-libfuse-deadlock.txt: |
+      Jan 05 00:00:11 ic-hrvart4-s4anq599 lxd.daemon[5447]: fuse: error creating thread: Resource temporarily unavailable
+raised-issues:
+  LXDWarning: >-
+    libfuse is out of pids. This can happen due to a known lxcfs
+    deadlock detailed in https://github.com/lxc/lxcfs/issues/471.
+    This is fixed in lxd snap version 5.10 (5.10-b392610)
+

But I get this failure,
==============================

unittest.loader._FailedTest.tests.unit.test_lxd

Captured traceback:

    ImportError: Failed to import test module: tests.unit.test_lxd
Traceback (most recent call last):
  File "/usr/lib/python3.10/unittest/loader.py", line 436, in _find_test_path
    module = self._get_module_from_name(name)
  File "/usr/lib/python3.10/unittest/loader.py", line 377, in _get_module_from_name
    __import__(name)
  File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/test_lxd.py", line 40, in <module>
    class TestLXDScenarios(LXDTestsBase):
  File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 55, in _inner
    tg = TemplatedTestGenerator(path, testdef)
  File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 202, in __init__
    self.testdef = yaml.safe_load(fd) or {}
  File "/home/nikhil/Downloads/myhotsos/hotsos/.tox/py3/lib/python3.10/site-packages/yaml/__init__.py", line 125, in safe_load
    return load(stream, SafeLoader)
  File "/home/nikhil/Downloads/myhotsos/hotsos/.tox/py3/lib/python3.10/site-packages/yaml/__init__.py", line 79, in load
    loader = Loader(stream)
  File "/home/nikhil/Downloads/myhotsos/hotsos/.tox/py3/lib/python3.10/site-packages/yaml/loader.py", line 34, in __init__
    Reader.__init__(self, stream)
  File "/home/nikhil/Downloads/myhotsos/hotsos/.tox/py3/lib/python3.10/site-packages/yaml/reader.py", line 85, in __init__
    self.determine_encoding()
  File "/home/nikhil/Downloads/myhotsos/hotsos/.tox/py3/lib/python3.10/site-packages/yaml/reader.py", line 124, in determine_encoding
    self.update_raw()
  File "/home/nikhil/Downloads/myhotsos/hotsos/.tox/py3/lib/python3.10/site-packages/yaml/reader.py", line 178, in update_raw
    data = self.stream.read(size)
  File "/usr/lib/python3.10/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe1 in position 17: invalid continuation byte

I changed the unit test to
target-name: lxcfs_deadlock.yaml
mock:
  patch.object:
    hotsos.core.ycheck.engine.properties.inputdef.CLIHelperFile:
      kwargs:
        create: true
        attribute: journalctl
        return_value: /tmp/hotsos-unit-test-lxcfs-libfuse-deadlock.txt
data-root:
  files:
    sos_commands/snap/snap_list_--all: |
      lxd                  5.9-76c110d  24164  latest/stable  canonical**  -
    sos_commands/lxd/lxd.buginfo: |
      ## Instances
      ```
      +---------------------+---------+-------------------+------+-----------+-----------+
      |        NAME         |  STATE  |       IPV4        | IPV6 |   TYPE    | SNAPSHOTS |
      +---------------------+---------+-------------------+------+-----------+-----------+
      | juju-04f1e3-1-lxd-0 | RUNNING | <IP_ADDRESS> (eth0) |      | CONTAINER | 0         |
      +---------------------+---------+-------------------+------+-----------+-----------+
      | juju-04f1e3-1-lxd-1 | RUNNING | <IP_ADDRESS> (eth0) |      | CONTAINER | 0         |
      +---------------------+---------+-------------------+------+-----------+-----------+
      ```
      ## Images
      ```
    /tmp/hotsos-unit-test-lxcfs-libfuse-deadlock.txt: |
      Jan 05 00:00:11 ic-hrvart4-s4anq599 lxd.daemon[5447]: fuse: error creating thread: Resource temporarily unavailable
raised-issues:
  LXDWarning:
    - >-
      libfuse is out of pids. This can happen due to a known lxcfs
      deadlock detailed in https://github.com/lxc/lxcfs/issues/471.
      This is fixed in lxd snap version 5.10 (5.10-b392610)
    - >-
      This host has lxc containers and is using LXD version 5.9 which is
      known to be affected by a lxcfs deadlock bug that causes reads and
      writes to permanently block leading to a large backlog of lxcfs
      threads and eventually a kernel crash because of hung tasks. The bug
      is fixed in LXD 5.10. For more information see
      https://github.com/lxc/lxcfs/issues/471.

But the unit test fails now with,
INFO: extracting sosreport /tmp/tmpgt0ooa6b/mysos.xz to /tmp/tmpzsmqkk3b/mysos
INFO: extracting sosreport /tmp/tmp8e3d54op/mysos.xz to /tmp/tmpthhrbl93/mysos

==============================
Failed 1 tests - output below:
==============================

tests.unit.test_lxd.TestLXDScenarios.test_lxcfs_hits_fuse_deadlock
------------------------------------------------------------------

Captured traceback:
    Traceback (most recent call last):

      File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 382, in create_files_inner2
    ret = f(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^

      File "/usr/lib/python3.11/unittest/mock.py", line 1375, in patched
    return func(*newargs, **newkeywargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

      File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 182, in inner
    self.check_raised_issues(test_inst, self.expected_issues,

      File "/home/nikhil/Downloads/myhotsos/hotsos/tests/unit/utils.py", line 145, in check_raised_issues
    test_inst.assertEqual(_expected[itype], _actual[itype])

      File "/usr/lib/python3.11/unittest/case.py", line 873, in assertEqual
    assertion_func(first, second, msg=msg)

      File "/usr/lib/python3.11/unittest/case.py", line 1133, in assertSetEqual
    self.fail(self._formatMessage(msg, standardMsg))

      File "/usr/lib/python3.11/unittest/case.py", line 703, in fail
    raise self.failureException(msg)

    AssertionError: Items in the first set but not the second:
'libfuse is out of pids. This can happen due to a known lxcfs deadlock detailed in https://github.com/lxc/lxcfs/issues/471. This is fixed in lxd snap version 5.10 (5.10-b392610)'

the way to resolve the fact that the test fails because two conclusions are raised is to use a list of strings/messages like in https://github.com/canonical/hotsos/blob/main/hotsos/defs/tests/scenarios/openvswitch/ovn/ovn_central_certs_logs_w_error.yaml

I used a "not" instead in the scenario


Support for regex library?

I love re, but the regex library is more complete.
Is anyone working on implementing the regex library?
Thank you!

Unfortunately, not that I'm aware of. With the re module available on the Python side plus any existing JavaScript libraries, it's not likely a high priority in terms of all the other work that needs to be done on the project.


Error when running XrmContext.exe

Describe the bug
Fetching specific entity metadata from CRM...Done!
Retrieving CRM version...Done!
Interpreting data...
Unable to generate context files: One or more errors occurred.
To Reproduce
Steps to reproduce the behavior:

Add a new multi-select option set without any options
Run the tool
See error

Expected behavior
The tool runs and generates the context file without any errors
Environment

CRM/D365/CDS version: 9.X
Tool version: 1.8.0

Additional context
A pull request will be on its way.
This is a duplicate of: https://github.com/delegateas/XrmFramework/issues/13
Logged that in the wrong repository.

I think this issue can be closed since pull request is accepted and functionality is added in 1.8.1.


[webapi] Remove apt-cmd-opt command on Windows

WebGL test suite can't build if the command exists, when removed it doesn't effect pass rate.

There are about 20 JIRA tickets mentioned --ignore-gpu-blacklist at
https://crosswalk-project.org/jira/issues/?jql=text ~ "\"--ignore-gpu-blacklist\""
Have you checked the Android/Linux platforms?

It's OK for Android platform.


Sync papers from entire library or unfiled items

It would be very useful if I could sync items from either "My Library" or "Unfiled Items" rather than a collection.
I organize my papers within Notion; I would prefer not to always have the Zotero desktop app open. When I save papers to zotero.org from the Chrome extension, they go to my library, without an option to choose a specific collection (and thus show up in unfiled items). It would be great if these unfiled papers could automatically show up in Notion. In other words, to sync a paper into Notion, I currently have to either use the Zotero desktop app (so papers can be added directly to a collection), or I have to manually move each paper into a collection on zotero.org. (I could be missing something; if there is some workaround here, please let me know.)
On a related note, in the Zotero desktop app, when i ctrl+click on the "My Library" or "Unfiled Items" labels on the left, there is a menu option to "Sync Items to Notion," but this doesn't seem to do anything for me.
Thanks for all your work on Notero, it's super useful!

Thanks for the feedback, @markellekelly! And thanks for sharing your workflow—I see what you're running in to.
Because Notero as it exists today is a plugin for the Zotero desktop app, it will always require the desktop app to be running in order to sync items to Notion. Zotero does have a web API, and I think there could be a path forward for a service to be built that handles syncing all server-side, but that's beyond the scope of the current Notero project.
That being said, it's definitely possible to update Notero so that it could automatically sync all items in your Zotero library without having to add them to a collection first. I've heard similar requests from other folks as well. A thought I've had is to introduce a new option in the Notero preferences to toggle between syncing specific collections (as it works today) or syncing the entire library. I know it's still not ideal, but would something like that help improve your workflow?
As for nothing happening when using the "Sync Items to Notion" menu item on the "My Library" and "Unfiled Items" entries, that is indeed a known bug. 😬 The extension points available in Zotero for that menu are a bit limited, so I wasn't able to get this to work for anything other than collections. There is a monkey-patch workaround that I've seen some other plugins use, but I haven't yet invested in trying to get that to work.
In the meantime, another approach you can use is to select all items in the "My Library" or "Unfiled Items" folders (e.g. using Ctrl+A) and then clicking the "Sync to Notion" menu item in the item context menu.
https://user-images.githubusercontent.com/299357/221102893-b3072755-39a1-440b-9e64-1643af57cb16.mp4

Thanks for the quick reply! Yes, syncing the entire library (vs. a specific collection) would definitely make my workflow a little easier. (To be specific, I am envisioning: as I sporadically encounter papers I want to look at later, I save them to my library via the web server, i.e. without opening the desktop app. Then later, to review papers, I open the Zotero and Notion desktop apps, which automatically syncs the previously-saved papers to Notion.)
Thanks also for your workaround, that helps too!


if_lua.c: new Lua 5.4.0 defines luaL_typeerror, so don't define it twice

Hi,
Fedora updated Lua to version 5.4.0, where luaL_typeerror is defined, so the compilation now fails with double declaration. We configure Vim to be with dynamic Lua interpreter.
The fix defines an upper border in Lua version ifdef, to prevent defining the function with newer Lua.
Would you mind adding the fix to the project?
Note:
I needed to add -llua into LDFLAGS too, because src/configure.ac clears LUA_LIBS here:
 740         fi
 741       fi
 742       AC_DEFINE(DYNAMIC_LUA)
 743       LUA_LIBS=""
 744       LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"${vi_cv_dll_name_lua}\\\" $LUA_CFLAGS"
 745     fi

If clearing of the variable is removed, Vim is linked correctly. But I'm not sure about the reason why clearing was done, so I didn't remove the line in pull request.

I needed to add -llua into LDFLAGS too, because src/configure.ac clears LUA_LIBS here:

That line is for linking lua dynamically.
Does your PR work when configured with --enable-luainterp=dynamic?

I needed to add -llua into LDFLAGS too, because src/configure.ac clears LUA_LIBS here:

That line is for linking lua dynamically.
Does your PR work when configured with --enable-luainterp=dynamic?

Yes, after I remove the mentioned line and regenerate configure. Or if I set -llua to LDFLAGS.

Sorry, I didn't write the clean reproducer:
./configure --enable-luainterp=dynamic && make

Original error:
if_lua.c:462:1: error: static declaration of 'luaL_typeerror' follows non-static declaration
  462 | luaL_typeerror(lua_State *L, int narg, const char *tname)
      | ^~~~~~~~~~~~~~
In file included from if_lua.c:16:
/usr/include/lauxlib.h:53:17: note: previous declaration of 'luaL_typeerror' was here
   53 | LUALIB_API int (luaL_typeerror) (lua_State *L, int arg, const char *tname);
      |                 ^~~~~~~~~~~~~~
make: *** [Makefile:3331: objects/if_lua.o] Error 1

Error when -llua is missing and the pull request is applied:
/usr/bin/ld: objects/if_lua.o: in function `luaV_checkudata':
/builddir/build/BUILD/vim82/src/if_lua.c:520: undefined reference to `luaL_typeerror'
/usr/bin/ld: /builddir/build/BUILD/vim82/src/if_lua.c:520: undefined reference to `luaL_typeerror'
/usr/bin/ld: /builddir/build/BUILD/vim82/src/if_lua.c:520: undefined reference to `luaL_typeerror'
/usr/bin/ld: /builddir/build/BUILD/vim82/src/if_lua.c:520: undefined reference to `luaL_typeerror'
/usr/bin/ld: /builddir/build/BUILD/vim82/src/if_lua.c:520: undefined reference to `luaL_typeerror'
/usr/bin/ld: objects/if_lua.o:/builddir/build/BUILD/vim82/src/if_lua.c:520: more undefined references to `luaL_typeerror' follow
collect2: error: ld returned 1 exit status
link.sh: Linking failed
make: *** [Makefile:2137: vim] Error 1

Yes, after I remove the mentioned line and regenerate configure. Or if I set -llua to LDFLAGS.

Hmm, it looks incorrect. If Vim is configured with --enable-luainterp=dynamic, Vim should not be linked with liblua.
See the line 95 to 450 (#ifdef DYNAMIC_LUA ... #endif // DYNAMIC_LUA) of if_lua.c to see how the dynamic linking works.

How about this patch? (Not tested at all.)
--- a/src/if_lua.c
+++ b/src/if_lua.c
@@ -120,6 +120,9 @@ static void luaV_call_lua_func_free(void
 #define luaL_loadbufferx dll_luaL_loadbufferx
 #define luaL_argerror dll_luaL_argerror
 #endif
+#if LUA_VERSION_NUM >= 504
+#define luaL_typeerror dll_luaL_typeerror
+#endif
 #define luaL_checkany dll_luaL_checkany
 #define luaL_checklstring dll_luaL_checklstring
 #define luaL_checkinteger dll_luaL_checkinteger
@@ -217,6 +220,9 @@ int (*dll_luaL_loadfilex) (lua_State *L,
 int (*dll_luaL_loadbufferx) (lua_State *L, const char *buff, size_t sz, const char *name, const char *mode);
 int (*dll_luaL_argerror) (lua_State *L, int numarg, const char *extramsg);
 #endif
+#if LUA_VERSION_NUM >= 504
+int (*dll_luaL_typeerror) (lua_State *L, int narg, const char *tname);
+#endif
 void (*dll_luaL_checkany) (lua_State *L, int narg);
 const char *(*dll_luaL_checklstring) (lua_State *L, int numArg, size_t *l);
 lua_Integer (*dll_luaL_checkinteger) (lua_State *L, int numArg);
@@ -336,6 +342,9 @@ static const luaV_Reg luaV_dll[] = {
     {"luaL_loadbufferx", (luaV_function) &dll_luaL_loadbufferx},
     {"luaL_argerror", (luaV_function) &dll_luaL_argerror},
 #endif
+#if LUA_VERSION_NUM >= 504
+    {"luaL_typeerror", (luaV_function) &dll_luaL_typeerror},
+#endif
     {"luaL_checkany", (luaV_function) &dll_luaL_checkany},
     {"luaL_checklstring", (luaV_function) &dll_luaL_checklstring},
     {"luaL_checkinteger", (luaV_function) &dll_luaL_checkinteger},
@@ -457,7 +466,7 @@ lua_enabled(int verbose)
 }
 #endif

-#if LUA_VERSION_NUM > 501
+#if LUA_VERSION_NUM > 501 && LUA_VERSION_NUM < 504
     static int
 luaL_typeerror(lua_State *L, int narg, const char *tname)
 {

I'll check it in a minute - I need to setup Fedora rawhide env.

@k-takata Yes, the compilation and linking works as before, thanks for the tip and patch! I'll update the PR.

Thank you for testing.

Included as 8.2.1212  (which had the wrong PR number).


TypeScript 2.9.x incorrectly emits relative imports for symbolically linked dependencies (lerna)

TypeScript Version:  2.9.x
2.8.x works fine. It starts to break with TypeScript 2.9.x. It's not fixed by the latest build (typescript@next).

Search Terms:
import symbolic link lerna
Code
https://github.com/strongloop/loopback-next/blob/master/packages/core/src/keys.ts
keys.ts
import {Application, ControllerClass} from './application';

export const CONTROLLER_CLASS = BindingKey.create<ControllerClass>(
    'controller.current.ctor',
  );

Please note the ControllerClass is a type alias re-exported from another module @loopback/next which is symbolically linked to @loopback/core by lerna.
application.ts
import {Context, Binding, BindingScope, Constructor} from '@loopback/context';
export type ControllerClass = Constructor<any>;

Expected behavior:
TypeScript 2.8.x style:
keys.d.ts (emitted by tsc)
const CONTROLLER_CLASS: BindingKey<new (...args: any[]) => any>;

Or
import {Constructor} from '@loopback/context';

const CONTROLLER_CLASS: BindingKey<Constructor<any>>;

Actual behavior:
const CONTROLLER_CLASS: BindingKey<import("../../context/src/value-promise").Constructor<any>>;

Please note the relative link is only valid at development time. Once it's published as a npm module, the import cannot be resolved.
Playground Link:
Related Issues:
https://github.com/strongloop/loopback-next/issues/1405

This is also a problem for me when using the new feature to adjust imports after renaming a file.

@weswigham can you take a look

I just tried 2.9.2 release and the issue is NOT fixed but getting worse:
See https://github.com/Microsoft/TypeScript/pull/24874#issuecomment-397075614

Is there update on this? I see that it has been merged but with TS 2.9.2 I still have the same issue

I understand that Typescript 2 will not be fixed. We should all update to third version. Right?

Our team only maintainsmonce version of the compiler actively, so yes.


fix: 🐛 ignore @storybook/addon-docs in jest config

The tests using stories were failing because
@storybook/addon-docs/blocks is using esm, which jest currently does
not understand. I've added that package to the transformIgnorePatterns
list in the jest config to solve that, but also had to change the
.babelrc to babel.config.json due to updates in Babel v7
Apparently, the deal with Babel 7 is that it no longer automatically loads the .babelrc. It now has the concept of a root directory, which is the current working directory by default, where it looks for a babel.config.json file. With this change Jest will be able to properly load the babel config.
References:

similar situation with a different storybook package using esm
Babel 7 config files docs
Jest issue demonstrating .babelrc vs babel.config.js when using transformIgnorePatterns

✅ Closes: #204

@codyarose Do we want to bump our package version for this fix? Jest shouldn't affect our consumers.
Should this be a chore commit?

@codyarose Do we want to bump our package version for this fix? Jest shouldn't affect our consumers.
Should this be a chore commit?

Ah, right.. I suppose that's true - as long as the change from .babelrc → babel.config.json doesn't affect anything?

@codyarose Do we want to bump our package version for this fix? Jest shouldn't affect our consumers.
Should this be a chore commit?

Ah, right.. I suppose that's true - as long as the change from .babelrc → babel.config.json doesn't affect anything?

Since they are both JSON syntax nothing should be affected. The consumer transpiles their own code.

 That should do it, right?


[Feature] JSDoc

Feature?
Complete the JSDoc everywhere on the template, with links to the official documentation, etc

The JSDoc is done little by little, closing the issue for now.


[💡 FEATURE REQUEST]: upgrade TCP plugin

Plugin
TCP
I have an idea!
I think the TCP plugin needs to be reworked.
The way the RR-TCP plugin works now:
RR cuts off data by separator and sends it to different workers.
This approach works well when writing an SMTP server, but it's not enough for a true TCP server.
For example we can't handle HTTP protocol, binary protocol or any custom protocol.

I propose to make the plugin so that a PHP-worker works with RR-TCP-plugin like with a stream.
When RR accepts a connection from a user, it tells the free PHP worker about it and attaches the connection to it.
The worker in this case can:

ask how many bytes to read

with specifying the max length
with specifying the separator
with specifying the min length (for blocking reading mode)

which data to write (using a buffer or with an immediate error if the connection is not ready to write)
when to pass the connection to another worker (detach the worker from the connection)
when to disconnect the client

Since no one commented on this and there is no clarification on what particular protocols needs to be handled, closing the FR. Discussion is not closed anyway, so, feel free to create a new ticket or comment here.


Write a C++ program to find the adjoint of a matrix

Description
Write a C++ program to find the adjoint of a matrix
The adjoint of a square matrix A is the transpose of the matrix of cofactors of A. The adjoint of a matrix A is denoted as A*.
Input  :
1 2 3
4 5 6
7 8 9

Output :
[[-3, 6, -3], [6, -12, 6], [-3, 6, -3]]

How to contribute

Save the solution in program/FindTheAdjointOfAMatrix.cpp file
Add FindTheAdjointOfAMatrix.cpp file in find-the-adjoint-of-a-matrix folder

!assign


Add events tracking

Pull Request Test Coverage Report for Build 361

17 of 28 (60.71%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.03%) to 57.709%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/database/events.js
4
6
66.67%

src/routes/events.js
8
17
47.06%

Totals

Change from base Build 360:
-0.03%

Covered Lines:
498

Relevant Lines:
748

💛  - Coveralls

A lot if internal parts of Ackee have changed. I'm therefore closing this PR. Please keep an eye on: https://github.com/electerious/Ackee/issues/40


Update f0adb8b7-434d-3134-38d0-d21d221a27d3.md

Corrected a small typo. Also added linkage from WdConditionCode to the "WdConditionCode Enumeration (Word)" page.

Hi @RHolton, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Updated in local master branch. Merge on May 31


Handle HEIC images in web and desktop

Problem
Coming from this slack discussion , we don't currently handle HEIC images on web and desktop in NewDot. This is a common file type for files generated on apple devices, so not supporting these is not an ideal user experience, given many NewDot users are on apple devices.
Solution
Add support for HEIC in desktop and web. Based on the Slack discussion, it sounds like the way to go is converting to jpeg so we can display a preview of the files before upload.

Hey @joekaufmanexpensify - I'll be closing this in favor of https://github.com/Expensify/App/issues/12531 which tackles the same issue.

sounds good!


Fully automate dev setup with Gitpod

This commit implements a fully-automated development setup using Gitpod.io, an
online IDE for GitHub and GitLab that enables Dev-Environments-As-Code.
This makes it easy for anyone to get a ready-to-code workspace for any branch,
issue or pull request almost instantly with a single click.

不太确定，这个是不是小众需求，加入这个主要是可以方便的生成epub格式的图书。


A pressed Tab will cause kernel died

Hi guys,
In the jupyter branch a pressed Tab key will lead the kernel died immediately.
This problem can be reproduced by following steps:

IHaskell console to enter console mode.
whenever in the console mode just press the Tab key and the kernel will die. More than one press will cause the kernel restart many times.

I have tried  in IPython console it works fine. So it seems that problem is caused by the completion request, while the parser don't know how to deal with it. I will try to fix it. Any suggestion will be appreciated.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/9251579-a-pressed-tab-will-cause-kernel-died?utm_campaign=plugin&utm_content=tracker%2F332399&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F332399&utm_medium=issues&utm_source=github).

Sounds good. Look at Parser.hs in the ipython-kernel package/directory; the message it is sending should be detailed in the messaging spec. You can use the Debug.Trace module and the traceShow function in order to print out intermediate results to see what messages are actually being received (before the exception happens).

@gibiansky
I find the problem is located in Parser.hs line 121 where the  parse parser decoded evaluated Error String rather than Success parsed. This lead to a Irrefutable pattern failed. But I have totally no idea how to deal with the parse function to avoid it. Maybe we should try parseMaybe instead?
Here is the debugging output:
In [5]:
Content:"{\"code\":\"\",\"cursor_pos\":0}"                       -- content to be decoded
Decoded:fromList [("code",String ""),("cursor_pos",Number 0.0)]  -- It is not `Nothing` !
Error!                                                           -- `Error e` pattern

By the way, is there even a function handling command completion request? I don't really know about that.

@SuperHex I've realized that this might not be a great way to learn the IHaskell codebase; I'm going to go ahead and fix this as it's fairly serious and is somewhat blocking merging the jupyter branch.
If you would like to learn about the messaging protocol, I suggest trying your hand at #389. There were new messages introduced in 3.0 for dealing with history, which have yet to be implemented; search in Main.hs for TODO, as well as Types.hs in the ipython-kernel package. Alternatively you may want to start with a bit of an easier challenge, like https://github.com/gibiansky/IHaskell/issues/371. Feel free to ping me by email if you'd like to discuss further.
Also, I'm not getting this error; this doesn't seem like it should be happening. What version of ipython are you running?
ipython --version

It is exactly 3.0.0. while in browser interface it works fine. I will take a look at them. Thanks a lot.


Fix(resources): agenda-item can have many sessions

Handled in this PR:

BREAKING CHANGE: agenda-item has sessions instead of session.
Add governing-body has-one mandaat:isTijdspecialisatieVan, as is-time-specialization-of

Merged to support frontend master deployement


Wrong SVG rendering

This SVG file is rendered with errors:
http://s000.tinyupload.com/?file_id=51455686831478467750
The image shows how Macaw displays it(top), and how it should be(bottom):

I see two problems here:

Gradient is rendered just as plain black, not green to white as it should be
Path of the gradient is wrong, it should go all the way to the bottom instead of going right from end of path to beginning

Is there any workarounds these errors? Will it be fixed?
thanks for the Cocoapod anyway, it is pretty cool

Hi, @sam-moshenko, one of the problems related to the wrong gradient stops parsing, I will try to fix this soon, also you can always help by sending a PR.

Fix for gradient stops - https://github.com/exyte/Macaw/pull/638

After merging PR linear gradient parsed correctly, but black parts are still there. Looks like a rendering issue.

Honestly, I didn't find any white fill for all SVG/Group, only fill = "none", which one btw not parsed, but shouldn't affect anything for this SVG, maybe I missed something.


Add missing tests for Patient Appointment List

🐛 Bug Report
Tests are missing for the Patient Appointment List Functionality.
This includes tests missing for the following files and functions:
AppointmentList.tsx
fetchPatientAppointments() in appointments-slice.ts
searchPatientAppointments in AppointmentRepository.ts
To Reproduce
Run yarn coveralls and see missing line coverage

## Expected behavior
The Patient Appointment List should be well covered with tests.

## Related Issues
#1769

These files don't seem to exist anywhere in the repo:
AppointmentList.tsx
appointments-slice.tsx
AppointmentRepository.tsx

Also, couldn't find  fetchPatientAppointments() or searchPatientAppointments() anywhere.

These files don't seem to exist anywhere in the repo:
AppointmentList.tsx
appointments-slice.tsx
AppointmentRepository.tsx

Also, couldn't find fetchPatientAppointments() or searchPatientAppointments() anywhere.

Functionality was completed in https://github.com/HospitalRun/hospitalrun-frontend/pull/1823.
Relevant files:

https://github.com/HospitalRun/hospitalrun-frontend/blob/master/src/patients/appointments/AppointmentsList.tsx
https://github.com/HospitalRun/hospitalrun-frontend/blob/master/src/scheduling/appointments/appointment-slice.ts
https://github.com/HospitalRun/hospitalrun-frontend/blob/master/src/clients/db/AppointmentsRepository.ts

Hey @jackcmeyer, can I give a shot t this one ?

@samgaudr sorry I missed this! Please let me know if you still want to tackle this issue

No problem, I still have time for it!

No problem, I still have time for it!

Great! I’ve assigned this to you!


npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed.

Hello,
Since the homebridge-lib update comes the following error From homebridge-hue:

with homebridge 0.4.50
Is there anything else to be updated?
Thanks a lot

Please upgrade to<EMAIL_ADDRESS>which, once again, includes homebridge-lib as a regular dependency.

Thanks,
everything is OK again.


Document built-in LineEdit keybindings

Following discussion in https://github.com/godotengine/godot/issues/27613, I thought it'd be useful to document built-in LineEdit keybindings. I mainly documented the less "obivous" bindings here; if you think any is missing (line_edit.cpp), feel free to comment :smiley:
PS: It doesn't look great formatting-wise, is there any way to improve how it displays in the editor help?

The formatting really isn't great. Maybe wrap it in a codeblock?

Thanks!
For the formatting, we should implement a proper unordered list markup in our BBcode parser and RST converter IMO.

Cherry-picked for 3.1.2.


Document --name arg on wrangler secret subcommands

Which Cloudflare product does this pertain to?
Workers
Existing documentation URL(s)
https://developers.cloudflare.com/workers/wrangler/commands/#secret
Section that requires update
Each of the secret put, secret delete and secret list commands need updating
What needs to change?
The arguments for each of these commands.
How should it change?
Add documentation about the --name argument.
Additional information
No response

https://github.com/cloudflare/cloudflare-docs/pull/5254


Add data model suite

Adds a bunch of issuer tests related to the Data Model section.

English looks OK. I don't speak JavaScript.

@TallTed you should learn. It's a great language.

@aljones15

you should learn. It's a great language.

For various reasons, I prefer to keep English as my primary coding language, with which I achieve reasonably good results, even with my imperfect facility.


Fix service order test with new lot_id based sorting

Related to and should be merged after https://github.com/alphagov/digitalmarketplace-api/pull/273
Fix service order test with new lot_id based sorting
Services returned by the API are sorted based on internal lot order.
Full lot name is returned in service.lotName and is now displayed
in service list tables.
Update service fixtures with frameworkSlug and lowercase lot
frameworkSlug is required for service creation, while frameworkName
field is always ignored.

Looks good.
:+1:


since distutils is not part of python 3.12 the sonos command fails with that version

distutils was removed from python in version 3.12. You might want to add the packaging dependency and use packaging.version.parse in action_processor.py

Thanks for spotting this. Fixed in v0.4.73.


JS/HTML/CSS code added in 'Edit Source'- Not transformed to the Modern page

[*] Bug
[ ] Enhancement
Problem Area
[ ] Page Transformation: Error during the setup/use of the Page Transformation UI solution (did you check our troubleshooting guide?)
[ ] Page Transformation: Error during the use of page transformation from PnP PowerShell
[ ] Page Transformation: Error during the use of page transformation from .Net
[* ] Page Transformation: Page is not looking correct after transformation
[ ] Modernization Scanner: something went wrong...
Expected or Desired Behavior
HTML/JS/CSS code to be available in modern page using script editor web part
Observed Behavior
Code is added using Edit source in a wiki Page. After transformation to modern, the content is missing.
Steps to Reproduce
1.Create a wiki Page
2. Add HTML, JS code using the edit source button, available in Page's Edit ribbon
3. Convert the page to modern using "ConvertTo-PnPClientSidePage -Identity Pagename.aspx -AddPageAcceptBanner -UseCommunityScriptEditor -TakeSourcePageName"

Hi @PriyankaDevi510, this scenario isn't supported as the modern web parts do not allow CSS and JavaScript, we have coded the transformation tool to work in this way.
See: https://docs.microsoft.com/en-gb/sharepoint/dev/transform/modernize-userinterface-site-pages-webparts#contenteditorwebpart-web-part

Thanks @pkbullock .
The only way to "keep" JavaScript when transforming from classic pages is if:

the script is inside either a content editor or script editor web part
you've deployed the community modern script editor web part to your SPO tenant
you tell the transformation engine to use the this modern script editor web part via the -UseCommunityScriptEditor parameter of the ConvertTo-PnPClientSidePage cmdlet

Hi @PriyankaDevi510 ,
Closing this one after the feedback given in today's call.


Sidecar container does not show up

I am trying to spin up a sidecar container in my driver pod and I followed the docs. But somehow the side car container is not spinning up and I am struggling to understand why. However my driver and executor pods starts just fine,Here is how my manifest file look like, can anyone please help me with this and let me know if I am missing anything?:

apiVersion: sparkoperator.k8s.io/v1beta1
kind: SparkApplication
metadata:
 name: spark-sidecar-test1
 namespace: engine-memory
spec:
 type: Scala
 cluster: local
 image:<PHONE_NUMBER>389.dkr.ecr.us-west-2.amazonaws.com/spark-image:latest
 imagePullPolicy: Always
 mainClass: com.sparktest.example
 mainApplicationFile: local:///example/jars/etl-1.0-SNAPSHOT-jar-with-dependencies.jar
 driver:
   serviceAccount: spark-service-account
   sidecars:
   - name: "count1"
     image: "busybox"
     args: [/bin/sh, -c,
            'i=0; while true; do echo "$i: $(date)"; i=$((i+1)); sleep 1; done']
 sparkConf:
   spark.shuffle.io.maxRetries: "0"
   spark.port.maxRetries: "0"
   spark.rpc.numRetries: "0"
   spark.task.maxFailures: "0"
   spark.stage.maxConsecutiveAttempts: "0"
 arguments:
 - "size1k"
 - "test"
 - "100000"

Did you install the operator through the Helm chart?

Hi Yinan ,yes I installed it using helm chart..

We were using v1beta1 version ,can you please suggest which version supports sidecars please..?

https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/releases/tag/v1beta1-0.9.0-2.4.0. The Helm chart is based on v1beta1-0.8.2-2.4.0.

Add the following to your helm install command:
--set operatorVersion=v2.4.0-v1beta1-0.9.0

Let me know if it works so I can close this if it does.

Hello,
Sure, I will update the version today/tomorrow and try adding a sidecar and see if it works. Would it be fine to keep it open until then....?

Hi,
I am trying to use a sidecar container using Helm chart sparkoperator-0.6.0 v1beta2-1.0.1-2.4.4 but I don't see it working.


Can't Run on Sequoia (Not Notarized?)

Here's a screenshot of the window in Sequoia I see when running Stapler. Is Stapler notarized? This shows if I open from Finder or context menu. I don't recall seeing a dialog like this pre-Sequoia when I could force it open.

Yeah this is Sequoia being awkward.
I believe there are extra steps needed to run such an app https://www.reddit.com/r/MacOSBeta/comments/1dd8f1y/nonnotarised_apps_much_harder_to_open_in_macos/
There's an Alfred workflow to do the above, or you can roll your own solution.
I have no plans to notarise the app at this time.

I'm curious why you don't want to notarize. Not a judgement just genuinely curious. Hotline is notarized because I feel like the system adds a level of legitimacy for the user, but maybe I'm missing something. :)

No real reason, only that I've never notorized anything before and there is a lot on my todo list :)

Ah got it. Yeah it's a bit weird in Xcode seems like it should be more straightforward. Let me know if I can help but it's basically the same as producing a build for distribution with a few more checks.

Well, i didn't realise it was literally a one click from the Archive Organiser.
Will upload a 1.2.1 to give it a whirl

https://github.com/gingerbeardman/stapler/releases/tag/1.2.1


[RayJob] Improve flexibility to run specified YAML test

Why are these changes needed?

The purpose of this PR is the same as the https://github.com/ray-project/kuberay/pull/1812#issue-2070542043 , aiming to enhance flexibility in executing sample YAML tests.
With this PR, it is possible to specify one or multiple sample YAML test files. If no files are specified, the test will run on all sample YAML tests related to RayJob.
After the parameter --yaml-files, use the filename of the YAML for testing. Here's an example:

[Default] Run all YAML files.
python3 tests/test_sample_rayjob_yamls.py

Specified a single YAML file.
python3 tests/test_sample_rayjob_yamls.py --yaml-files ray_v1alpha1_rayjob.yaml
You can also specify multiple YAML files:
python3 tests/test_sample_rayjob_yamls.py --yaml-files ray_v1alpha1_rayjob.yaml ray-job.custom-head-svc.yaml

In summary, this PR can save developers time and provide more flexible testing options.
Related issue number
https://github.com/ray-project/kuberay/pull/1812#issuecomment-1889182458

Checks

[x] I've made sure the tests are passing.
Testing Strategy

[ ] Unit tests
[x] Manual tests
[ ] This PR is not tested :(

Following is the screenshot of manual test

[Default] Run all YAML files.

Specified two YAML files.

Would you mind rebasing with the master branch? Thanks!

cc @rueian would you mind reviewing this PR?

Sure. The changes align with the latest test_sample_raycluster_yamls.py and look good to me.
So now, we skip untracked rayjob tests as well. I found this behavior is quite implicit and silent which may takes some time to debug why does a test never be executed. I think logging a warning message would be helpful.


HA AddOn: Complete. the configuration

There is a new emulator mode comming with version 0.12
We have to extend the config for this.

let me know what's missing or where to find the parameters to be added.

Hi Michael,
I'm preparing a new config reader class in the proxy. The new one will be able to read the options.json directly and also supports a converter which resolve the dot-notation in the keywords. This still works and I have verified this with unit tests.
Now I just need to add an environment reader so that we can also read the MQTT variables directly. That will be ready soon, and then we can continue with these tickets.

There is still the configuration of the client-mode missing. The client mode is useful if the inverter only supports encrypted connections or if there are other reasons why the connection from an inverter can't be redirected to the proxy. The forward flags enabled an inverter simulation, which is used for connecting the proxy at the TSUN or Solarman Cloud. Then the proxy can forward the values which he get from the inverter to the cloud.
to configure the client mode you can easily add something like:
client_mode = {host = '<IP_ADDRESS>', port = 8899, forward = true}

to the inverter block.

implemented with #252


In speech service Jessa is renamed to Aria

The change didn't happen in private branch so I update it here directly.

@boltomli : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Error in log

https://mclo.gs/6xp5mMz
Seems to mention LootTweaker, and also reminds me of this this Witchery loot issue. Any idea what's causing it?

Can you check to see if this version fixes the issue?
justenoughmagiculture-1.12.2-1.2.0.jar.zip

@Invadermonky An error still appears in the log albeit it is slightly different: https://mclo.gs/EXM90Yi

I tested it for a bit and can reproduce it with this minimal set of mods:

I tracked down the issue and it is actually caused by LootTweaker.
The short version
LootTweaker uses mixins to patch vanilla MC's LootTable initialization. For the Loot Bag JEI category, JEM has to create a new loot table from Thaumcraft's WeightedRandomLoot API. The mixin, combined with JEM's client-side only implementation, is causing a null pointer exception that prevents the loot bag JEI category from loading.
The Verdict
Actually fixing this error on my part would involve completely rewriting the way the the LootBagEntry is coded. While I do want to improve how the category is handled, the actual fix is a long way out (no ETA). You can either report this to the LootTweaker mod dev or ignore the issue.

This error occurs when LootTweaker attempts to report a duplicate loot entry name, but cannot get the ID of the loot table.
It shouldn't crash, that's something I need to fix.
It looks like JEM is creating loot tables to make Thaumcraft's WeightedRandomLoot visible in Just Enough Resources?
If that's correct, I can make LootTweaker's autofixer ignore such loot tables, because they're an implementation detail. The errors it fixes only matter when the loot table is something a user would want to modify.

It looks like JEM is creating loot tables to make Thaumcraft's WeightedRandomLoot visible in Just Enough Resources?

That is exactly what JEM does. I was (and still am) trying to figure out the best way to handle new JEI integrations so I ended up using JER's existing loot table handler to create the Loot Bag category. (Translation: I hate GUIs)
The tables created are just kinda crappy attempts to smash two different API's together and create something working. If you are aware of a better way to handle these sorts of tables, I would love to know.

LootTweaker should no longer crash here as of 0.4.1

Tested and appears to be working. Closing this issue as fixed as of LootTweaker version 0.4.1.


Failing mainnet deploy: failed to submit extrinsic: Priority is too low

Terraform Version
Terraform v1.1.8
on linux_amd64
+ provider registry.terraform.io/threefoldtech/grid v0.1.31

Terraform Configuration Files
resource "grid_network" "net1" {
    nodes = [293]
    ip_range = "<IP_ADDRESS>/16"
    name = "bscnodenetw2"
    description = "BSC full node network2"
    add_wg_access = true
}
resource "grid_deployment" "d1" {
  node = 293
  network_name = grid_network.net1.name
  ip_range = lookup(grid_network.net1.nodes_ip_range, 293, "")
  disks {
    name = "root"
    size = 1750
  }
    vms {
    name = "bscfullnode"
    description ="Binance Smart Chain full node"
    flist = "https://hub.grid.tf/tf-official-vms/ubuntu-20.04-lts.flist"
    cpu = 32
    publicip = true
    publicip6 = false
    memory = 65536
#    rootfs_size = 25000
    mounts {
        disk_name = "root"
        mount_point = "/data"
    }
    planetary = true
    env_vars = {
      SSH_KEY ="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDYNeJXJV2FNEwuQz6e0jkKeqRbKWwftBKq+sjSTqa2x"
    }
  }
}

Expected Behavior
Just deploy the vm. I'm having this behavior not only with this ZOS node 293, but happens regularly.
Actual Behavior
Errors below
Steps to Reproduce
Please list the steps required to reproduce the issue, for example:

terraform apply

Different errors
First error was after the initial deploy: terraform apply -parallelism=1 -auto-approve
grid_network.net1: Creating...
grid_network.net1: Still creating... [10s elapsed]
grid_network.net1: Still creating... [20s elapsed]
grid_network.net1: Creation complete after 24s [id=1fccb0d2-b3ba-40ce-8505-b4d548f525f5]
grid_deployment.d1: Creating...
grid_deployment.d1: Still creating... [10s elapsed]
╷
│ Error: failed to deploy deployments: error waiting deployment: workload 0 failed within deployment 1414 with error failed to get deployment contract: contract not found: object not found; failed to revert deployments: failed to delete deployment: failed to cancel contract: failed to submit extrinsic: Priority is too low: (302980000 vs 302300000); try again

After trying again: terraform apply -parallelism=1 -auto-approve
grid_deployment.d1: Creating...
╷
│ Error: failed to create contract: ContractIsNotUnique

Then: terraform destroy -parallelism=1 -auto-approve
grid_network.net1: Destroying... [id=1fccb0d2-b3ba-40ce-8505-b4d548f525f5]
grid_network.net1: Destruction complete after 8s

Destroy complete! Resources: 1 destroyed.

After: terraform apply -parallelism=1 -auto-approve
grid_network.net1: Creating...
grid_network.net1: Still creating... [10s elapsed]
grid_network.net1: Creation complete after 16s [id=dbad6bae-b146-4f19-b1ae-8092c56f0c48]
grid_deployment.d1: Creating...
╷
│ Error: failed to create contract: ContractIsNotUnique

The contract was created but zos node doesn't find it and that's why the deployment fails. I suspect it's caused by this. The priority too low happens when two transactions are submitted concurrently from the same account. I tried create->delete ~20 times and it didn't fail once. So if it was used by someone else at the same time this could be the reason. The second apply failure was because the first deletion failed so the contract got leaked, you have to remove it manually on polkadot.

Please reopen if it reoccurs and only one accounts is using it

JFTR, I've just faced this while creating deployments using terraform's count (which I guess could be the problem) instead of multiple vms blocks within the deploy resource:
│ Error: failed to create contract: failed to create contract: failed to submit extrinsic: Priority is too low: (302980000 vs 302980000)

I also saw this error when attempting to destroy the QSFS example deployment. Retrying succeeded.

as mentioned in this comment https://github.com/threefoldtech/terraform-provider-grid/issues/235#issuecomment-1125182137
we have an issue to investigate how to do concurrent deployments but for now we should pass -parallelism=1 # as described here


Narrows Types for React 18 Upgrade

Hey, I just made a Pull Request!

The goal of this pull request is to narrow some type definition within the existing codebase so that they are compatible with React 18.
Since React 18 updates its types and narrows down what is acceptable, these changes will be mandatory to make to continue the upgrade workstream.
:heavy_check_mark: Checklist

[ ] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[ ] All your commits have a Signed-off-by line in the message. (more info)

PR was made incorrectly, closing


Deployments to Japan failures

Type of issue

[x] Bug
[ ] New feature
[ ] Enhancement

Description
Standard deployments to one of the 2 Japan regions can fail, apparently related to the RSA key used. To repro, try both Japan regions and RSA keys of 2048 and 4096 bits.

fixed


error with latest version of hugo

Your theme looks great but I got this error when I build with the latest hugo

Error: Error building site: failed to render pages: render of "home" failed: "C:\ms\ms-blx\themes\athena-hugo-theme\layouts\index.html:6:121": execute of template failed: template: index.html:25:13: executing "index.html" at <partial "post_block....>: error calling partial: "C:\ms\ms-blx\themes\athena-hugo-theme\layouts\partials\post_block.html:6:121": execute of template failed: template: partials/post_block.html:6:121: executing "partials/post_block.html" at <.Site.Params.datefor...>: invalid value; expected string

Thanks for reporting, I'll take a look later today.

@michaelsync Can't replicate on the example site with hugo version 0.55.6, the latest available on homebrew. If you link me to your code I can try to help debug. It's also possible that there is a bug, but that the parameter settings on the example site don't trigger it.

You are right.
I tried again with a new site. All good except this warrning .. So I guess it has something to do with my actual site.

WARN 2019/07/30 08:00:36 Page's .RSSLink is deprecated and will be removed in a future release. Use the Output Format's link, e.g. something like:
{{ with .OutputFormats.Get "RSS" }}{{ .RelPermalink }}{{ end }}.

Okie. I tried with my actual site and no more having an issue. Not sure what I did when I was getting that error. I was testing a lot of themes on that day.
Thank you so much for your quick response. I appreciated it.

Huh, at a glance that still looks somewhat strange to me. If you want to link me a site I can take a look.

Are you talking about the first screenshot (quickstart) or second one?
For the first one, here is the steps to replicate.

hugo new site quickstart
git clone your theme
update the theme in config.
hugo new posts/my-first-post.md
hugo server -D

(You can see those steps in the first screenshot. Please ignore echo theme => config part. It didn't work on Windows. )
For second one, I added you as a collobrator. You will get the invite.

Oh ok I see. You can get rid of the taxonomyTerm error by adding it to disableKinds in your config file. There's more explanation here.
The RSS warning is a non-breaking issue that I'll fix soon.

All right. Great. Thanks, man.


explain analyze not showing rows read from computed column full table scan

I have a table that includes the following columns: id and JSON
I create a computed column from the JSON column called Serial_Number and cast it as an INT.
I query on the new column for Serials between 10,500 and 11,000
select id, serial_number from vehicles where serial_number <= 11000 and serial_number
> 10500;

When I use explain on this query it notes a full table scan:
 tree |    field    |                     description
+------+-------------+------------------------------------------------------+
       | distributed | true
       | vectorized  | true
  scan |             |
       | table       | vehicles@primary
       | spans       | FULL SCAN
       | filter      | (serial_number <= 11000) AND (serial_number > 10500)
(6 rows)

When I use explain analyze on this query I get the following output, image attached.
It's not clear from the explain-analyze that a full table scan is happening.

It does say "Spans" which apparently infers a full table scan, but there's no clear full row count.

@RaduBerinde let's think about this for explain work


gallinulelike, bookways

This pull request was generated by the 'mq' tool
[test]
flake rate: 0.4
logical conflict every: 100
sleep for: 300s
[pullrequest]
requests per hour: 30
deps=[b,g]

/trunk merge


Set flux and helm-op versions in the upgrade doc

Helm upgrade with reuse values flag will prevent flux and helm-op images from being updated, this PR adds the two image tags to the upgrade command.

confirmed after running
 kubectl get deployments --namespace flux -o json | jq '.items[].spec.template.spec.containers[].image'
"quay.io/weaveworks/flux:1.8.1"
"quay.io/weaveworks/helm-operator:0.5.1"
"memcached:1.4.25"


Preprocessing of images to run inference

Hello, thank you very much for your work.
I am trying to preprocess a batch of images (I have my own dataset) the way you prepared your data. I'm following the notebook train_emotions.ipynb as it is in Tensforflow and I'm using that framework.
I have a question about the steps of the preprocessing, so I would like to ask you if you can tell me the correct steps. These are the steps I'm following, let me know if I'm right or if something is missing:

I already have my images with the faces detected and croppped, i.e, I have a dataset full of faces like this

img = cv2.imread(img_path)

img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

img = cv2.resize(img,(224,224))

Then your notebook shows you make a normalization
def mobilenet_preprocess_input(x,**kwargs):
x[..., 0] -= 103.939
x[..., 1] -= 116.779
x[..., 2] -= 123.68
return x
preprocessing_function=mobilenet_preprocess_input

Here I am having an issue because I cannot cast the subtraction operation between an integer and a float, so I changed it to
def mobilenet_preprocess_input(x,**kwargs):
x[..., 0] = x[..., 0] - 103.939
x[..., 1] = x[..., 1] - 116.779
x[..., 2] = x[..., 2] - 123.68
return x
preprocessing_function=mobilenet_preprocess_input
So, let me know if the process I'm following is correct or if there's something missing.
Thank you!

Thanks for your question! Your images look nice, I believe you could use the models from my repository. The preprocessing function is appropriate for my Tensorflow model (mobilenet_7.h5) only. If you want to use more accurate PyTorch models, the preprocessing is slightly different, something similar to https://github.com/HSE-asavchenko/face-emotion-recognition/blob/main/python-package/hsemotion/facial_emotions.py#L39

Thank you for your answer! Yep, I'm also checking the preprocessing to use Pytorch's pre-trained models.
As I could see you use these transformations:
IMG_SIZE=224
preprocess = transforms.Compose(
[
transforms.Resize((IMG_SIZE,IMG_SIZE)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225])
]
)
Am I right?
And thank you again for answering to my question :D

You're correct if you will use enet_b0 models. I personally recommend them because of their stable results on different datasets. You could also try enet_b2 models with potential higher accuracy, but it will be better to increase the resolution of an input image for enet_b2 models by setting IMG_SIZE=260. BTW, all technical details for PyTorch models are encapsulated into hsemotion python package, which you could use out-of-the box for the facial images from your dataset.

Thanks!!


Grab packaging data from setup.py?

NOTES:

IIUC, briefcase 2.x -- used to package Mu up until today -- seems to grab packaging (meta) data from setup.py.
Here's an excerpt from the current setup.py in mu:

...
    entry_points={"console_scripts": ["mu-editor = mu.app:run"]},
    options={  # Briefcase packaging options for OSX
        "app": {"formal_name": "mu-editor", "bundle": "mu.codewith.editor"},
        "macos": {"icon": "package/icons/mac_icon"},
    },
...

How about we have pup optionally grab its metadata from there? :-)

EXPLORED THIS:

briefcase extracted data from setup.py becase it used to be implemented as a setuptools command.

WENT CREATIVE:

Where in a standard wheel metadata could we store/keep pup-related packaging data.
Came up with something crazy, that seems to work, but that is horribly brittle.
pup will look into the standard wheel metadata for the project's dependencies.
For all those dependencies associated with the pup extra:

Assume the dependency name is a pup packaging paramenter (like --icon-path, for example).
Assume that the dependency version is specified as <operator> <value> and i) disregard the operator, while ii) taking the value as the parameter's value.

YIKES! :)

PROGRESS:

Merged PR #224 implementing the above described idea.

NEXT:

Have the CLI options override whatever is collected from the package metadata extra deps.

CLOSING after having merged PRs #224 and #226.