Plugin clearing the whole cache instead of specific urls

Confirmation

[X] My issue isn't already found on the issue tracker.
[X] I have replicated my issue using the latest version of the plugin and it is still present.

WordPress version
5.8.1
Cloudflare-WordPress version
4.5.1
PHP version
7.3.31
Expected result
Expected only individual URLs to clear on woocommerce product update when urls are sent via CF\WordPress\WordPressClientAPI->zonePurgeFiles
Actual result
Cloudflare audit log shows "Purge everything" action
Steps to reproduce

Save product
Check audit log on cloudflare dashboard to see Purge everything is ran
Verify zonePurgeCache is never ran

Additional factoids
Using APO.  zonePurgeFiles ran 3 batches upon product save.  Each time there are only requests for specifc URLs to be cleared.  zonePurgeCache is never ran.  Full backtrace available upon request
Backtrace excerpt:
#2  CF\WordPress\WordPressClientAPI->zonePurgeFiles({MYZONEKEY}
Array ([0] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/queen
[1] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/queen/feed
[2] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/king
[3] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/king/feed
[4] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/full
[5] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/full/feed
[6] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/cal-king
[7] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/cal-king/feed
[8] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/twinxl
[9] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/twinxl/feed
[10] => http://www.{MYDOMAIN}.com/product-attribute/sheet-type/sheet-set
[11] => http://www.{MYDOMAIN}.com/product-attribute/sheet-type/sheet-set/feed
[12] => http://www.{MYDOMAIN}.com/mattress-blog/author/eric
[13] => http://www.{MYDOMAIN}.com/mattress-blog/author/eric/feed
[14] => http://www.{MYDOMAIN}.com/shop
[15] => http://www.{MYDOMAIN}.com/shop/feed/
[16] => http://www.{MYDOMAIN}.com/product/sleep-and-beyond-natural-cotton-deep-pocket-mysheet-set
[17] => http://www.{MYDOMAIN}.com/feed/rdf
[18] => http://www.{MYDOMAIN}.com/feed/rss
[19] => http://www.{MYDOMAIN}.com/feed
[20] => http://www.{MYDOMAIN}.com/feed/atom
[21] => http://www.{MYDOMAIN}.com/comments/feed
[22] => http://www.{MYDOMAIN}.com/product/sleep-and-beyond-natural-cotton-deep-pocket-mysheet-set/feed
[23] => http://www.{MYDOMAIN}.com/
[24] => http://www.{MYDOMAIN}.com/mattress-blog
[25] => http://www.{MYDOMAIN}.com/page/1/
[26] => http://www.{MYDOMAIN}.com/page/2/
[27] => http://www.{MYDOMAIN}.com/page/3/)) called at [/home/customer/www/{MYDOMAIN}.com/releases/77/web/wp-content/plugins/cloudflare/src/WordPress/Hooks.php:158]
#2  CF\WordPress\WordPressClientAPI->zonePurgeFiles({MYZONEKEY}
Array ([0] => https://www.{MYDOMAIN}.com/shop
[1] => https://www.{MYDOMAIN}.com/shop/feed/
[2] => https://www.{MYDOMAIN}.com/product/sleep-and-beyond-natural-cotton-deep-pocket-mysheet-set
[3] => https://www.{MYDOMAIN}.com/feed/rdf
[4] => https://www.{MYDOMAIN}.com/feed/rss
[5] => https://www.{MYDOMAIN}.com/feed
[6] => https://www.{MYDOMAIN}.com/feed/atom
[7] => https://www.{MYDOMAIN}.com/comments/feed
[8] => https://www.{MYDOMAIN}.com/product/sleep-and-beyond-natural-cotton-deep-pocket-mysheet-set/feed
[9] => https://www.{MYDOMAIN}.com/
[10] => https://www.{MYDOMAIN}.com/mattress-blog
[11] => https://www.{MYDOMAIN}.com/page/1/
[12] => https://www.{MYDOMAIN}.com/page/2/
[13] => https://www.{MYDOMAIN}.com/page/3/
[14] => http://www.{MYDOMAIN}.com/brand/sleep-and-beyond
[15] => http://www.{MYDOMAIN}.com/brand/sleep-and-beyond/feed
[16] => http://www.{MYDOMAIN}.com/product-category/natural-bedding
[17] => http://www.{MYDOMAIN}.com/product-category/natural-bedding/feed
[18] => http://www.{MYDOMAIN}.com/product-category/gift-items
[19] => http://www.{MYDOMAIN}.com/product-category/gift-items/feed
[20] => http://www.{MYDOMAIN}.com/product-category/back-to-school
[21] => http://www.{MYDOMAIN}.com/product-category/back-to-school/feed
[22] => http://www.{MYDOMAIN}.com/product-category/natural-bedding/twinxl
[23] => http://www.{MYDOMAIN}.com/product-category/natural-bedding/twinxl/feed
[24] => http://www.{MYDOMAIN}.com/product-category/natural-bedding/organic-sheets
[25] => http://www.{MYDOMAIN}.com/product-category/natural-bedding/organic-sheets/feed
[26] => http://www.{MYDOMAIN}.com/product-category/gift-items/gifts100
[27] => http://www.{MYDOMAIN}.com/product-category/gift-items/gifts100/feed
[28] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/twin
[29] => http://www.{MYDOMAIN}.com/product-attribute/sheet-size/twin/feed)) called at [/home/customer/www/{MYDOMAIN}.com/releases/77/web/wp-content/plugins/cloudflare/src/WordPress/Hooks.php:158]
#2  CF\WordPress\WordPressClientAPI->zonePurgeFiles({MYZONEKEY}
Array ([0] => https://www.{MYDOMAIN}.com/brand/sleep-and-beyond
[1] => https://www.{MYDOMAIN}.com/brand/sleep-and-beyond/feed
[2] => https://www.{MYDOMAIN}.com/product-category/natural-bedding
[3] => https://www.{MYDOMAIN}.com/product-category/natural-bedding/feed
[4] => https://www.{MYDOMAIN}.com/product-category/gift-items
[5] => https://www.{MYDOMAIN}.com/product-category/gift-items/feed
[6] => https://www.{MYDOMAIN}.com/product-category/back-to-school
[7] => https://www.{MYDOMAIN}.com/product-category/back-to-school/feed
[8] => https://www.{MYDOMAIN}.com/product-category/natural-bedding/twinxl
[9] => https://www.{MYDOMAIN}.com/product-category/natural-bedding/twinxl/feed
[10] => https://www.{MYDOMAIN}.com/product-category/natural-bedding/organic-sheets
[11] => https://www.{MYDOMAIN}.com/product-category/natural-bedding/organic-sheets/feed
[12] => https://www.{MYDOMAIN}.com/product-category/gift-items/gifts100
[13] => https://www.{MYDOMAIN}.com/product-category/gift-items/gifts100/feed
[14] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/twin
[15] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/twin/feed
[16] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/queen
[17] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/queen/feed
[18] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/king
[19] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/king/feed
[20] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/full
[21] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/full/feed
[22] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/cal-king
[23] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/cal-king/feed
[24] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/twinxl
[25] => https://www.{MYDOMAIN}.com/product-attribute/sheet-size/twinxl/feed
[26] => https://www.{MYDOMAIN}.com/product-attribute/sheet-type/sheet-set
[27] => https://www.{MYDOMAIN}.com/product-attribute/sheet-type/sheet-set/feed
[28] => https://www.{MYDOMAIN}.com/mattress-blog/author/eric
[29] => https://www.{MYDOMAIN}.com/mattress-blog/author/eric/feed)) called at [/home/customer/www/{MYDOMAIN}.com/releases/77/web/wp-content/plugins/cloudflare/src/WordPress/Hooks.php:158]
References
No response

I found out this was caused by Siteground Optimizer plugin for WP.  Instead of purging individual urls, it purges the whole CF cache when using the cloudflare full page caching.  Will be contacting siteground to request individual pages be cleared instead of the full cache.

For anyone interested /wp-content/plugins/sg-cachepress/core/Supercacher/Supercacher.php
This method is supposed to clear certain urls, but Cloudflare::get_instance()->purge_cache(); does a purge everything
`	/**
* Purge the cache for all elements in the queue.
*
* @since 5.8.3
*/
public function purge_queue() {
// Get the current purge queue.
$queue = get_option( 'siteground_optimizer_smart_cache_purge_queue', array() );
	// Bail if the queue is empty.
	if ( empty( $queue ) ) {
		return;
	}

	if ( 10 > count( $queue ) ) {

		// Purge the cache for all URLs in the queue.
		foreach ( $queue as $url ) {
			$this->purge_cache_request(
				$url,
				get_home_url( null, '/' ) === $url ? false : true
			);
		}
	} else {
		$this->purge_everything();
	}

	// Flush the Cloudflare cache if the optimization is enabled.
	if ( 1 === intval( get_option( 'siteground_optimizer_cloudflare_optimization', 0 ) ) ) {
		Cloudflare::get_instance()->purge_cache();
	}

	// Empty the purge queue after cache is cleared.
	update_option( 'siteground_optimizer_smart_cache_purge_queue', array() );
}`


reconfigure cwl files and use yaml manifests for sbcgc

CWL files are edited to work with the new workflow i.e starting with a list of SeriesInstanceUIDs. However since sbcgc can not be multiplexed in any other way other than files or file metadata, yaml files containing list of seriesinstanceuids are passed. Accordingly, preprocessing notebook is updated to generate yaml sample manifests for sbcgc and the sample manifest has also been updated.
I had been using native gsutil for copying extracted files to gcp buckets, decided to give s5cmd a try with hmac credentials and at least one of the two steps are faster now.
A minor typo in dicomsegsr notebook is also addressed.
With this, I believe I addressed everything I wanted to before we can create a tag.

@vkt1414 how is the HMAC key passed to the workflow? Did you make a dedicated service account for creating that key?

@vkt1414 how is the HMAC key passed to the workflow? Did you make a dedicated service account for creating that key?

The post processing notebook is only run on an VM or our own PC. So, we only need to enter them at the time of execution manually.

And I created the HMAC key from interoperability settings on Cloud Storage

Makes sense. For the future, you may consider generating those for SAs - it is a better security practice to create those HMAC keys for dedicated SAs with minimum limited privileges.


Implement async/await semantics more closely in coroutines

Looking more closely at the async/await proposal it seems that every yield should at least wait one tick. Currently, if it yields a value or settled promise then the next step is called synchronously (_runAction instead of _when). This could even lead to a stack overflow.
Can anyone confirm this?

Just to get this out in the open: In general, it hasn't ever been my intention for creed to match ES6 semantics exactly.  My intention is for it to be highly performant, architecturally elegant (imho!), and compact, and to have a simple but useful API.
Yeah, stack overflow is possible, but hard to imagine in practice.  The chance of writing a real coroutine that yields that many settled promises or values, with no async between, seems very unlikely!  I've been using it in production code for over a year, and never seen a coroutine stack that is even remotely near overflowing.  Tens of frames is the deepest I've ever seen ... not hundreds or thousands.
That said, we should at least see what happens to performance when switching to _when.  I know I played around with it in the past, but the code has changed since then, and I've forgotten what the impact was.

I know that matching semantics or providing a polyfill is not the point of creed, I just think that we should avoid deviations where they are unnecessary and could lead to quirks in details, so I wanted to raise this point.
Apart from overflowing a stack, there might be differences if we have two coroutines running concurrently:
const example = coroutine(function* (x) {
    for (let i = 0; i < 10; i++)
        yield console.log(x, i);
});
example("a");
example("b");

In theory, they should be interleaved.
Yes, it would be nice to see a performance comparison, though I guess the impact on real-world code is minor as yield would only be used on actual promises in there.

I guess the impact on real-world code is minor as yield would only be used on actual promises in there

Yeah, that's my feeling.  I don't think anyone would ever actually write code like that console.log loop.  And if they did, I doubt they would care that it wasn't interleaved.
If there are cases where a reasonable usage might cause a problem, and if the performance checks out, it could be worth changing it.  I'll try it with _when later tonight and post some results.

I'm running an unrelated experiment (for work) on my laptop tonight, so I don't really have any perf results that I'd call "reliable" :)  But, I did try a bunch of runs of the doxbee perf test anyway just to see if there was any glaringly obvious difference.  There wasn't, which is at least interesting enough to try it when my machine is idle, and to try the other perf tests as well.  I'll try to post some representative results tomorrow.

Given your benchmark in #20 I went forward with this.

Cool :+1:


Added nuget package publishing

Finally this one is working it seems (at least on azure devops)

where is the package version coming from? since we rely on beta dependencies (i.e. Roslyn) the packages must be pre release versions too

Package version will come from our release version (if we issue a tag).  There isn't a hard and fast rule that we can't take a dependency on a beta package... it's just recommended.
We could always postfix the packages with -beta if you want.  Either way anyone that takes a dependency is going to have that beta dependency whether our version is a beta or not.

Package version will come from our release version (if we issue a tag). There isn't a hard and fast rule that we can't take a dependency on a beta package... it's just recommended.

actually you are right.. I remembered this being an error but they changed it a while back. Then it's all fine 👍


Convert readthedocs link for their .org -> .io migration for hosted projects

As per their blog post of the 27th April ‘Securing subdomains’:

Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.

Test Plan: Manually visited all the links I’ve modified.

The link on the Github repo description also needs updating.

I can't modify the repo, @lepture will need to do that.


allow lossy recompression of images (with a different quality)

I wanted to recompress the images on some of the pages (of a scanned document) to a lower quality. To make the file smaller.
Ideally, there would be an option like --quality N:PAGES.
Since there is no such option/tool, first, I simplified the task for myself by recompressing all images from the original, saving that as a new file, and finally joining pages from the two files the way I want.
As for recompression, a script can be written on top of pikepdf (the Python module often mentioned here in the issues).
And actually a tool that uses pikepdf, ocrmypdf, already has a module for this purpose: optimize.py.
One can either tweak the options of ocrmypdf not to do the OCR, but just the recompression (see below in my example with a Makefile). Or, the file optimize.py is actually almost ready to be run as a standalone script.
First, to run it as a standalone script, one has to copy it out of the package tree (otherwise, some imports try to import a wrong module from the same package instead of taking the global one: subprocess.py is present in both places, and if you run the script from the package's tree, it first finds the one in the package).
Then I made small modifications to the script to make it more convenient:
--- OCRmyPDF/src/ocrmypdf/optimize.py	2022-06-08 06:21:51.659092559 +0300
+++ optimize.py	2022-06-08 07:15:52.993430611 +0300
@@ -46,7 +46,7 @@
 from ocrmypdf.exceptions import OutputFileAccessError
 from ocrmypdf.helpers import IMG2PDF_KWARGS, safe_symlink

-log = logging.getLogger(__name__)
+log = logging.getLogger("ocrmypdf")

 DEFAULT_JPEG_QUALITY = 75
 DEFAULT_PNG_QUALITY = 70
@@ -78,7 +78,10 @@
     del pike  # unused args
     del root

+    log.debug(f"start extract_image_filter xref {xref}")
+
     if image.Subtype != Name.Image:
+        log.debug(f"extract_image_filter xref {xref}: {image.Subtype} != Name.Image")
         return None
     if image.Length < 100:
         log.debug(f"xref {xref}: skipping image with small stream size")
@@ -278,6 +281,7 @@

     working_xrefs = include_xrefs - exclude_xrefs
     for xref in working_xrefs:
+        log.debug(f"about to extract xref {xref}")
         image = pike.get_object((xref, 0))
         try:
             result = extract_fn(
@@ -677,9 +681,12 @@
         safe_symlink(target_file, output_file)

-def main(infile, outfile, level, jobs=1):
+def main(infile, outfile, level, jpegq, pngq, jobs=1):
     from shutil import copy  # pylint: disable=import-outside-toplevel
     from tempfile import TemporaryDirectory  # pylint: disable=import-outside-toplevel
+    from ocrmypdf.api import Verbosity, configure_logging
+
+    configure_logging(Verbosity.debug)

     class OptimizeOptions:
         """Emulate ocrmypdf's options"""
@@ -702,8 +709,8 @@
         input_file=infile,
         jobs=jobs,
         optimize_=int(level),
-        jpeg_quality=0,  # Use default
-        png_quality=0,
+        jpeg_quality=int(jpegq),  # 0 for default
+        png_quality=int(pngq),
         jb2lossy=False,
     )

@@ -724,4 +731,4 @@

 if __name__ == '__main__':
-    main(sys.argv[1], sys.argv[2], sys.argv[3])
+    main(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5])

And here is my example where I test how it works in the form of a Makefile:
ALL := $(foreach join,jam qpdf,\
	$(foreach recompr,ocrmypdf optimize,\
		pages_$(join)_$(recompr).pdf))

all: $(ALL)

clean::
	rm -fv $(ALL)

# Two methods to recompress:

%_ocrmypdf.pdf: %.pdf
	ocrmypdf --output-type pdf \
		--verbose 2 \
		--skip-big 1 \
		--optimize 3 --jpeg-quality 5 \
		$< -- \
		$@

%_optimize.pdf: %.pdf
	python3 optimize.py $< $@ 2 5 0

# Two methods to create a PDF by joining pages:

pages_jam.pdf: scan.pdf
	pdfjam --fitpaper true \
		$^ $^ \
		--landscape --angle 270 \
		--outfile $@

clean::
	rm -fv pages_jam.pdf

pages_qpdf.pdf: scan.pdf
	qpdf --empty \
		--pages $^ $^ -- \
		--rotate=90 \
		$@

clean::
	rm -fv pages_qpdf.pdf

The original scan.pdf will be attached so that you can re-run my example.
scan.pdf
The results:
$ du -shL scan.pdf pages*.pdf
112K	scan.pdf
212K	pages_jam_ocrmypdf.pdf
212K	pages_jam_optimize.pdf
212K	pages_jam.pdf
28K	pages_qpdf_ocrmypdf.pdf
24K	pages_qpdf_optimize.pdf
108K	pages_qpdf.pdf

If the processed file was created by qpdf, then recompression works.
If by pdfjam, then not. It's due to the objects containing the images having some different (unexpected) type in the PDF:
$ make pages_jam_optimize.pdf
python3 optimize.py pages_jam.pdf pages_jam_optimize.pdf 2 5 0
xref 7: treating as an optimization candidate
xref 82: treating as an optimization candidate
about to extract xref 82
start extract_image_filter xref 82
extract_image_filter xref 82: /Form != Name.Image
about to extract xref 7
start extract_image_filter xref 7
extract_image_filter xref 7: /Form != Name.Image
Optimizable images: JPEGs: 0 PNGs: 0
xref 7: treating as an optimization candidate
xref 82: treating as an optimization candidate
about to extract xref 82
start extract_image_filter xref 82
extract_image_filter xref 82: /Form != Name.Image
about to extract xref 7
start extract_image_filter xref 7
extract_image_filter xref 7: /Form != Name.Image
xref 7: treating as an optimization candidate
xref 82: treating as an optimization candidate
about to extract xref 82
start extract_image_filter xref 82
extract_image_filter xref 82: /Form != Name.Image
about to extract xref 7
start extract_image_filter xref 7
extract_image_filter xref 7: /Form != Name.Image
Optimizable images: JBIG2 groups: 0
Optimize ratio: 1.01 savings: 0.5%
os.symlink(/tmp/tmpsidiaa4n/out.opt.pdf, /tmp/tmpsidiaa4n/out.pdf)

Note the debugging message:
extract_image_filter xref 82: /Form != Name.Image

that explains the failure to find and process those images. Reported this at https://github.com/ocrmypdf/OCRmyPDF/issues/977.

Thanks for this and for pointing to here from all those other issues. I may have mentioned somewhere that I have a tool I wrote for work that does image resampling of this type with a few restrictions, but it uses the GraphicsMagick++ library and ghostscript. I could make it open source with a few small enhancements. I don't see myself putting image handling logic into qpdf but I might consider it at some point. I have some code I wrote 20 years ago at the same time I was originally working on qpdf that implements generalized image filtering, but it only supports tiff, png, and jpeg files (using the respective third-party libraries) and has a limited collection of things it can do. When I wrote it originally, it was 10x or 100x faster than ImageMagick depending on the operation, but these days, other graphics libraries are comparable in performance or faster. I wrote it at a time when I was optimizing for memory usage more than performance. Using that tool, I was able to create elaborate pipelines where I could read an image and generate multiple output images of differing characteristics in a single pass all without loading more than a few scanlines of any image into memory at once. I still have that code, and it still runs and passes its test suites. (I revived it not that long ago and brought it up to date.) We'll see. Clearly this is a feature that a lot of people are interested in.
Hopefully people will find your solution at least in the interim. Thanks for sharing

Is there a plan to show images inside Form XObjects in page.images in qpdf/pikepdf?

@benbro It could be done. Please open a separate issue with this, and I'll tag it as an enhancement.

imz: how much compression did you achieve? Like on average or so?

jberkenbilt wrote:

I don't see myself putting image handling logic into qpdf but I might consider it at some point

Actually, many .pdf files are so simple that they don't even have any images. I oddly enough have
tons of old .pdf files that are just emails actually, or FAX. One page or two pages maximum.
Right now I am testing qpdf --compress-streams=y --object-streams=generate and that actually
makes some noticable reduction in file size. So of course not disagreeing - just pointing out that
use cases may vary among different folks.

@imz thank you, your hacked up optimize.py saved me... I could not find any other working way to recompress jpegs inside a pdf to get slightly lower quality, to be able to get the overall pdf size below a threshold. Various long gs (ghostscript) cmdline incantations I found that claimed to do it just would not change the final pdf at all.


Docs & Warning on sparse categorical features

Hello,
I was trying to use text hash (random value from 0 to Int32.MaxValue) as a categorical feature in LightGBM and got into the trouble of memory consumption. Later I realize how lightGBM make decision rule for categorical variables. Using bitset. It seems that for every decision rule we need a bitset with length max(value). That is for Int32.MaxValue it leads to ~250 MiB for one decision!
Please, consider my small edits to the documentation and code to help other users to avoid such mistake.
Thanks!

Could you please look what's wrong with docs check?

Hi @dmitryikh !
Thank you for the proposed docs enhancement.
Unfortunately, modifying parameters description is not so trivial. You should make your changes into the config.h file and the run python ./helper/parameter_generator.py script. The python script will update the docs. That is how it works.
Also, I think that your valuable information should be reflected in other places where the information about categorical features appears. You can find these places from #1567.

@guolinke What do you think about this PR? If it's valuable note, then I can finish this PR today, so it will get in 2.1.3 release.

Sorry for delay. I will have access to my laptop only tommorow evening to finish my work. But It is OK if you finish it by you selves because of deadline.

@dmitryikh No problem! Glad that you haven't abandoned the PR! It's OK that you'll finish it in next couple of days.


Oidc ui tests

Changes in this Pull Request:

Updated test suite for OIDC mode.

Mandatory checks:

[x] latest changes were fetched from the upstream branch before creating this PR (branch is up to date)
[x] changes were tested manually
[ ] unit tests were properly implemented
[ ] communication about interdependent changes has been sent to the team (if applicable)
[x] respective Jenkins jobs were referenced in additional context section of this PR

OSCM Build References:

OSCM_Integration_Tests_Upgrade
OSCM_Integration_Tests_OIDC

This change is

Additionally, why all the APP related tests are skipped in OIDC mode? The only difference in this mode is using other user credentials.


Feature request - Multiple Boss Bar

Allow the user to set multiple HP bars hidden beneath the current boss bar for usage with Paragon Monsters.

You can currently have multiple bars, i'm not sure what you mean with multiple hp bar, usually when you have a multy phase battle you just switch creature, could you elaborate for me please?

You can currently have multiple bars, i'm not sure what you mean with multiple hp bar, usually when you have a multy phase battle you just switch creature, could you elaborate for me please?

Yeah I currently just switch the creature or just change the HP accordingly. But it would be more dramatic if there was another bar hidden beneath the currently dropping Boss bar.
For example, the first bar is Red, then beneath it is a second one with a blue color, and finally the dark background when that second bar also starts to deplete (similar to the health of some fighting games).
Perhaps it could be made to queue up multiple creatures or set a number of times that the target creature regains HP when it goes to zero (to define a second phase within the same token)

The idea is cool but it's a lot of work to avoid switching a token haha :) - and i have 2 more modules coming up soon lol

Hey, no problem!
If you think it is too much work then please close this issue, just throwing out ideas at random lol


Preflight endpoints not deployed by default

The OPTIONS endpoints are not being deployed by default. I figured out by looking at the plugin source code that you need to add a --all flag to the command to get the OPTIONS endpoints to deploy.

@Borfswitch thanks for reporting!
This is done intentionally because multiple functions with different HTTP methods can share the same path. The question I was struggling with was: If one of x functions with the same path are being deployed, should it deploy the preflight endpoint for all methods?
Any thoughts on this?

@joostfarla, I think it would be nice if there was some way to specify which endpoints within a function should have CORS enabled, rather than just applying it to all endpoints within a function.
Are there plans to document the usage of the --all flag?
It also might be nice to have something  like a --cors flag that would deploy the preflight endpoints only for the function(s) currently being deployed, so that you aren't forced to always use --all.

Most edge cases can be solved by making proper use of templates & variables. The use of the --all flag has already been documented , so I will close this issue.


Relevant Open Graph image for repositories

Link overviews based on Open Graph meta data are everywhere and are now an essential part of navigating.
GitHub correctly serves OG data for link to users. But links to repositories are much more interesting.
Here's how a link to a repository looks like today in a random application:

The problem here is that the image provided for GitHub repositories (and issues, PR, etc.) is the avatar of the repository owner, which makes zero sense.
Such a preview is made by many tools everywhere and is based on the same meta data than for any other site/article.
We need a way to specify what's the relevant illustration for a repository (for example a conventional file in the repository itself) , just like we already specify the description, and this image should be served in the relevant meta tag:
 <meta property="og:image" content="https://some/path/to/the/repository/illustration?s=400&v=4" />

Hi, I believe this is a question about GitHub.com, the website. This issue tracker is for a command-line utility called hub, not the website itself. For reporting bugs and requesting features for GitHub the website, please visit https://github.com/contact. Thank you!


Exception when running action: The operation cannot be performed at this time

I get the following error running this action since recently:
ResourceConflictException: The operation cannot be performed at this time. An update is in progress for resource: xxxxxxx

The PR with the fix was merged. Thanks!


A problem about relation between "openblas_set_num_threads" and CPU waste and time cost?

First, I will introduce ,my background. I have to accelerate a matrix calculation. My hardware is RK3288 which have four Quad-Core Cortex-A17 cpu. When I use it by default,
it is waste much more time to calculate, and waste much CPU,as below,

cpu cost:

however, when I set the openblas_num_threads,like this:
       openblas_set_num_threads(1);
I found, it waste not much time and CPU waste is much lower,as below,

cpu cost:

clearly, waste time and cpu waste both reduced. So,  what happen for this problem?

I suspect without setting the number of threads it will try to use all four cores, causing conflicts with the other processes on your system (leading to rescheduling and invalidating caches). How is the performance with 2 or 3 threads (leaving one core for everybody else) ? It could also be that one of the OpenBLAS functions you use is needlessly trying to parallelize its workload, so it might be useful to know which functions you are calling, and how big your matrix sizes are.

@martin-frbg Thanks for your quick reply. I print default openblas_num_thread is 4. I have make a try. When I use 2 or 3 threads, the performance it similar like thread 4. CPU and time waste is still much higher.Here is function I used:
    const int inc_x = 1;
    const int inc_y = 1;
    const float alpha = 1.0f;
    const float beta = 0.0f;
  cblas_sgemv(CblasRowMajor, CblasNoTrans, features_in_lib, featurelen, alpha, (float *) features.data(), featurelen, feature_to_compare, 1, beta, scores, inc_y);
And my matrix is about is about : AB here, 6000128 (A),128*1(B)

I just pull a version of openblas about Dec,2017, not a release version

I just pull a version of openblas about Dec,2017, not a release version

Could you try to record source of waste with 'perf record' and 'perf report' and paste top page from later?
Also note that some spectre patches rewrite user mode codes and rob half of speed, best to recompile with spectre-aware gcc to run on patched kernel, to have nop sled in places to be live-patched.

Running sgemv.goto 5000 6000 1000 from the benchmarks directory on an Asus Tinkerboard, i get:
THREADS           1                            2                     3                     4
5000x5000 344.05 MFlops 0.145s    417.69 MFlops 0.119s  558.78 MFlops 0.089s   624.05 MFlops  0.08s
6000x6000 312.73 MFlops 0.230s    432.10 MFlops 0.167s  532.67 MFlops 0.135s   576.67 MFlops  0.125s

Thanks for your kind reply @martin-frbg .   Actually，time cost is real have much influence for me. I want to use much small cpu waste because my limit of my hardware, so Is there some parameters for me to reduce cpu waste? Need I have rebuild it?

I did not find a problem with the test, perhaps there is something special about your program that makes it behave differently than the gemv.goto benchmark.
Do you see the same problem when you try sgemv.goto 21000 21000 1 like I did ? (You need to run make in the benchmark directory first to get it)

I do not see anything suspicious with xianyi's dgemv test case from https://github.com/xianyi/OpenBLAS/issues/532#issuecomment-99596418 either (running with either "6000 128" or "128 6000" for 1000 iterations each). Unlikely that using cblas_sgemv instead of sgemv adds that much overhead to cause your problem. Perhaps retry with current 0.3.0 release ?

I think the difference is from when you cross compile. Did you cross compile for test on tinker board?

Good point, I compile locally. (I do see an improvement now with oon3m0oo's recent commit that cleaned up the memory initialization on thread startup, so sunbinbin1991 may want to try the current develop tree now if he is still interested)

As for my problem, most of possible reason is limitation of my hardware. In my project not only openblas is running, also, some other application is still on, maybe this is reason when I use "multi-thread" could waste much more time. Actually, even “openblas_set_num_threads = 1“, my matrix calculate is water less than 1ms, that's enough for me.


SAP OpenAPI Specification file cannot be imported

Current Behavior
When importing this SAP OpenAPI Specification file, the toolbox encounters multiple issues:

it fails to validate the OpenAPI Specification file and thus exits without doing anything

$ 3scale import openapi -t sap_api -d<EMAIL_ADDRESS>examples/analytics_reporting_view.yaml
Error: OpenAPI schema validation failed: The property '#/securityDefinitions/OAuth2' of type object did not match any of the required schemas

if the OpenAPI Specification is changed to fix the previous error, the 3scale toolbox fails with:

$ 3scale import openapi -t sap_api -d<EMAIL_ADDRESS>examples/analytics_reporting_view.yaml
Created service id:<PHONE_NUMBER>839, name: Analysis Reporting View Management API
Error: Metohd has not been saved. {"system_name"=>["invalid"]}

Expected Behavior
The 3scale toolbox detects the provided file does not match the OpenAPI Specification 2.0 JSON Schema and prints an error message.
The command is re-run with an additional parameter to skip the OpenAPI Specification validation. When the ActiveDocs is created or updated, the skip_swagger_validations field is set to true.
The operationId field is properly sanitized to be used as a system_name.
Business Justification
SAP is an important partner for Red Hat and an important software editor for our customers. Their OpenAPI Specification files do not fully conform to the JSON schema but it is a very common case since OAS is very slow to integrate RFEs from the community. In fact, most OAS files found on customer site, at some point in time, do not fully conform to the OAS.
Copy of the SAP OpenAPI Specification file is provided here:
https://gist.github.com/nmasse-itix/74919993967a8083345d8fa2f40b0b0a

When  I just tried to view/download it.... it required a login to be able to access it.
Are you sure the toolbox can actually access the file?

Yes, I know you have to register to download the SAP OAS and this is why I provided a copy for @eguzki:

Copy of the SAP OpenAPI Specification file is provided here:
https://gist.github.com/nmasse-itix/74919993967a8083345d8fa2f40b0b0a


Remove #[inline(always)] and check output offsets to avoid panic

Signed-off-by: Breezewish<EMAIL_ADDRESS>
What have you changed? (mandatory)

This PR removes those #[inline(always)] for the same reason as https://github.com/rust-lang/rust/pull/43367

This PR adds check of output offsets to avoid panic when given output offsets are invalid.

Both of the changes are extracted from https://github.com/tikv/tikv/pull/3898
What are the type of the changes? (mandatory)

Improvement (change which is an improvement to an existing feature)

/run-integration-tests

/run-integration-common-test

@AndreMouche This is an urgent PR to trace issues found in our stability test. Please approve it. Thanks!

@kennytm You don't need to re-run it. The integration common test has known bugs that will fail :(

@breeswish It has been fixed this afternoon.

@kennytm Wow, good news! :)


⚠ ClamAV has degraded performance

In 45aca1d, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 194 ms

Resolved: ClamAV performance has improved in 5bb6a35.


LUN-266: Upgrade circleci images

This pull request belongs to an issue on our bugtracker.
You can find it there by looking for an issue with the key which is mentioned in the title of this pull request.
It starts with the keyword LUN.

xcode/mac os will be done in LUN-295


Add datasets require for spark ebook project

This PR adds a few datasets for an interactive ebook project about Spark from MAPR and O'Reilly Media.

Works for me! We'll need to make sure these get included in the refactored version of this image in #71.

This is great!  Thanks @rgbkrk!  Any insight on when will these show up on the tmpnb containers?

If we don't get #71 merged and in a happy state soon, I'll push the current version of the images out soon enough.

Great!  My only concern is that we're trying to get this out for Strata next week (the 29th of September) and we need a few days to test it.

I was planning on getting tini into jupyter/minimal-notebook tonight. After that, we might be able to merge #71 but we need to take an accounting of what else needs to be resolved there first for redeploy.
@rgrkrk do you have a staging area in which to test new tmpnb.org deploys before they go live?
Sent from my iPad

On Sep 22, 2015, at 12:56 PM, Kyle Kelley<EMAIL_ADDRESS>wrote:
If we don't get #71 merged and in a happy state soon, I'll push the current version of the images out soon enough.
—
Reply to this email directly or view it on GitHub.

I launch new servers

I accidentally commented before finalizing my comment. :stuck_out_tongue_closed_eyes: Don't hit shift-enter.
Every time I deploy, it tends to be a fresh deploy with a clean slate. Sometimes I just update the image on the server, but in the case of this one I'd do a brand new one.

The reason why I do new machines is because we

wait to migrate people off of old nodes
assume they're all compromised wastelands of containers


[Doc Improvement][Tab/Bot app display behavior in mobile(iOS/Android)][2678646]

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/design/tabs-mobile.md
90
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 43098c4:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/design/tabs-mobile.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/design/tabs-mobile.md
90
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 9204b12:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/design/tabs-mobile.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/design/tabs-mobile.md
90
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 798cdae:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/design/tabs-mobile.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/design/tabs-mobile.md
90
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/design/tabs-mobile.md
90
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit a6b06d6:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/design/tabs-mobile.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/design/tabs-mobile.md
90
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 292a87a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/design/tabs-mobile.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


Image Broken:"VPR/query_images/query_images_2/@120.43912<EMAIL_ADDRESS>

Hi,
I successfully downloaded the VPR file and unzipped it, however, when I evaluated the VPR metric, I encountered an issue with the file query_images/query_images_2/@120.43912<EMAIL_ADDRESS>It failed to load correctly, resulting in the error "SyntaxError: broken PNG file (chunk b'\x93\xed\xee\xf6')".
Thank you for looking into this.

Hi @Frost24K,
This file in my computer can be  loaded successfully.
I think maybe there is a problem with decompression, and the correct picture is supplied below.
Please contact me if there are any other problems.

Hi,
Thank you for helping me resolve this issue.
Best

Hi,
Big pardon, I noticed a discrepancy when loading the VPR_test dataset. Specifically, the total number of drone images I found was 18,359 (query_images_1: 3,294 + query_images_2: 3,058 + query_images_3: 5,451 + query_images_4: 6,556), which is slightly less than the 18,361 images stated in the paper. Could the discrepancy be due to an issue with the compressed file, or might it be related to a problem with my decompression process?

Hi @Frost24K ,
The number of pictures in query_images_2 is  3,060, and I will check the compressed files to make sure they contains all the pcitures.

Thanks a lot.
Best


Changed targetframework to netstandard 2.0

Updated .travis.yml to use dotnet to build and run tests.

Hi @jrmartins
May I know your reasoning for targeting .NETStandard 2.0. .NETStandard 1.3 works just fine and allows us to have maximum compatibility.
Thanks!

@jrmartins, I'm closing this PR for now. Feel free to reopen it if you still would like to target .NETStandard 2.0


Log extra info to EEPROM (and maybe transmit it over the radio)

number of times we get watchdog timer reset
number of different kinds of fault ISRs were triggered

Writing to the EEPROM is a synchronous procedure which can take a large number of instructions, contrasting with devices such as the AVR which only take a few register writes. Performing this operation in a fault ISR or watchdog timer routine, where the system is probably already on the verge of crashing, will be infeasible.
It may be possible to examine the reset cause register, but this will not give fine grained information over the particular type of fault ISR thus triggered.

In V2 of the board, what if we add a SPI-based Flash chip next to the ARM? Something like W25Q64FVSSIG? We can log the information there
http://www.digikey.com/product-detail/en/W25Q64FVSSIG/W25Q64FVSSIG-ND/2815931

This would be better, but still tricky as we need to get the information out to the chip. We would have to pump the data out synchronously since interrupts would be disabled.
If we used a different ARM chip with true EEPROM in V2, such as an STM32 or Kinetis, this would be a non-issue as the data can simply be recorded in a few clock cycles.

Good point. Can we use a better ARM chip in that case?
From: Stephen Carlson<EMAIL_ADDRESS>Sent: Sunday, November 01, 2015 6:30 PM
To: usaguerrilla/hab<EMAIL_ADDRESS>Cc: Scorillo47<EMAIL_ADDRESS>Subject: Re: [hab] Log extra info to EEPROM (and maybe transmit it over the radio) (#37)
This would be better, but still tricky as we need to get the information out to the chip. We would have to pump the data out synchronously since interrupts would be disabled.
If we used a different ARM chip with true EEPROM in V2, such as an STM32 or Kinetis, this would be a non-issue as the data can simply be recorded in a few clock cycles.
—
Reply to this email directly or view it on GitHub https://github.com/usaguerrilla/hab/issues/37#issuecomment-152893905 .  https://github.com/notifications/beacon/ACRBWfhE7XgxavbC9VDdD43-c3QR1Zsmks5pBsIpgaJpZM4GXFes.gif

I totally forgot. We have a message counter. If we log all messages we can tell approximately how many times Tiva-C had been reset.

Closing this issue for now. This functionality will be incorporated (if feasible) into the software for future flights.


Fix date problem in lighthouse test

@andreban small change in one test broken in different time zones.


Make Joyce Chen a site admin

<EMAIL_ADDRESS>Joyce will be submitting entries to the OECD collection, and as a work around will unhide the collection each day, add entries, then hide it again. They have reasons for keeping it hidden until complete. Related to: https://github.com/participedia/usersnaps/issues/1104

@ascott please ping Pat when this is complete.

@jesicarson @pat we don't have an account for joyce with this email address but there is another joyce chen with the email<EMAIL_ADDRESS>if she would like to use this new email address, she will need to create an account before i can make her an admin.

Thanks @ascott
I’ve emailed Joyce and cc’d you.

@ascott please go ahead and use that gmail account for Joyce. Thanks!

@jesicarson ok done, joyce is an admin now. :)

Gracias!


Grammar and link fix

In the verb form, it should be "set up" rather than "setup." Also, Microsoft's DSC documentation has moved.

@davidstrauss thanks for the contribution. Merging.


Optimize the description of the template of the pipeline.

General remarks

This form is to report bugs. For general usage questions refer to our Slack channel
KubeSphere-users

Describe the bug
A clear and concise description of what the bug is.
There are some wrong words and it would be better if we have the number of the words in a similar range.
For UI issues please also add a screenshot that shows the issue.

Versions used(KubeSphere/Kubernetes)
KubeSphere: 3.3.0 alpha 1
Kubernetes: (If KubeSphere installer used, you can skip this)
/cc @Patrick-LuoYu @kubesphere/sig-console

Issue fixed in kubespheredev/ks-console:nightly-20220605


Thanks

Hi @kometenstaub , sorry to post an issue, here, but I couldn't find any other way to contact you. Just wanted to thank you for your effort in creating this. Although I didn't make full use of this, it did help me to import a bunch of items into Joplin from a CSV file that I had created to import the list into Todoist (but then changed my mind, and wanted to send them to Joplin instead). If it wasn't for this tool, I would have had to create those notes manually. Thanks.

You’re welcome.


Unable to get codpiece, please help

Error message as follows. Only happened a few days ago. Manually getting the codpiece via relay browser moves the script forward. Help please.
Executing Run Start/Get Floundry item
CCS set to grimoire_macro
Autoattack is disabled.
You need 1 more codpiece to continue.
Created an empty checkpoint.
You need 1 more codpiece to continue.
Created an empty checkpoint.
Verifying ingredients for oil cap (1)...
You need 8 more bubblin' crude to continue.
autoSatisfyWithStash => true
Preference autoSatisfyWithStash changed from false to true
Preference customCombatScript changed from grimoire_macro to hccs_aftercore
CCS set to hccs_aftercore
autoSatisfyWithCloset => true
Preference autoSatisfyWithCloset changed from false to true
Autoattack is disabled.
JavaScript exception: Task Run Start/Get Floundry item did not complete within 1 attempts. Please check what went wrong. (file:/C:/Users/shavb/Dropbox/Games/KoL/Mafia/scripts/instantsccs/instantsccs.js#15023)
at file:/C:/Users/shavb/Dropbox/Games/KoL/Mafia/scripts/instantsccs/instantsccs.js:15023 (checkLimits)
at file:/C:/Users/shavb/Dropbox/Games/KoL/Mafia/scripts/instantsccs/instantsccs.js:14740 (execute)
at file:/C:/Users/shavb/Dropbox/Games/KoL/Mafia/scripts/instantsccs/instantsccs.js:15420 (execute)
at file:/C:/Users/shavb/Dropbox/Games/KoL/Mafia/scripts/instantsccs/instantsccs.js:22342 (main_main)

Seems like KoL changed certain HTML responses which Mafia used to parse for such preference updates. This has ostensibly been fixed (as claimed by a few others), but otherwise we'll have to wait till Mafia updates to handle these changes.
In the meantime, just make sure that you keep your Mafia updated.

noted, thank you for the reply!


restart_process restart-helper leaks zombie processes

root@api-5dd8c8769-nwdv7:/# ps aux wwwf
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          49  0.0  0.0   4188  3332 pts/0    Ss   14:30   0:00 bash
root          80  0.0  0.0   8088  3940 pts/0    R+   14:31   0:00  \_ ps aux wwwf
root           1  0.0  0.0 703588  1664 ?        Ssl  05:37   0:00 /tilt-restart-wrapper --watch_file=/tmp/.restart-proc sh -c /api-server
root          11  0.0  0.0   1220   104 ?        S    05:37   0:00 /entr -rz sh -c /api-server
root          70  0.0  0.0   2576   860 ?        S    14:30   0:00  \_ sh -c /api-server
root          71  0.1  0.4 1287044 72528 ?       Sl   14:30   0:00      \_ /api-server
root          13  0.0  0.0      0     0 ?        Z    05:37   0:02 [api-server] <defunct>
root          38  0.0  0.0      0     0 ?        Z    14:29   0:00 [api-server] <defunct>

Seems like it might need a minimal init (tini, dumb-init, etc).
I noticed this because entr also doesn't reliably kill the process before starting a new one... perhaps this is because of sh, I'm not sure. That's a different issue.

hmmm...i was not able to reproduce this problem. here are the steps i tried:

cd into tilt-extensions/restart_process/test
Run tilt up -f custom_deploy.Tiltfile
Clicked test_update a bunch of times
Exec'd into the pod and ran ps aux wwwf
Saw that there was exactly one start.sh, as i expected.

when i poked around in the entr repo, i found this issue - https://github.com/eradman/entr/pull/38 - which seems to indicate to me that it's at least expected for entr to kill the process

I'm running into a sort of similar situation where a process can be left around hanging as a zombie process.
I tried to create a reproducable testcase and came up with something which creates a zombie process.
This is not supposed to be a useful or optimized usecase for anything, just commands put together to create a zombie process.
diff --git a/restart_process/test/Dockerfile.test b/restart_process/test/Dockerfile.test
index cfbeb9f..89e11d3 100644
--- a/restart_process/test/Dockerfile.test
+++ b/restart_process/test/Dockerfile.test
@@ -1,5 +1,7 @@
 FROM alpine

+RUN apk add nginx
+
 RUN echo 0 > restart_count.txt

 ADD start.sh /
diff --git a/restart_process/test/start.sh b/restart_process/test/start.sh
index c9bc981..6277158 100755
--- a/restart_process/test/start.sh
+++ b/restart_process/test/start.sh
@@ -12,8 +12,13 @@ handle_sigterm() {

 trap handle_sigterm SIGTERM

-while true
-do
-  echo running
-  sleep 5
+while pgrep -f nginx >/dev/null ; do
+  echo "waiting for nginx to shut down"
+  set +e
+  pkill -f nginx
+  set -e
+  sleep 3
 done
+nginx
+
+tail -F /var/log/nginx/*

Run tilt up -f custom_deploy.Tiltfile
The restart should happen right away with the first start.
The new run of the entrypoint script is left waiting for the previous instance of nginx to shut down, since it will remain there as a zombie process because tilt-restart-wrapper as pid 1 does not call waitpid on it.

Going into the container and running ps faux:
ps faux
PID   USER     TIME  COMMAND
    1 root      0:00 /tilt-restart-wrapper --watch_file=/tmp/.restart-proc sh -c /start.sh
   17 root      0:00 /entr -rz sh -c /start.sh
   25 root      0:00 [nginx]
   62 root      0:00 {start.sh} /bin/sh /start.sh
   78 root      0:00 sleep 3
   79 root      0:00 sh
   85 root      0:00 ps faux

The pid 25 is there as a zombie.

I assume the issue is tilt-restart-wrapper not reaping zombies, which should be a job of a process running as PID 1.

Thanks for the reproduction @samuliy. Until this is fixed, there is a simple workaround if this doesn't cause issues with your workload or sidecars:
      {{- if .Values.tilt }}
      # Fix zombie processes not stopping under Tilt
      shareProcessNamespace: true
      {{- end }}

@nicks can you remove the needs repro case label?


Enforcing Support Bundle Description

This commit entails the Support Bundle request to contain the GitHub issue URL and the issue description which is read by the Initiate API and eventually written into metadata.yaml
As a result when the user sends the compressed zip file, all the information he entered in UI will be part of metadata.yaml.

https://github.com/rancher/longhorn/issues/480
Part 1.


WhatsApp notification count going wild

Avoid duplicates

[X] I have searched the issues tracker for a bug report similar to mine, in vain

Ferdium Version
6.2.0
What Operating System are you using?
Other Linux
Operating System Version
Arch-Linux 6.0.7-zen1-1-zen
What arch are you using?
x64
Last Known Working Ferdium version
6.2.0
Expected Behavior
Notification count should correspond to the actual amount of unread messages.
Actual Behavior
WhatsApp displays 486794 notifications, even though I have 0 unread messages.
Steps to reproduce
Use WhatsApp web
Debug link
https://debug.ferdium.org/afc99720-b214-41d3-961a-8c83cb648dfc
Screenshots

Additional information
Issue seems to have occurred after clicking on update in WhatsApp Web - might be an incompatibility with the latest WhatsApp web version.
A restart of Ferdium does not fix this issue.

@Janrupf Thank you for taking the time to create an issue, however, I'll be closing this in favor of #230.

Damn it, I somehow managed to not find the other report. Sorry for the duplicate


Compile protos from multiple packages

This is an issue report in the form of a PR (to ease demonstration). The primary changes reside in the second commit.
It seems to be not possible to generate go code for multiple packages (in multiple invocations of protoc, even), when dependencies exist between those packages.
Using import_prefix to prepend the relative path from $GOPATH/src won't work because the protobuf import itself will no longer be valid. Using the fully-qualified go import path in the protos themselves will break compilation in other languages where the directory structure required by the go tool isn't necessarily present. Is there a standard way to address this?
Here's the actual failure:
$ make test
go test ./proto
ok  	github.com/golang/protobuf/proto	0.042s
make -C protoc-gen-go/testdata test
make -B my_test/test.pb.go
protoc --go_out=. my_test/test.proto
[libprotobuf WARNING /Users/tamird/src/go/src/github.com/cockroachdb/c-protobuf/descriptor.cc:6117] Warning: Unused import: "my_test/test.proto" imports "multifile/multi1.proto" which is not used.
diff -w my_test/test.pb.go my_test/test.pb.go.golden
# Invoke protoc once to generate three independent .pb.go files in the same package.
protoc --go_out=. multifile/multi{1,2,3}.proto
# Invoke protoc multiple times to build packages that are interdependent.
for dir in multipkg/bar/ multipkg/foo/; do \
	  protoc --go_out=. $dir/*.proto; \
	done
go test ./...
multipkg/bar/bar.pb.go:18:8: cannot find package "multipkg/foo" in any of:
	/usr/local/Cellar/go/1.4.2/libexec/src/multipkg/foo (from $GOROOT)
	/Users/tamird/src/go/src/multipkg/foo (from $GOPATH)
make[1]: *** [testbuild] Error 1
make: *** [test] Error 2

Ignore that. Rogue bot.

Ignore that. Rogue bot.

Closing in favor of discussion on issue #39, see also comment on PR #40.


Stillshot capture preview is horizontally mirrored

[X] I have verified there are no duplicate active or recent bugs, questions, or requests

[X] I have verified that I am using the latest version of Material Camera.

[X] I have given my issue a non-generic title.

Material Camera version: 0.4.1

Device OS version: 6.0.1

Device Manufacturer: LG

Device Name: Nexus 5

Device OS version: 6.0

Device Manufacturer: LG

Device Name: G4

Reproduction Steps

Git clone project
Launch Sample project on phone
Click "Launch Camera For Stillshot" (or fragment version)
Capture Image
View Captured Preview (mirrored issue)
Click "Retry"
Take new picture
View Captured Preview (not updated)

Expected Results
Captured image preview should match live preview
Captured image preview should updated on a retried still capture
Actual Result
Captured image preview never updates from the first capture, and is horizontally mirrored
Additional Note after testing video: It is also horizontally mirrored but clicking retry and recording a new video works as expected

Now that it no longer crashes when flipping between front and rear camera I noticed this only happens with the front facing camera.

This is more of an implementation detail than a bug. Horizontally mirroring the front facing camera is actually the default behavior of the google camera app on my Nexus 6p. It comes down to what is the preferred output in that case. I personally like it matching the preview when the button was pressed.


The intro login page disappeared before I could actually log in

Describe the bug
After I installed the extension on Visual Studio 2019 v16.10.4, I followed this video guide to get it set up. After I started Visual Studio, I didn't think much of simply starting up the project I was previously working on, and the reason I installed the extension, and sure enough the page popped up. I tried to click on the form but after that the entire page went black, the tabs in Visual Studio seemingly reloaded (only the tabs, as if the entire project had been reloaded) and the AWS page disappeared, and I can't find my way back.
To Reproduce

Install the extension and fire Visual Studio
Select a project
After the login form appears, click on one of the text input fields
The project should seemingly reload and the page will disappear

Expected behavior
The page not to disappear so that I can log in
Computer (please complete the following information):

Windows Version: 10 Pro -- 10.0.19043 Build 19043
Visual Studio Version: Visual Studio 2019 v16.10.4
AWS Toolkit for Visual Studio Version: AWS Toolkit for Visual Studio 2017 and 2019 <IP_ADDRESS>

Thank you for reporting this issue @DiegoG1019 .
In the meantime, you have additional options for configuring your Toolkit. The User Guide outlines ways you can set up your credentials files directly, or from the AWS Explorer (which is available from the View menu of Visual Studio).


Correction on the isbn_display field

If there is no subfield $a in 020 then we should not display the isbn in the record page.

@christinach do you mean it shouldn't index? Only index 020$a?

We should not index the isbn_display if 020 is missing. The isbn_display filed is what we see in the catalog record page as ISBN.
For example: https://catalog-alma-qa.princeton.edu/catalog/99121576653506421/ (hardcover) should not display. In the staff_view https://catalog-alma-qa.princeton.edu/catalog/99121576653506421/staff_view the 3rd z|<PHONE_NUMBER>888 q| hardcover has no $a.
This is also an issue in production. Would it be better to apply this change in the main branch and we pull it with the rebase?

I updated my previous comment as : if 020$a

👍🏻 we agreed on slack this will be fine to just go in the alma branch


m.room.member$kick and m.room.member$ban examples should have a reason

including the schema

Until it gets added to the spec: is reason always a string, and an optional one at that?


Task details page

Requirements

[ ] #249
[ ] Clicking on the task should open the details page
[ ] Show comments history
[ ] Show action history (Add/Remove assignee, update due date, etc.)

Check this RFC discussion for a logging service
we'll use this service for history

@saxenaaman628 Let's not wait for comments and audit history to be added to the task.
Let's build the page showing the details we already have.

@whyDontI Ok I will push changes by 10th.


Switch remaining metrics to seconds

There's still a handful of metrics in Prometheus not using seconds, mostly around storage. We should switch them to seconds for consistency.
While it's proposed that it's okay to change this sort of thing post 1.0, it'd be best to get it in before that.

Some of the quantile summaries should also be histograms for aggregations.

Most of those summaries should be just changed not to have quantiles imho.

What's the benefit of removing them? They are not exactly expensive in the
Prometheus case.
On Fri, Apr 29, 2016, 7:50 PM Brian Brazil<EMAIL_ADDRESS>wrote:

Most of those summaries should be just changed not to have quantiles imho.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/prometheus/prometheus/issues/1606#issuecomment-215828656

I think they're of low value and potentially confusing given the disproportionate importance that is attached to quantiles compared to their actual utility. Histhograms are also favoured, so if we really need this data (I think we can live without) we should use those.

+1 for changing everything to seconds.
I find some of the quantiles extremely useful. In general, if the latency of a single host matters, no aggregation is needed, and precomputed quantiles are very handy. A Prometheus server is a good example where you are interested in the latency of a single server.
At SC, we use a number of quantiles exposed by the Prometheus server quite regularly. We can go through all the summaries and decide for each one which of the following is the right course of action:  (a) remove, (b) turn into histogram, or (c) leave it as is is.

Reopening to not lose track.

Metrics are not part of our stability guarantees. Holding of 1.0 for just that doesn't seem appropriate.

Fine with me. So consensus is (2) then? @brian-brazil ?

2 is what I was thinking.

Cool. I'll close this again, then, because the metric change will happen implicitly with the move to the new client library.


qutebrowser spellcheck doesn't work

Issue description
When I run:
/nix/store/h8j3b3la9pd0j2a4z5cx1w8k24371jkh-qutebrowser-1.2.0/share/qutebrowser/scripts/dictcli.py install en-US

I get:
Traceback (most recent call last):
  File "/nix/store/h8j3b3la9pd0j2a4z5cx1w8k24371jkh-qutebrowser-1.2.0/share/qutebrowser/scripts/dictcli.py", line 34, in <module>
    import attr
ModuleNotFoundError: No module named 'attr'

Technical details

system: "x86_64-linux"
host os: Linux 4.14.27-rt21, NixOS, 18.03.git.a619890 (Impala)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.0
channels(bart): ""
channels(root): "nixos-18.03pre130932.cc4677c36ee"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs

The scripts installed in share/qutebrowser/scripts have not been patched. I'm working on it.

@rnhmjoj Great, thanks!


Add FreeBSD installation instructions

Thank you for adding FreeBSD install instructions! I'll put it on the website, too.


E2e test for sign-multichain

This is the PR for sign-multichain e2e tests

@benmalcom thanks for fixing all the comments! LGTM!

@hcho112 can you approve this as the last change from this PR dismissed @Pessina review.


DFHAID: No such file or directory

I get the following errors when trying to compile the card demo app with GnuCOBOL. DFHAID, DFHBMSCA are IBM provided copybooks right? Where do we get it?

COSGN00C.cbl:57: error: DFHAID: No such file or directory
55 |        COPY CSUSR01Y.
56 |
57 >        COPY DFHAID.
58 |        COPY DFHBMSCA.
59 |       *COPY DFHATTR.
COSGN00C.cbl:58: error: DFHBMSCA: No such file or directory
56 |
57 |        COPY DFHAID.
58 >        COPY DFHBMSCA.
59 |       *COPY DFHATTR.
60 |
COSGN00C.cbl:67: error: 'EIBCALEN' is not defined
65 |        01  DFHCOMMAREA.
66 |          05  LK-COMMAREA                           PIC X(01)
67 >              OCCURS 1 TO 32767 TIMES DEPENDING ON EIBCALEN.
68 |
69 |       ----------------------------------------------------------------
COSGN00C.cbl: in paragraph 'MAIN-PARA':
COSGN00C.cbl:85: error: 'EIBAID' is not defined
83 |                PERFORM SEND-SIGNON-SCREEN
84 |            ELSE
85 >                EVALUATE EIBAID
86 |                    WHEN DFHENTER
87 |                        PERFORM PROCESS-ENTER-KEY
COSGN00C.cbl:86: error: 'DFHENTER' is not defined
84 |            ELSE
85 |                EVALUATE EIBAID
86 >                    WHEN DFHENTER
87 |                        PERFORM PROCESS-ENTER-KEY
88 |                    WHEN DFHPF3
COSGN00C.cbl:88: error: 'DFHPF3' is not defined
86 |                    WHEN DFHENTER
87 |                        PERFORM PROCESS-ENTER-KEY
88 >                    WHEN DFHPF3
89 |                        MOVE CCDA-MSG-THANK-YOU        TO WS-MESSAGE
90 |                        PERFORM SEND-PLAIN-TEXT
COSGN00C.cbl:98: error: syntax error, unexpected Identifier, expecting SECTION or .
96 |            END-IF.
97 |
98 >            EXEC CICS RETURN
99 |                      TRANSID (WS-TRANID)
100 |                      COMMAREA (CARDDEMO-COMMAREA)
COSGN00C.cbl:98: note: unknown statement 'EXEC'

@sundar-sarvam
You can check in the existing Mainframe ENV.
Alternatively, Pasting some reference links here for you.
https://www.tutorialspoint.com/cics/cics_aid_keys.htm
https://www.ibmmainframeforum.com/cics/topic11955-10.html


Error in iOS build: Tried to convert ["attribute_key": AnyHashable(attribute_value)] but the data tyep is not Encaodable

Hi, I just went through config with the customer io flutter SDK and finally, the iOS app builds. But I'm getting the error message in the console mentioned in the title Error in iOS build: Tried to convert ["attribute_key": AnyHashable(attribute_value)] but the data tyep is not Encaodable when setting attributes on people using CustomerIO.identify and CustomerIO.setProfileAttributes. My iOS simulator is also not showing up as a device in the customer io people dashboard. I tried using jsonEncode and jsonDecode but it didn't work. Any suggestions on how to solve this?

Okay, I just found the solution after 5min of posting this issue... first, seems like all the attribute values need to be strings, also I have a few nullables that needs to be set to and empty string if null.(which would be handy to know in the doc, or maybe I just missed it) But still, my ios simulator isn't showing up as a device. Is there a lag for that to show up? Does it have to be a physical device?

Thank you for reaching out to us. Below are the answers to your questions:
Attribute values must be types that can be encoded, therefore objects and custom types will not work. Standard types like doubles and strings are supported, with strings being the recommended option. We've noted the need for clearer error messages and documentation on this and will try to improve them for better experience.
For nullable values, they can be excluded from attributes. If this doesn't work for you, please do share and let us know about your use case so we can help you better.
For device visibility, device token generated by FCM is required for device to be recognized. Although real devices consistently produce a device token, the behavior on simulators might not be as consistent. You can capture logs to check if your simulator is generating a device token. However, testing on an actual device is recommended for the most accurate experience. Events and devices usually start appearing on Dashboard within about 30 seconds.
In case you have further questions or need more clarification, please feel free to reach out.

Hi @mrehan27 thanks for your reply. I got everything working now so will close this one.


Fix Ruby sample codes to make them work

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

I signed it!

Jenkins: test this please

LGTM. The ruby tests are passing

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Jenkins: test this please

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Let's either get this done or close this.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

jenkins: this is ok to test

jenkins: test this please

tests are still stale.
jenkins: test this please

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

jenkins: this is ok to test

Test runs still stale
Jenkins: test this please

@apolcyn  is this PR still useful?  We'd need to rebase to get a fresh test run.

Thank you for your pull request. Before we can look at your contribution, we need to ensure all contributors are covered by a Contributor License Agreement.
After the following items are addressed, please respond with a new comment here, and the automated system will re-verify.

User @eagletmt isn't covered by a CLA. They will need to complete the form at https://identity.linuxfoundation.org/projects/cncf

Regards,
CLA GitHub bot

@jtattermusch this PR does make corrections to these examples. @eagletmt I know it's been a long time on this PR; if you'd like to continue, can you please rebase?

Thank you for your pull request. Before we can look at your contribution, we need to ensure all contributors are covered by a Contributor License Agreement.
After the following items are addressed, please respond with a new comment here, and the automated system will re-verify.

User @eagletmt isn't covered by a CLA. They will need to complete the form at https://identity.linuxfoundation.org/projects/cncf

Regards,
CLA GitHub bot


Adding DOCKER_CERT_PATH missing error message

Proposed fix for #5475

take or close

@colindembovsky you are setting env variables in the DockerFile and in this PR you are validating execution env variable values.
If you specify env variable inside Dockerfile, these variables are only available inside container and there is no way we can validate in task if the variables are properly set for executing container.
Another way to specify Docker Host is through using Docker host endpoint, where we have appropriate check and we create proper command to set docker host.
Therefore this change will not want user if env variables are set inside container.


youtube multiple small issues

While working with your nice player we had some issues. In case a player is destroyed while the player is still loading the YT api you get an error at player.media.getAttribute because player.media is not defined.
While I was fixing this error I also saw that you have some other issues:

If setup is called multiple times during yt API loading you re-embed the script (resulted in 7 API scripts on our app)
You override a maybe already existing onYouTubeReadyCallbacks by a third party script
Player declares an needles global Array onYouTubeReadyCallbacks (also not standardized)

I haven't tested the code but you should get the issues.

Awesome! Thank you for doing this 👍


Is mechvibes a keylogger?

As I understand, app installs global system hook on keyboard events, so it can potentially log all keystrokes and send it anywhere.
Is there any guarantee that app is not capable to steal my passwords and credit card numbers?
Thank you a lot

super thanks @Balls0fSteel
@KostiaChorny You have my words, it's not a keylogger. The only thing that Mechvibes requests from the remote server is getting the version number from github for the update, nothing is being sent from your computer.
In the next version of Mechvibes, It will request more than the version number, such as new sound-packs from Mechvibes cdn...

@Balls0fSteel @hainguyents13
Thank you for the answer! It's a great opportunity to improve skills in JS for me.
As far as I know, in Electron app all source code is open and can be modified. Is it possible to sign the application, so it can't be changed after build. Without the signature, other malicious software or some nasty joker can change the code of installed app and send the keystrokes anywhere.

dude, just reverse code and check this out

nah its safe, but in general its good practice to block internet access for fully offline apps like this, as even if it was it couldn't do anything.
Simplewall's pretty convenient for this as it gives a yes/no prompt the first time a service/app tries to access the internet, and just adds a rule to windows firewall depending on the option chosen.

Thank you all,
just wanted to draw attention to security questions, which are usually ignored


Last source phrase of chapter gets moved to the first source phrase of next chapter

Adapt It Mobile Version: 1.0 beta 1 (milestone 0.6.0)
Operating System: Android? Not seeing this on iOS
Severity:3
Description: This is a weird one that Bruce noticed. When the adaptation reaches the end of a chapter, AIM will ask you if you want to continue on to the next chapter. Clicking on the Next button will cause the last source phrase text to get copied over as the suggested text of the first source phrase in the next chapter. If you go back to the previous chapter, you'll also see that the target text for the last source phrase is blank.
Steps to Reproduce:

Launch AIM and import a document with multiple chapters.
Start adapting through the first chapter all the way through.
When AIM asks if you would like to continue to the next chapter, click yes / next. Note that the source phrase selected now has the text that you just adapted from the previous chapter.

Moving to the next milestone to unblock iOS.


Update changelog for past DataFactory SDK versions

Add details for all changes back to version 1.0.0 of the package.

Hi @bgold09, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (brgold). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, or work for Microsoft Open Technologies, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;


Update MetalLB how to with instructions for k8s 1.25+

Which issue(s) this PR addresses: #1290

Closes #1290

Thank you, @kevchu3.
If we are fixing this document, can we also look at the nginx installation and test? It should have the same problem, shouldn't it?

/assign @ggiguash

Hi @ggiguash,
Here are my thoughts on applying this to the nginx example application.  As a best practices, end user OpenShift (and subsequently MicroShift) applications should not be running as privileged pods (i.e. root).  The recommendations for the metallb-system load balancers are different as they are part of the infrastructure and may require root.  I looked into the docker.io/library/nginx:1.18 image that was being used, and it is indeed intended to be run as root, which may be fine with other k8s distros but is not best practices for MicroShift.  In fact, a quick traversal of the image showed mostly all of the filesystem including configurations needed by nginx are owned by root user and group.  That being said, the proper approach would likely be to select another base image that adheres to OpenShift standards of running non-privileged containers.  However, I couldn't immediately find one that was consumable for nginx which didn't require us to build from source.
The other item to call out for our nginx application is that there is no deprecated/removed PodSecurityPolicy being applied in the manifests.  Thus, the issues affecting this nginx application when deploying in OpenShift are entirely different, and have persisted well before k8s 1.25+ removed PodSecurityPolicy.
Anyways, I'll walk through a hack workaround to resolve the issue for purposes of testing.  Here are my results:
First, I ran the original instructions:
NAMESPACE=nginx-lb-test
oc create ns $NAMESPACE
oc apply -n $NAMESPACE -f https://raw.githubusercontent.com/openshift/microshift/main/docs/config/nginx-IP-header.yaml

Which subsequently runs into the issue you've observed where the pod can't modify files on the filesystem.  Note that whoami confirms the pod runs as the high UID in MicroShift.
$ oc get pods
NAME                     READY   STATUS             RESTARTS      AGE
nginx-65fd5cf854-cnvhw   0/1     CrashLoopBackOff   3 (52s ago)   90s
nginx-65fd5cf854-gnjz2   0/1     CrashLoopBackOff   3 (46s ago)   90s
nginx-65fd5cf854-trpt2   0/1     CrashLoopBackOff   3 (50s ago)   90s

$ oc logs nginx-65fd5cf854-cnvhw
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: error: can not modify /etc/nginx/conf.d/default.conf (read-only file system?)
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2023/01/25 17:37:50 [warn] 1#1: the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:2
nginx: [warn] the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:2
2023/01/25 17:37:50 [emerg] 1#1: mkdir() "/var/cache/nginx/client_temp" failed (13: Permission denied)
nginx: [emerg] mkdir() "/var/cache/nginx/client_temp" failed (13: Permission denied)
[root@microshift-starter ~]# oc debug pod/nginx-65fd5cf854-cnvhw
Starting pod/nginx-65fd5cf854-cnvhw-debug ...
Pod IP: <IP_ADDRESS>
If you don't see a command prompt, try pressing enter.

$ cd /etc/nginx/conf.d
$ ls -l
total 8
-rw-r--r--. 1 root root       1093 Oct 29  2020 default.conf
-rw-r--r--. 1 root<PHONE_NUMBER>   44 Jan 25 17:38 headers.conf
$ touch newfile
touch: cannot touch 'newfile': Permission denied
$ whoami
1000160000

I then apply the privileged annotation to the namespace.  Note that pod-security.kubernetes.io/enforce: privileged is now set.
$ oc adm policy add-scc-to-user privileged -z default -n $NAMESPACE
$ oc get ns $NAMESPACE -o yaml
apiVersion: v1
kind: Namespace
metadata:
  annotations:
    openshift.io/sa.scc.mcs: s0:c13,c2
    openshift.io/sa.scc.supplemental-groups:<PHONE_NUMBER>/10000
    openshift.io/sa.scc.uid-range:<PHONE_NUMBER>/10000
  creationTimestamp: "2023-01-25T17:37:45Z"
  labels:
    kubernetes.io/metadata.name: nginx-lb-test
    pod-security.kubernetes.io/enforce: privileged
    pod-security.kubernetes.io/enforce-version: v1.24
  name: nginx-lb-test
  resourceVersion: "109157"
  uid: a11ba70c-6ae8-4913-8b88-9e2dd784f82f
spec:
  finalizers:
  - kubernetes
status:

However, this isn't sufficient because the pod still expects to run as the high UID (in my case<PHONE_NUMBER>).  What we need to do is set spec.securityContext.runAsUser: 0 in the definition of the container inside the Deployment to explicitly tell the pod to run as root.  My disclaimer still applies as this is NOT a security best practice.  Here is the complete YAML manifest and should probably replace the existing nginx-IP-header.yaml example:
apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx
data:
  headers.conf: |
    add_header X-Server-IP $server_addr always;
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      securityContext:
        runAsUser: 0
      containers:
      - image: nginx:1.18
        imagePullPolicy: Always
        name: nginx
        ports:
        - containerPort: 80
        volumeMounts:
        - name: nginx-configs
          subPath: headers.conf
          mountPath: /etc/nginx/conf.d/headers.conf
      volumes:
        - name: nginx-configs
          configMap:
            name: nginx
            items:
              - key: headers.conf
                path: headers.conf

I'd like to hear your thoughts on whether we should move forward with this example for purposes of testing, before I go ahead and update the PR to include these changes.

@kevchu3, I think your suggestion makes a lot of sense. The purpose of this example is to demonstrate MetalLB load balancing, so having a simple-enough test is preferrable.
Please, update the PR with your proposal. Is only running as root user sufficient, or we also need to apply scc?
If scc change is necessary, let's do it right after creating the namespace.

Looks like the SCC is required.  Here's what happens when I create the namespace and workload but don't apply the SCC.  I'll create a PR with your latest recommendations.
$ oc get events
LAST SEEN   TYPE      REASON              OBJECT                       MESSAGE
5s          Warning   FailedCreate        replicaset/nginx-9d96b8987   Error creating: pods "nginx-9d96b8987-" is forbidden: unable to validate against any security context constraint: [provider "anyuid": Forbidden: not usable by user or serviceaccount, spec.containers[0].securityContext.runAsUser: Invalid value: 0: must be in the ranges: [1000130000,<PHONE_NUMBER>], provider "restricted": Forbidden: not usable by user or serviceaccount, provider "nonroot-v2": Forbidden: not usable by user or serviceaccount, provider "nonroot": Forbidden: not usable by user or serviceaccount, provider "hostmount-anyuid": Forbidden: not usable by user or serviceaccount, provider "hostnetwork-v2": Forbidden: not usable by user or serviceaccount, provider "hostnetwork": Forbidden: not usable by user or serviceaccount, provider "hostaccess": Forbidden: not usable by user or serviceaccount, provider "topolvm-node": Forbidden: not usable by user or serviceaccount, provider "privileged": Forbidden: not usable by user or serviceaccount]

/label tide/merge-method-squash

@kevchu3 , thank you for your help.
/lgtm


Roll engine 866b158c4b13..6ea69a0d4339 (2 commits)

https://github.com/flutter/engine/compare/866b158c4b13...6ea69a0d4339
git log 866b158c4b13..6ea69a0d4339 --first-parent --oneline
2019-12-18<EMAIL_ADDRESS>Revert "Wire up Opacity on Fuchsia, round 2 (#14024)" (flutter/engine#14543)
2019-12-18<EMAIL_ADDRESS>Roll src/third_party/dart c9d89d55a60e..6fcd1de98c2c (8 commits) (flutter/engine#14551)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Trybots failed. These were the failed builds: https://github.com/flutter/flutter/runs/355133378 , https://github.com/flutter/flutter/runs/355133340 , https://github.com/flutter/flutter/runs/355133335 , https://github.com/flutter/flutter/runs/355133318

Commit queue failed; closing this roll.


feat: iOS - background mode, delay start of audio

Added support for background mode on iOS - must be enabled in iOS project capabilities.
Added option to delay start of audio - iOS only (for now!)

please merge it in main. I need this.

Thanks a lot !
i think you need to run npm run fmt and then i will be able to accept it !

ok, I have run and pushed.

Thanks a lot ,can you check your conflict as well ?

What happens with that now?

I don't know where the problem is right now, but I really need this feature urgently. Is there a status on whether it works in the current release or not?

Hey @lordrepha1980 I think this can be handled by a community member if you are willing to support it.
Usually between 30 to $50 would make someone want to make it happen in 3/4 days.

Sorry, I've been busy on other projects. Conflict should be resolved!


feat(soy): add soySrcsRelativeFrom option to DuckConfig

Codecov Report

Merging #754 (e1c7d5e) into master (6c6dc4b) will increase coverage by 0.21%.
The diff coverage is 58.82%.

@@            Coverage Diff             @@
##           master     #754      +/-   ##
==========================================
+ Coverage   50.96%   51.17%   +0.21%
==========================================
  Files          25       25
  Lines        1087     1102      +15
  Branches      211      215       +4
==========================================
+ Hits          554      564      +10
- Misses        479      482       +3
- Partials       54       56       +2

Impacted Files
Coverage Δ

src/duckconfig.ts
10.52% <0.00%> (-0.29%)
:arrow_down:

src/soy.ts
61.44% <62.50%> (+2.02%)
:arrow_up:


Make new package kbfsblock

Move BServerError*, BlockID, and BlockContext
into it, as well as quota-related types.
Move some non-CSPRNG-dependent functions
out of cryptoPure, to avoid dependencies on
cryptoPure from BlockServer implementations,
since those are also planned to be moved out
of libkbfs.
Make blockOps depend on a reduced blockOpsConfig
interface instead of Config. Rewrite most of its tests
to avoid mocks.
Make server implementations depend on
libkb.RPCLogFactory instead of Context.

A lot of this is renaming, but it's still reviewable from top to bottom.

(Please rebase first and get a clean CI run before merging.)

Oh forgot to mention: I don't think the kbfsblock tests will be run in CI after this change.  (That might also be the case for the other packages you've broken out recently.)

You're right re. CI -- added this to Jenkinsfile, will open a separate PR for everything else.


fix(chttpd): comment typo

A follow-up commit to deddbb2 where a typo was noticed in the contents after it has been merged.

Thanks @iilyak!


⚠ Mitsubishi has degraded performance

In 0ce9cd1, Mitsubishi (https://mitsubishimotorsid-mobileapp.com/app/login) experienced degraded performance:

HTTP code: 200
Response time: 6951 ms

Resolved: Mitsubishi performance has improved in bf65774 after .


Excise anisotropic dissipation rates + generalize 3D isotropic dissipation rates

This PR excises the anisotropic dissipation rates (since this is no longer supported by Oceananigans 0.71+), and generalizes the isotropic dissipation rates to work for a wider range of viscosities (importantly, viscosities that are specified as functions of space and time).
Supercedes #67.
Might have to fix some tests, just opening this to see what happens.

Why do these functions accept location but then error if its not (Center, Center, Center). Wouldn't it be simpler not to permit this argument?

Why do these functions accept location but then error if its not (Center, Center, Center). Wouldn't it be simpler not to permit this argument?

When originally discussing this with @ali-ramadhan he suggested that since the idea was to expand for other locations in the future. We do need to flag that these functions are only appropriate for CCC somewhere though

I guess we can add a comment like
# TODO: add support for other locations

and remove the kwarg, perhaps? When / if we support other locations, we'll put the kwarg back?

I fixed the tests in this PR: https://github.com/tomchor/Oceanostics.jl/pull/67
but due to time (and since I was unsure of what the best course of action was at the time) I didn't actually modify the functions!
Maybe you should merge that branch?

I guess we can add a comment like
# TODO: add support for other locations

and remove the kwarg, perhaps? When / if we support other locations, we'll put the kwarg back?

Sure! I'm okay with that

I fixed the tests in this PR: #67
but due to time (and since I was unsure of what the best course of action was at the time) I didn't actually modify the functions!

Hmmm I don't see the fixes. But note I've made widespread changes here so there will probably be conflicts...

It looks like we don't have required approvals here? @tomchor feel free to merge when you feel satisfied.

It looks like we don't have required approvals here? @tomchor feel free to merge when you feel satisfied.

Weird, you should have permission, and there's no minimal number of approvals. I know @ali-ramadhan has merged things in the past so I'm not sure that's not working for you.
I approved the changes. Can you check if you can merge now? If now I'll merge it myself

I can approve, I just didn't want to without someone else looking.

I can merge, I just didn't want to without someone else looking.

Ah, I see your point. Since mainly it's been just me developing this package I didn't impose the need for approvals when merging, since most of the time no one reviews the changes. But I appreciate it :)


New ProjectV2 exporter

Looks like this project is only compatible with classic GitHub projects which uses a deprecated REST API.
I learned how to use the newer GraphQL API and created a new CSV exporter that supports ProjectsV2.
Anyone looking for an exporter for newer projects can try it here:
GitHub Project CSV Exporter (ProjectV2)

@wustep I added a link to your project from my README for people with classic projects. Maybe add a link to my ProjectV2 exporter to your README so people can find it?

Sure thing!