Terms are not completely removed by --make-species-subset

I'd like to get an OBO file of GO terms that make sense for pombe.  I've
tried:
owltools go-plus.obo --reasoner elk --make-species-subset -t NCBITaxon:4896 -o -f obo go-pombe-subset.obo

That nearly does what I need but the output OBO file has some stanzas
that I didn't expect.
As an example, in go-plus.obo, GO:0000795 ("synaptonemal complex") has
this relationship:
relationship: never_in_taxon NCBITaxon:4896 {id="GOTAX:0010058"} ! Schizosaccharomyces pombe

so I was expecting that GO:0000795 wouldn't appear in the output.
Instead it was there but with just "id:" and "alt_id:" lines:
[Term]
id: GO:0000795
alt_id: GO:0005716
CC @ValWood @mah11

Interesting. This is obviously not something you want, but it's a
predictable result of how things are specified.
Currently, the species subsetter will not try to remove any deprecated
classes (deprecated classes have no logical axioms to allow filtering).
One category of deprecated classes are classes that have been merged
into another class (alt_id).
Probably the most sensible thing here is a cascading delete rule. The
alt_id axioms are removed if they point to a class that has been
filtered out. If a deprecated class is left with no axioms then it
itself is removed.
Perhaps even more straightforward would be a removal of all deprecated
classes prior to subsetting, but that may be too extreme for you?

Perhaps even more straightforward would be a removal of all deprecated classes prior
to subsetting, but that may be too extreme for you?

If I'm following, that would mean removing all alt_ids?  If so, yes that would cause us problems.

I don't know whether the Jenkins check follows part_of (or the regulates relations, etc.), or only is_a.

Presumably the taxon check should follow all these relations?

Some of them are removed by default:
"evolved_from",
"homologous_to",
"evolved_multiple_times_in",
//"shares ancestor with"
"RO:0002158"

Thanks @fbastian
One thing I forgot to mention is that there are two approaches for doing these kinds of things. --make-species-subset uses a method that is highly eliminative. Essentially:

Assume your taxon is the only one in the world (literally: we assert an axiom that states this)
Remove any axioms that involve cross-species dependence (@fbastian's list)
Use reasoner to find unsatisfiable classes - which include any that have any existential dependence, direct or indirect on an unsatisfiable class

TL;DR - this is what you what you want for making an S pombe subset. It's also what we use for uberon subsets. But you would never use this for a pathogenic yeast or anything where you have symbiotic gene associations (ie regulates relations crossing into processes that can't be carried out natively in that organism).
The jenkins check uses a less eliminative / more conservative rule that doesn't state the solipsistic axiom. In this case classes are only eliminated if they are inferred via property chain axioms for in taxon which can be seen here http://purl.obolibrary.org/obo/RO_0002162
This means the jenkins check won't flag pathogenic regulation as a problem, but it is more liberal when it comes to your non-pathogenic yeast.
None of this has anything to do with the alt_id q, btw

If I'm following, that would mean removing all alt_ids? If so, yes that would cause us problems.

OK, then we have to go with the cascading delete solution.


My Weather App - v1.0

For this PR, I:

Designed basic template for displaying the weather information.
Added Storage class for creating logs.
Added Weather class for getting information from the OpenWeather API.
Added Unsplash class for getting information from Unsplash API.
Added Icons class for getting images for flags and weather.
Added a class for displaying Google Maps.
Created several classes for rendering, pages, components and configurations.

Done!. Thank you.


pygamer: remove wheel function for smart_leds hsv conversion

Closes #111
Just realized we have hsv conversion in the smart_leds library were already bringing in. Anyone against removing the copy pasted wheel function everywhere? Starting in pygamer for this PR.

I guess the argument against is its slow to do on demand inside the write ... But Im not seeing any issues on 5 leds on 120mhz samd51...

Yeah the wheel function was cribbed from some arduino code before we had hsv2rgb I think. Probably not necessary anymore

Do you want me to PR the other wheel still in upstream? m4 devices each
have an example I think.
On Sat, Dec 21, 2019 at 10:13 PM Paul<EMAIL_ADDRESS>wrote:

Merged #123 https://github.com/atsamd-rs/atsamd/pull/123 into master.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/atsamd-rs/atsamd/pull/123?email_source=notifications&email_token=AADPI5FAGN3NZSFDXYM3RQLQZ3ZQLA5CNFSM4J6EVZ52YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOVUEK3AQ#event-2903027074,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADPI5FMF6YU5OPURHML5PLQZ3ZQLANCNFSM4J6EVZ5Q
.

Sure


Very easy to create collisions between infinite and non-infinite queries

It is very easy for users to create collisions between infinite and non-infinite queries.
Consider a list API where we use token based pagination. The token is a string and an empty token means we want the first page.
I may call the API with useQuery and no page_token to get a couple results from the first page.
I may also call the API with useInfiniteQuery and a page_token for an infinite list of results.
The issue is both these calls produce an identical query key.
You can see why here... the connect code sets page_token to undefined for infinite query results.
https://github.com/connectrpc/connect-query-es/blob/639d4a529f236a50568021aa4a3db4b0d0dc0105/packages/connect-query/src/create-use-infinite-query-options.ts#L163
Example Proto
rpc ListUsers(ListUsersRequest) returns (...) {

}

message ListUsersRequest {
  optional string page_token = 1;
}

Example keys that are created
import { hashKey } from "@tanstack/react-query";
const useQueryKey = createConnectQueryKey(listUsers, {
  pageSize: 10,
});

const useInfiniteQueryKey = createConnectQueryKey(listUsers, {
  pageSize: 10,
  pageToken: undefined,
});

console.log(hashKey(useQueryKey) === hashKey(useInfiniteQueryKey))
// true

I'm not sure if there is a good solution for this but if there is it should be documented. For now one option is to manually check that every time I call useQuery I pass a page_token and set it to an empty string.

Hmm, this is true. Thanks for bringing this to our attention. I think something that we could consider is having useInfiniteQuery use a modified query key, with a trailing parameter to indicate it's for infinite query only. I'll need to investigate the ramifications of that. Since our query keys are all arrays, invalidating should still match without the trailing key, but I'll need to build up some tests to make sure that's the case.

In TanStack Query, query keys are completely up to the user.
Are there any use cases where you would want to share a cache between an infinite query and a non-infinite query? Or use cases where you would want to use exactly the same RPC, but with different caches?

Since our query keys are all arrays, invalidating should still match without the trailing key, but I'll need to build up some tests to make sure that's the case.

I'd also expect a query key to invalidate an infinite query that uses the same key with a trailing parameter. Did your tests confirm that, @paul-sachs?

thanks for the help, a trailing parameter sounds like a reasonable solution and everything @paul-sachs mentioned in the previous comment sounds accurate to me.

Fixed in https://github.com/connectrpc/connect-query-es/releases/tag/v1.2.0


OCAT detected by Windows 11 as potential security threat

There is nothing wrong with this, see here for details.
https://github.com/ic005k/OCAuxiliaryTools/issues/106


NuGet package is borked.

The .NET 4.0 folder contains the .dll and the 4.6.1 folder contains the xml... instead of them both being present in both folders.
The DLL doesn't get linked to your project when you add it.
Linking the DLL manually doesn't help.  You still can't add the control (if you do it by CLR namespace it will show up in the designer at least, but still no xaml intellisense, and it always crashes at runtime during initialize component).

The last project release was 9 years ago. At that point everything worked fine. If you know how to fix the issue for 2019, please raise a pull request.


Vector Index V3 (0.3?)

This issue tracks a new iteration of vector index in lance. A few learning we want to fix in this iteration/refactor:

the index build path currently uses inheritance like function calls. (it takes 6-7 layers of functions doing various minor setups to get to the actual build)
for each new index type we add, we need to write a brand new write_*_index function.
making extensions in the current indexing scheme is very difficult
For the foreseeable future our index structure will be IVF_<sub_index>_<quantization>

This refactor will take in place in a few stages
Stage 1 -- clean up index build

[ ] create a standard QuantizationBuilder trait
[ ] create a standard IVFShuffler trait
[ ] create a modular IVF index builder, where we can plugin different index types and quantization to IVF

[ ] for num_partition=1 there should be a special optimization where the centroid is omitted, unless the subindex type requires residualization
[ ] create a standard SubIndexBuilder trait

[ ] this trait should return a handle to read a single Struct, in which we have {index_data: [...], metadata: [...]}
[ ] this Struct will be later stitched with Structs from other partitions into a StructArray and saved to a lance_file::v2 file
[ ] this trait may also specify metadata() -> Vec<u8>before building. This metadata will be stored as part of the schema metadata. (NOTE: this must be known before opening the file writer, dynamically determined metadata from post-build can not be stored here)

[ ] Move to lance_file::v2 file format

Stage 2 -- Simplify and implement query path for new index version
TBD
Stage 3 -- Move existing index to the new builder
TBD
Stage 4 -- Delete old indexing code, old query path remains.
TBD
Stage 5 -- Fully deprecate old index format (V1 and V2)
TBD

for each new index type we add, we need to write a brand new write_*_index function.

More generally, I would like to see the methods we need to implement per index type moved into a main trait. Another example of a function we have to implement for each index is the optimize_ ones. Might be nice to write a draft of what those traits could be. Many of these are probably at the higher level (general index including scalar and FTS) rather than specific to vector indices.


Store_Name and Page_Style not working in PayPal app Version: 4.039 (Standard only)

Using Pay Pal payments standard with the PayPal App, the page style and store name are not passed along to Pay Pal. The default business name on the Pay Pal account is shown instead. The same style profile does work with Pay Pal express in the same app, so it is not a fault with the profile.
I have tested it on two different stores (both BS Gold versions of oscommerce), I have tested it with all lowercase letters in the profile name, it still does not display the store name or pay pal page style that it should.
Note:
Unfortunately it's not a simple case of just getting another Pay Pal business account because accounts with no history can be subject to 30-day money holds and other issues. I am pursuing Pay Pal standard because the flow of express checkout has proven confusing for many customers and wherever PP express is used (including eBay), it has a habit of absolutely butchering buyer's addresses (or passing back an address they didn't intend to use) - we'd rather have it all handled on site with payments standard.

I have a response from Pay Pal tech support after running some tests..
I acknowledge that this is a bug.
During the request, the value passed is ProfleName which should show this image (https://www.xxxxxxxx.com.au/images/storelogopp2.png) but unfortunately it just showing only"Business Name ".
I am now creating an Internal ticket to get this issue fix by the developer.
However, can you change the page_style to page_style_name? the correct parameter is page_style_name for WPS button.
=============================
The odd thing is, the docs I've seen say page_style is the correct parameter - if he is correct and it's page_style_name, the code in the Pay Pal app may need to be changed.

I stand corrected, this is from:
https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/Appx_websitestandard_htmlvariables/
It appears it should be page_style_name - how can this be changed in the PayPal App for oscommerce?

I'm not sure changing the parameter name to page_style_name will fix it for you - I understand that the name of the page style should be passed in the page_style parameter.
If you'd like to play around with this, check on line 393 on the following file:
catalog/includes/modules/payment/paypal_standard.php
Thanks for looking into this!

Gday Harald, I've heard Pay Pal assigns an entry level tech to answer questions in the beginning, that is why I was unsure of his answer to be honest. Until they have a developer look at the bug (their words), perhaps we should see what happens when they fix the issue at their end.
The other issue is, the store_name is not passing to Pay Pal at all with the Payments Standard part of the app, it defaults to the business name on the PP account. It works perfectly for express, but not in standard at all.

I just added a page style to our online demonstration and it's working there without any code modifications. Try it out:
https://demo.oscommerce.com
You will need to select the following payment method during the checkout procedure:
PayPal (including Credit and Debit Cards) (paypal_standard; Sandbox)
In the PayPal Page Style settings page, I added the osCommerce logo as a page header. Adding it as a logo didn't show.

When I put through a test order on there, this was the URL:
https://www.sandbox.paypal.com/au/cgi-bin/webscr?cmd=_flow&SESSION=x_4kNvz2mOXE3HBrpNgGAw82OXW1O08bloddRwkCa3uPS7PwSppYl6J5ys4&dispatch=50a222a57771920b6a3d7b606239e4d529b525e0b7e69bf0224adecfb0124e9b61f737ba21b08198308e6972871271d6300043af4fab8efe
When I put through a test order on one of my sites earlier, this is how it looked:
https://www.paypal.com/webapps/hermes?token=93B42238M71323323&useraction=commit&rm=2&xclick_params=bG9naW5fZW1haWwlM0RzYWxlcyUyNTQwYXVzdHJhbGlhbi1uYXRpdmUuY29tLmF1JTI2dGhpcmRfcGFydHlfY2FydF9uYW1lJTNEd3d3LnQtc2hpcnRzYXVjZS5jb20uYXUlMjZ1cGxvYWQlM0QxJTI2aXRlbV9uYW1lXzElM0RQdWclMjUyMEZhY2UlMjUyMENoaWxkcmVucyUyNTIwVC1TaGlydCUyNnNoaXBwaW5nXzElM0Q1LjUwJTI2YnVzaW5lc3MlM0RzYWxlcyUyNTQwYXVzdHJhbGlhbi1uYXRpdmUuY29tLmF1JTI2YW1vdW50XzElM0QyMi4wMCUyNmN1cnJlbmN5X2NvZGUlM0RBVUQlMjZpbnZvaWNlJTNEMTUwMTE3JTI2Y3VzdG9tJTNEMyUyNm5vX25vdGUlM0QxJTI2bm90aWZ5X3VybCUzRGh0dHBzJTI1M2ElMkYlMkZ3d3cudC1zaGlydHNhdWNlLmNvbS5hdSUyRmV4dCUyRm1vZHVsZXMlMkZwYXltZW50JTJGcGF5cGFsJTJGc3RhbmRhcmRfaXBuLnBocCUyNnJtJTNEMiUyNnJldHVybiUzRGh0dHBzJTI1M2ElMkYlMkZ3d3cudC1zaGlydHNhdWNlLmNvbS5hdSUyRmNoZWN
(I trimmed some of the URL, but you get the idea).

The different urls may be due to different PayPal seller account settings, regardless the page style should show.
There is also no store_name parameter defined for Payments Standard. The closest ist "cbt" which is shown on the PayPal payment completion page with the link returning the customer back to the store. This is used in the module but is only used if the total string length is no more than 60 characters long (as described on the Payments Standard technical integration guide).

Yes sorry, that is what I am referring to. The cancel and return to (store name) link defaults to the business name under our Pay Pal account instead of using the store name like the express module does.
As for the page style, we will see if their bug fix makes it function properly when they put a developer onto it, if not I'll see if changing to page_style_name does anything.

Changing the parameter name to "page_style_name" will more than likely not work. "page_style" is the correct parameter name.
You could try setting your desired page style as Primary, and entering "primary" as the page style name in the osCommerce module configuration settings.
It's also possible to preview the page style in your PayPal account settings - is it showing correctly here?

Yes it is showing correctly there and works perfectly with Pay Pal express, so it is a working profile, just not with Payments Standard. The store name also passes along perfectly with express checkout (if only the buyer addresses etc passed back to sites as well! haha).
If I cannot find a solution that will allow each of my sites to show customised payment pages, I may have to come up with some kind of joint banner/logo design that makes it clear name A is our business name but sites B and C are also our stores. I'll set that to Primary and hopefully it will show by default. I would really have preferred to keep them somewhat separate with their own logos and identities though.

What would help PayPal greatly is if you could forward them the parameters being passed on the checkout confirmation page. If you view the HTML Source on that page from your browser, you should see a bunch of hidden input parameters next to the checkout button, something like:

They'll then be able to see why it's not working for you.

They actually did that right away from their end. I set up Payments Standard on our least busy store (it's quite new) and let them run some tests - they did show me a screen capture of the code and showed the page_style etc - that's when they admitted that part being a bug. I will of course keep the support thread going until this is all sorted out.

Harald, I wanted to ask you about PayPal express checkout - part of the reason I no longer want to use it and need Pay Pal Standard fully functional is how erratic it is - I would prefer the customer enter their details on site and make sure we get the addresses correctly (especially in my store where often people send gifts to others). Have you heard from others complaints about the information it passes back to stores?
Just tonight, I had an order come through one of my new oscommerce sites, the order process email had no name entry at all, just an address under delivery and also under billing without the name slot altogether. On the site, the name does appear under customer and a partial name appears under the billing and ship to addresses (it was like R.W. Surname, but it cut the R off). This has happened about 3% of the time so far.
In other cases, I've had it have an entirely different ship to address than the customer swears they entered - it's happened too many times to be the customer picking the incorrect address. Also on one of our test transactions, a seller friend of mine selected her personal address for delivery, but when it went through her name was missing from the order process email and it put her business address in the ship to area rather than the personal one she picked. This is a seller with websites of her own that she works on herself, it is highly unlikely to have been buyer error.
I've had the words "Please Select" passed across as the business name of a customer who did not have a business name at all, the Please Select is from the address drop-down menu on Pay Pal. I've also had a few other random entries in the business name slot (it's not a required slot on our website).
The reason (despite my lack of knowledge of code) I think it has nothing to do with oscommerce and everything to do with Pay Pal express checkout is, I've also had erratic addresses on a Bigcommerce site when express checkout is used and on eBay FREQUENTLY. I've also never had any of this happen with alternative payment methods. Additionally, the way the checkout flow works I've also had multiple buyers across 3 sites think they placed an order when they didn't because they fail to press the final confirm order button and make a payment after they return from Pay Pal to the website, I added some words to the confirmation page to make it more obvious it needs to be pressed in the meantime.
I am admin of an eBay seller FB group, so I hear about mistakes in buyer addresses on a regular basis. The most frequent one is the suburb is missing altogether and the capital city is shown instead (causing order delays, a big no-no on eBay). I've personally had numbers added to the first name of the customer like 07Wayne or their postcode/email address is added into their name etc. There is also the situation where Apartment numbers are left off entirely, ending in parcels being returned to sender.
What I don't understand is, with Pay Pal specifically pushing people to use Express Checkout (they phoned me to talk me into using it last year even), why on earth don't they do something about the tech issues with it? They want to be the world's payment method, but this stuff has been ongoing for a long time now and I don't see it ending anytime soon.
At a grass roots level, this is causing real problems with transactions worldwide and can result in packages being undelivered, bad feedback on eBay and all sorts of issues between buyers and sellers. Buyers blame sellers, sellers blame buyers for entering a bad address but it tends not to be either of those at fault, it's Pay Pal express checkout! Sorry for the lengthy rant, the frustration has been building with this payment method for a while.

It would be great if you could perform test transactions on our demo site and see if you can reproduce it there. That would help us immensely in finding out if a problem exists in the payment modules.
The scenario to test is using EC on the shopping cart page and selecting a different shipping address in the EC flow.
For already logged in customers, their default shipping address should be passed to PayPal. For guests who have not logged in locally in the online store, their default PayPal shipping address should be used when they return back to the online store.
If a guest authenticates themselves at PayPal, either a new customer account is created locally with their PayPal email address, or if their e-mail address already exists, they are automatically logged into their local account (they already authenticated themselves at PayPal so this is secure).
Regardless of scenario, if the customer is logged on locally, their default shipping address should be used, otherwise their PayPal shipping address is used.

Customers also have the possibility to change their shipping address on the checkout confirmation page, however whatever is ultimately shown on the checkout confirmation page is what is stored and shown on the Admin -> Orders page.

In my tests on my own site, I picked a delivery address from a drop-down on the Pay Pal site and then I came back to my site to press the final Confirm Order button (and actually make the payment). The one sad thing is about online selling is, customers tend to read very little when placing orders, so if there is a bug in the address, they may not notice it.
I will see what I can do with the demo site and testing. It is October however, the Christmas sales quarter, (AKA our one big chance to actually sell a decent amount of goods all year) and I have a mountain of work to do as I'm still not Christmas ready, especially with two newish sites).

Did your PayPal shipping address show correctly for the order on the checkout confirmation page and the Admin -> Orders page?
What outcome would you like to have? Should it not be allowed to select a shipping address at PayPal during EC, or would you perhaps prefer to have the customer return to the checkout shipping page instead of the checkout confirmation page?

In my personal test orders, the addresses have come through fine but it almost seems like a pot-luck situation. Some orders are always fine, then others are randomly messed up in one way or another.
I would prefer the customer choose all addresses on my website and only move to Pay Pal for payment, that's why I've been trying to get standard working (I also had to get modifications to have QTPro take quantities off correctly as I sell clothing).
The flow of Pay Pal express checkout seems to be unnatural for buyers - returning to the site from Pay Pal should be all they need to do (like with standard how you pay at Pay Pal, then return to a success page with the order already confirmed). I've found with Express checkout customers were returning to the site and simply either logging off or closing the browser, no payment, no order. I've even had a couple phone up and ask about the whereabouts of their order (that they never placed).
Things need to be as simple as humanly possible, looking at it from a retail customer point of view, I think Pay Pal should have tried more to empathise with your basic internet user that has pretty much no technical knowledge at all (and doesn't read much of anything when it comes to instructions), because they do make up a significant percentage of online shoppers and if you make it dead simple for them, then it will work for everyone.

Bad news for Pay Pal Standard - direct quote:

This is the update that we get from the development team ;

Custom styles are deprecated in functionality. Hermes deprecated support for this a long time ago (last year) and will not be supporting it going forward.
Apologies for any inconvenience caused.

Thanks for forwarding that to us.
If you'd like to use EC just for payment, what do you think of the following flow:
Shopping Cart -> EC -> Checkout Shipping -> Checkout Confirmation
Logged in local customers would have their standard shipping address set, and guests would have their PayPal shipping address selected by default.
We did previously finalize the order when the customer returned from EC back to the store - we checked if the order totals matched with regards to cart items, shipping, and taxes, and if the totals matched, the order would be processed skipping the checkout confirmation page.
There is no way though to determine that up-front. It is possible to change the final EC button from "Continue" to "Pay Now" however:

if "Pay Now" is shown and the order totals did not match, the customer would be shown the checkout confirmation page which they might not finalize,
if "Continue" is shown and the order totals match and the order is finalized, it could scare the customer as to why their order was suddenly processed and this also introduces legal issues (some countries must show a "Pay Now" button with intent for purchasing the order).

BTW, which EC checkout flow are you using? There is the standard full page checkout flow, and a popup checkout flow called In-Context.
Our demo site uses In-Context - have you already seen this?

I do think the button changing to Pay Now from Confirm Order would be better (it's Confirm Order in my version) if the flow remains with the customer returning to the site AFTER they visit Pay Pal. This flow suggestion Shopping Cart -> EC -> Checkout Shipping -> Checkout Confirmation would be better. When the order has more than 2 or 3 items on it, the Pay Now button can be below the fold of the page, I think having a Pay Now button at the top of the order (perhaps on both ends) also may be more obvious to the customer.
I am not using the popup checkout flow (i'm actually unaware of that). My main issue is solving the bad addresses so your suggested flow should help that.

Gday Harald - in your opinion, are any of the other solutions in the Pay Pal app suitable? I have never used PP Payments Pro (hosted or otherwise), would either of those solve the address and customisation issues? I am not familiar with how they work. We effectively will have 3 totally different named/themed stores running out of one Pay Pal account.
I guess the other question is, would we have the same stock issue with either of those as with PP Payments Standard (where the attribute quantity is not deducted but the total number of stock changes after a sale)?


[docs] added flutter-fix and dart-fix public links

Added public link for dart fix in the doc. TODO label for it was added.
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
I listed at least one issue that this PR fixes in the description above.
I updated/added relevant documentation (doc comments with ///).
I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt.
[ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@Piinks Also I had accidentally (again!) closed this PR, that has caused some CI tasks to be cancelled. How do I re-run them?

@Piinks Also I had accidentally (again!) closed this PR, that has caused some CI tasks to be cancelled. How do I re-run them?

Force push, did the job.


--quiet in cron

/usr/bin/letsencrypt renew && service nginx-sp reload in cron as root on Ubuntu 18.04 works, but I recive all 12h email.
I want only recive a email if is fail.
I try with /usr/bin/letsencrypt renew --quiet && service nginx-sp reload and i recive a email with the message /bin/sh: 1: service: not found.
In bash shell works with --quiet.
What am I doing wrong?

Works with 0 */12 * * * /usr/bin/letsencrypt renew --quiet && /usr/sbin/service nginx-sp reload


Some files are missing tuarua.github.io/air/air_packages.json

Hello Eoin Landy
Please update the dependency file "air_packages.json"
I can't create ANE "Google Identity" in AIR-Tools

Sorry, I wasn't paying attention. Everything works great.


feat: Add timelines property

Allows working with timelines other than the active timeline.
Just wraps GetTimelineByIndex in a ranged loop set by GetTimelineCount.
Fixes #18

Merged!


will release the universal ner benckmark data?

We are in the process of determining the best way to release the complete benchmark data, given the licensing constraints on many datasets in it.

Any updates? @wzhouad


Profile page

Addresses #137 (and also #138, #139, #140, and #141). Mostly works, except for:

CSS is all wrong
Code is not dry. Actually dripping wet. Suggestions appreciated.

Updates:

Improved CSS - looks more like FIGMA than before, but still needs work (also not responsive at all)
DRYer tables
moved mock data so it won't conflict with Jest mocks


links added

books
What does this PR do?
Add resource(s) | Remove resource(s) | Add info | Improve repo
For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[ ] Read our contributing guidelines
[ ] Search for duplicates.
[ ] Include author(s) and platform where appropriate.
[ ] Put lists in alphabetical order, correct spacing.
[ ] Add needed indications (PDF, access notes, under construction)

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

The repo does not host books. Please read CONTRIBUTING.md guidelines.
Please read CONTRIBUTING.md guidelines!


WIP global: refactoring of models

Refactors models to support sharing the same files between multiple buckets.

Signed-off-by: Lars Holm Nielsen<EMAIL_ADDRESS>

Looks good


Add HTML tidying as an option

https://gohugo.io/news/0.69.0-relnotes/
Given the hugo templating engine creates whitespace hell in output now that  resources.PostProcess exists it would be awesome to have a similar hook to tidy the output HTML.
Here's a great Go lib that does it perfectly https://github.com/yosssi/gohtml

You know you can minify the output?

Yes. Not really the point though when you're design focused and looking at your DOM output. I know the javascript world has destroyed that but one of the nicest things about hugo is outputting simple, classic static html.
Thanks for all the work you do on hugo 🙏🏽

You're right, the HTML output from Go templates leave much to be desired ...
Note that I think this should be implemented in the same place as we do output minification. PostProcess is something ... different (not sure what ... yet).

I've written an initial implementation of this: #7825
I'd love some feedback.

Hi, I was migrating Jekyll sites where I use the handy jekyll-tidy plug-in over to Hugo. Tidied HTML output was something I missed in Hugo and would make it much easier to design and work on my sites! A big 👍🏻 for seeing this one in a future release. 🤞🏻

This is actually harder than it seems (I have looked at it). For one, github.com/yosssi/gohtml has some bugs in it and it's not very fast.

I noticed a forum thread where someone shared a number of other libraries, and also gave the idea of adding it a C library in Go using hugo-extended. Perhaps there are other ways to approach this than with yosssi/gohtml?

Perhaps there are other ways to approach this than with yosssi/gohtml?

Certainly not with a C library -- a feature must be really must have before we take that path.

As an inelegant workaround I do something like the following.
# build.sh

hugo

npx<EMAIL_ADDRESS>"public/**/*.html" --parser html --write
npx<EMAIL_ADDRESS>"public/**/*.json" --parser json --write


Merge two additional quickstart tiles into dev center

@TomArcher  please review and approve this once staged.

@rloutlaw,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

docs-ref-conceptual/index.yml
:white_check_mark:Succeeded

docs-ref-conceptual/media/k8s_logo.svg
:white_check_mark:Succeeded

docs-ref-conceptual/toc.yml
:white_check_mark:Succeeded

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


[T4A4][W11-B3]Cherlynn Cha

Ready for review

Some comments added. Please close the PR after reading comments.


Skip changelog prompt if changelogs are disabled

Problem
When changelog is false in the config file not to generate changelogs, there is still a useless changelog prompt when running the changeset CLI command.
Proposed solution
Would be great if the prompt would be skipped automatically if changelog is false.

This is an interesting use case - how do you use Changesets without any changelogs at all? What's your workflow and your goals in such a setup?

This is an interesting use case - how do you use Changesets without any changelogs at all? What's your workflow and your goals in such a setup?

To be fair I don't have the most traditional use case...
It's a private project so I use changesets for an easy experience to bump package versions in a monorepo.
I don't care about changelogs because the code is not public.
I only use versions internally to track which version of my mobile app people are using, for example.


Should support signed url for cos resouces

doc of getting a signed object URL from Tencent cos service: https://cloud.tencent.com/document/product/436/12264#.E8.8E.B7.E5.8F.96.E9.A2.84.E7.AD.BE.E5.90.8D.E9.93.BE.E6.8E.A5

:tada: This issue has been resolved in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Test colindean/patch-1

Creating a copy of https://github.com/caketop/python-starlark-go/pull/120 in the hopes that GitHub will let it access the TEST_PYPI_TOKEN if I'm the PR author

Ok, this has served its purpose


Generating control plane sdks for playwrighttesting

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

/azp run prepare-pipelines

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.ResourceManager.PlaywrightTesting


[Addition]:

Hotspot b58 Addresses
112sZpPbLiu8c2stCWctGNeSfSxeCbyXnDJDJK5T893xzBDt5FUp
11TLfpgmHVqCG2TYKGUZrrVebJ8cidu7TY2JYwCAKAQ4HbBTHjd
112gksjWfZ9PwgWucz6oy4YSXvUfoNxkuTgCHYuBMffcJAEJsGS
11EJs1nqWnHZQJnaELznZE59oYrc1FEEjG4v3q7XSjtTHAnnMk1
11Xg1EnExXLhFCCpN7UvjgqyRsE7Q8hM9DFfUCV12wsQofuUdEE
11nKNYxUxQHd2BpU9uqcqD91wCueivfpbpWHmw6HAAKcirPNWdd
Discord Handle
No response
Reason(s)
Owns multiple hotspots that all witness each other. My hot spot only witnesses what’s his even one that’s 55km away which is also his it just seems fishy. Plenty of other hotspots near me which I don’t witness.

When does this get reviewed?


Way too hard to use, just give me the diagram with costs.

Feature name
Give me the whole architecture for an account in one click, or by stack at least. Selecting by resource is silly.  I don't mind setting up cost reports and stacks in every account, if it all works. I can get all the resources in an account in a diagram
Is your feature request related to a problem? Please describe.
A description of what the problem is.
Describe the feature you'd like to see implemented
I use cloudcraft.com
Describe the value this feature will add to AWS Perspective
Tell us how this feature might improve AWS Perspective.
Describe alternatives you've considered
cloudcraft.com, gives me a architecture but without costs.

Additional context
I've been using cloudcraft.com, and I guess I'll continue until you catch up and can do the kinds of diagrams attached with only selecting the account.

Hi, thanks for the feedback. We did avoid the 'show me everything in my account' option during the design of Perspective, as the diagrams can get very busy very quickly, but it sounds like there is a happy middle ground that Perspective should look to support here. We have detailed several ideas in Issue #31, so please take a look there and provide any additional feedback.

75 page implementation guide. Even after following the instructions I'm still getting errors. This service is far too complicated to use.


What shaders were used on example pic?

im talking about this one

It's a very old comparison and I don't remember which specific settings I used for the original Anime4K shader. It's just there for illustrative purposes and the default settings for the newer shaders perform better anyway.

which one do you think is best for old anime?


Changes to send mail via smtp port 465

AlertManager currently is not able to send mails to smtp port 465. Adding this change that will take care of the above. In alertmanager conf file, you need to explicitly supply "require_tls" to false, in order to work with smtp port 465
Refer issue #705
@stuartnelson3  @beorn7

@stuartnelson3 @beorn7 is there any update on this?

@stuartnelson3 Could you have a look? I have not much state on this.

Thanks for the pr! Could you run your code through goimports and gofmt? Seems like some formatting is off.

Fixed formatting issues in the previous commit.

I haven't worked with SMTP servers in Go either. @stuartnelson3 I'd say if you like it and nobody objects, go for it.


Implements DecodingStrategy.

This is a proposed solution to implement DecodingStrategy, with some strategies available for base64 and base64url encoding formats.
Current implementation defaults to None, in order to preserve current External Secrets behavior, as some secret values might get misconverted to base64 due to their nature (for instance, numbered values).
Fixes #920

[x] Functionality itself
[x] e2e tests
[x] documentation

Signed-off-by: Gustavo Carvalho<EMAIL_ADDRESS>

/approve

I will leave this one open so other people can jump in and take a look :)

@moolen we already merged as you are on vacations, but feel free to open up issues if you spot something weird here


Added a helper function to support cross repo blob mounting

This includes everything from #631 but adds more (debatable) changes.
Closes #580
I realize I still need to add tests but I wanted to see if this approach is acceptable first.

Codecov Report

Merging #632 (c1b4ce3) into main (062ed0e) will decrease coverage by 0.39%.
The diff coverage is 2.85%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@            Coverage Diff             @@
##             main     #632      +/-   ##
==========================================
- Coverage   75.12%   74.74%   -0.39%
==========================================
  Files          59       59
  Lines        5427     5460      +33
==========================================
+ Hits         4077     4081       +4
- Misses        995     1024      +29
  Partials      355      355

Files
Coverage Δ

registry/remote/repository.go
70.95% <0.00%> (-0.27%)
:arrow_down:

copy.go
57.40% <3.22%> (-5.25%)
:arrow_down:

@Wwwsylvia Any feedback on this approach?

@ktarplee I'm busy with other stuffs these days, might take a closer look into this a bit later. Sorry for the inconvenience. 😟

Why does registry.Repository not include registry.Mounter?

Why does registry.Repository not include registry.Mounter?

registry.Mounter was introduced in v2.2.0 where breaking changes were not allowed.
https://github.com/oras-project/oras-go/blob/f29607202d5a72ee5325171bf7fc6698ccb4e45f/registry/repository.go#L113-L124

I need some more time to review this and do some integration tests.

@shizhMSFT Please take a look when you have a chance.

@shizhMSFT Please take a look when you have a chance.

I’m currently OOF and will review when back.

LGTM although IANAM
(Tried to implement an index creation command based on d5cc4c20693ee5b31237fdf626dd8f6ee942a5c9 and it looks good, see )

I have an idea to improve the API design of this and allow for trying to mount from multiple source locations.  I will work on that very soon.

Closing this in favor of #665


Custom display value for ETHBTC, so dropdown shows "ETH/BTC".

Description
Added a custom handling of "ETHBTC" getDisplayAsset to return "ETH/BTC".
Value should appear in market dropdown.
Related issue
None
Motivation and Context
Easier to skim markets and identify this ratio market.
How Has This Been Tested?
Crude testing in Chrome using local source override. Less than ideal.
Screenshots (if appropriate):
Showing from and to:

I can see from the fleek build that this is broken, apparently due to graph and 24h change dependence on this value.


0.17 support

:+1:

I had a little look into this today, but the Elm object no longer has swap or dispose, so It seems like this will be quite difficult without reaching deeper into the internals, or doing something even wackier.

I just published 0.3.0:
Elm 0.17 support
swap port and EmptyAction are gone. Enable this loader and it just works.
Incoming ports still work after hot swapping
@glenjamin Yes, I had to read source code again and again to find a wacky way to implement this. 😄

:100: @fluxxu rock on


Stop libav compatibility links from being considered as genuine.

Debian has abandoned libav for ffmpeg, but provides compatibility links to ffmpeg equivalents for programs that still require libav tools. youtube-dl doesn't differentiate between the two, so incorrectly complains about avconv being outdated and refuses to do any muxing. See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798936.
This fix prevents registration of version numbers for compatibility links, so that youtube-dl is forced to deal with only tools that are actually installed.

Probably it is not too common, but this would break if you symlink avconv to something like avconv-11.4. Why don't you just use --prefer-ffmpeg? Also, there is some discussion in #8622 for prefering ffmpeg over avconv.

Why not just parse the output of -version and recognize the actual app by {avconv,ffmpeg,avprobe,ffprobe} version ... pattern?

@jaimeMF I have updated the PR to address that type of symlink. I'm aware of the --prefer-ffmpeg option, but it's not unreasonable to expect software to behave correctly in spite of what the default preference is.
@dstftw Whatever is easier, as long as the problem is fixed. I just wasn't prepared to break the expected behaviour of get_exe_version().

It can be easily simlinked to ffmpeg under arbitrary-name and will fail to detect it at all. Thus this solution won't work in general.

@dstftw's proposal to look into the output of -version seems more reasonable.

I've updated the fix again. Hopefully the new regex satisfies all requirements and doesn't break anything.

No, it does not work at all. avconv simlinked to custom ffmpeg results in:
[debug] exe versions: avconv present, ffprobe 2.8.5, rtmpdump 2.4

It should detect it as ffmpeg 2.8.5.

@dstftw Would you be kind enough to show me the -version output of your custom ffmpeg? Thanks.

By custom I mean installed under custom name. The -version output is intact.

I can't reproduce what you have. If you have avconv symlinked to ffmpeg with an arbitrary name, wouldn't you also need an ffmpeg symlink to the arbitrary name for it to detect the presence of ffmpeg?

No, why? I've a valid name found via $PATH (avconv) that is simlinked to some arbitrary path where ffmpeg is located, it just should read the output of avconv -version and figure out it's actually ffmpeg.

That behaviour is as a result of existing code, not as a result of the changes I'm trying to introduce. Without complicating things, all the fix is trying to do is to prevent ffmpeg from being passed off as the real avconv, or vice versa. I'd be happy to close this ticket, if you would open another that fixes my original problem and the extra feature you want.

This bug is still present in version 2017.08.18 (on Ubuntu 16.04, where avconv is symlinked to ffmpeg). A workaround is to specify --prefer-ffmpeg either on the command line or in ~/.config/youtube-dl/config.


Fix fetch of credentials when cache is seeded with username

Fixes the failure to lookup credentials in https://github.com/astral-sh/uv/issues/3205
The issue is that we seed the cache with the index URL which includes a username but no password. We did not ensure that a password was present in the cached credentials before attempting a request with them. Now, the cache will not return credentials when a username is provided and the cached credentials have no password — the cached credentials are useless in that case.
Tested with a Google Artifact Registry and keyring
RUST_LOG=uv=trace cargo run -q -- pip install requests --index-url<EMAIL_ADDRESS>--no-cache --keyring-provider subprocess -v

@zanieb I can confirm that this restores the behaviour of 0.1.35 for Azure artifacts.


WIP: url state encoding

Very much work in progress.
re: #387
Working so far only on URL encoding and decoding the states of the filters. Sidebar state and preview state not yet addressed. View switch not yet addressed.
When a filter is selected:
(router.js)

history.replaceState() with the stateObj representing all active filters pushed to the window and a location hash pushed to the URL
does not use jQuery.param() because the resulting string was too messy and verbose; needed custom pattern and abbreviations
adds short_name property to dataChoices and uses that as the abbreviation

When a URL with location hash matching "#/HI/" is loaded:

a "Loading saved state" screen is placed over the view
router.js parses the location hash and sets app state individually for each filter represented in the location hash
is working for the functioning categorical and continuous filters

Notes

router.js sets the window's history.state but in the end this is not ever read back in. the history.state would only be available on browser back or forward, not on a fresh load of a paramified URL, so I opted to rely only on the encoded URL for forwards, backs, and fresh loads. This might avoid some cross-browser issues, too.
Reading in a paramified URL triggers the filters and everything works, except that the filter UI elements are not affected by the programmatic triggering of the filters. That's a to-do.
Also, X'ing out a pillbox isn't working on filters read in from the URL. This is probably connected to point above. Maybe the X'ing out relies on DOM status (the positioning of the filters ) rather than state? Needs some investigation

To do

somehow bind the filter UI elements to a programmatically triggered filtering
add functionality for date filters, when available
add sidebar status and preview status to the existing (replaceState) functionality
build out similar handling for view switching, using pushState

Sounds good so far @ostermanj. Let me know when you're ready for a review.
On your TODO about binding the filter UI elements, I think you'll want to copy the this.clear() approach that is included in the creation of each of the filter control elements. You can add something like this.set = function(values) { } to each of the component types. Each of the filter UI elements requires its own custom way of adding values to it.

@ostermanj Just wanted to check in - where does this stand? Let me know if it's ready enough for a review with current progress. If it's possible to merge in enough changes that we can get the back button to work when a user visits the project page that would be a good intermediate step - and would be worth including in the interim user tests happening at the end of this week. Let me know!

I'll be able to work on this much of tomorrow and should have it all ready
before the work session. Hope so!
On Mon, Jul 31, 2017 at 7:35 PM Neal Humphrey<EMAIL_ADDRESS>wrote:

@ostermanj https://github.com/ostermanj Just wanted to check in - where
does this stand? Let me know if it's ready enough for a review with current
progress. If it's possible to merge in enough changes that we can get the
back button to work when a user visits the project page that would be a
good intermediate step - and would be worth including in the interim user
tests happening at the end of this week. Let me know!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/codefordc/housing-insights/pull/422#issuecomment-319226084,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANAvkHDWU2n0fdmasVahXYuJ3v_8RX-Tks5sTmTWgaJpZM4Oc2Jh
.

Great, thanks!

Continuous and date filters are being encoded and decoded successfully, in addition to categorical filters. I'll probably be able to commit the rest of the ticket (view changes and sidebar statuses) by the end of the night, but wanted to update the PR before the work session started.

Getting there . . .  Latest commits handle back button functionality from the browser and in-app. A couple things still to come:
— encoding and decoding the sidebar states of the map view
— handling the include nulls boolean of the filters

@ostermanj I've just done a small amount of test driving this branch, not a proper code review.

Back button for project view works as expected (yay!)
Continuous and date filters work and are being appropriately reset in the view
Categorical filters are only working for choices that do not have spaces/dashes in them. For example, for subsidy program, HOME and LIHTC work but "Project-based section 8" is not properly decoded when loading a url that contains it (it is placed in the url in the original view, though).

Given the back button functionality and progress so far, I'm inclined to merge as-is so that the user testing can have the back button, and keep picking up the rest of this in a future PR (sidebar, categoricals with spaces, and nulls). What do you think?

Great! I should have an updated commit before five, if you want to wait. I
was sooo close, but discovered some buggy behavior with the clear pillboxes
and clear all pillbox. I think I've almost got it, though.
On Thu, Aug 3, 2017 at 4:11 PM Neal Humphrey<EMAIL_ADDRESS>wrote:

@ostermanj https://github.com/ostermanj I've just done a small amount
of test driving this branch, not a proper code review.

Back button for project view works as expected (yay!)
Continuous and date filters work and are being appropriately reset
in the view
Categorical filters are only working for choices that do not have
spaces/dashes in them. For example, for subsidy program, HOME and LIHTC
work but "Project-based section 8" is not properly decoded when loading a
url that contains it (it is placed in the url in the original view, though).

Given the back button functionality and progress so far, I'm inclined to
merge as-is so that the user testing can have the back button, and keep
picking up the rest of this in a future PR (sidebar, categoricals with
spaces, and nulls). What do you think?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/codefordc/housing-insights/pull/422#issuecomment-320077008,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANAvkHuPH4C0qtHbuxsosv1fBwVlN10-ks5sUimJgaJpZM4Oc2Jh
.

@NealHumphrey All set here. The underscore bug is fixed, plus some other messy issues I was dealing with. Still to come: sideBard state encoding/decoding, and removing url parameters when filters are manually set back to original conditions.


updated the XRTKs Service locator script execution order to -50

XRTK - Mixed Reality Toolkit Change Request
Overview
On some platforms the services were not setup before some scripts wanted to request services.
While these scripts should be more resilient to lazy service initialization, we probably do want the locator to run before most everything else in the scene.

This change only updates a .Meta file?  Is something missing? @StephenHodgson

That is correct


mocha TDD --bail --exit does not call suiteTeardown() after failed test

Prerequisites

[x] Checked that your issue hasn't already been filed by cross-referencing issues with the faq label
[x] Checked next-gen ES issues and syntax problems by using the same environment and/or transpiler configuration without Mocha to ensure it isn't just a feature that actually isn't supported in the environment in question or a bug in your code.
[x] 'Smoke tested' the code to be tested by running it outside the real test suite to get a better sense of whether the problem is in the code under test, your usage of Mocha, or Mocha itself
[x] Ensured that there is no discrepancy between the locally and globally installed versions of Mocha. You can find them with: node node_modules/.bin/mocha --version(Local) and mocha --version(Global). We recommend avoiding the use of globally installed Mocha.

Description
Using mocha TDD ( https://mochajs.org/#tdd ), and calling mocha with --bail and --exit. on a failed test, mocha stops and does not execute the suiteTeardown().
My assumption would have been that the suiteTeardown() is always called, even after a failed test.
Steps to Reproduce
suite('suite', () => {
  suiteSetup(() => {
    console.log('suiteSetup');
  });

  suiteTeardown(() => {
    console.log('suiteTeardown');
  });

  test('mytest', done => {
    console.log('mytest');

    done(new Error('fail'));
  });

  test('mytest async', async() => {
    console.log('mytest async');

    throw new Error('fail');
  });
});

no options:
$ mocha --ui tdd test/units/

  suite
suiteSetup
mytest
    1) mytest
mytest async
    2) mytest async
suiteTeardown

  0 passing (11ms)
  2 failing

  1) suite
       mytest:
     Error: fail
      at Context.done (test/units/testTests.js:15:10)

  2) suite
       mytest async:
     Error: fail
      at Context.test (test/units/testTests.js:21:11)

only --bail:
$ mocha --bail --ui tdd test/units/

  suite
suiteSetup
mytest
    1) mytest

  0 passing (9ms)
  1 failing

  1) suite
       mytest:
     Error: fail
      at Context.done (test/units/testTests.js:15:10)

suiteTeardown

only --exit:
$ mocha --exit --ui tdd test/units/

  suite
suiteSetup
mytest
    1) mytest
mytest async
    2) mytest async
suiteTeardown

  0 passing (11ms)
  2 failing

  1) suite
       mytest:
     Error: fail
      at Context.done (test/units/testTests.js:15:10)

  2) suite
       mytest async:
     Error: fail
      at Context.test (test/units/testTests.js:21:11)

both, --bail and --exit:
$ mocha --bail --exit --ui tdd test/units/

  suite
suiteSetup
mytest
    1) mytest

  0 passing (9ms)
  1 failing

  1) suite
       mytest:
     Error: fail
      at Context.done (test/units/testTests.js:15:10)

Expected behavior: I expect that in ALL cases, the suiteTeardown() is executed.
Actual behavior: If I give both, --bail and --exit, the suiteTeardown() is not executed.
Reproduces how often: 100%
Versions

The output of mocha --version and node node_modules/.bin/mocha --version: 5.2.0
The output of node --version: v10.13.0
The version and architecture of your operating system: ubuntu 18.04
Your shell (bash, zsh, PowerShell, cmd, etc.): bash
Your browser and version (if running browser tests): n/a
Any other third party Mocha related modules (with versions): n/a
The code transpiler being used: n/a

Additional Information
n/a

It is not clear how Mocha should behave in case of --bail. There is a discussion in issue #3398, but no decisions have been made, yet. (TDD suiteTeardown = BDD after-hook)


doc: add stdenv passthru chapter

Reviewer on another PR queried about documenting a passthru attribute it adds, and looking into it led me to see how thin and scattered existing passthru docs are.
I'm hoping to keep this fairly narrow (reworking the skeleton and moving existing coverage) to focus review on what I see as the big/fundamental questions here:

whether we should have such a section
whether that section should list common passthru attrs
what razors we should apply to decide when a given passthru attr deserves mention here as opposed to a more-specific part of the manual, an in-repo README, code comments, etc.

@NixOS/documentation-team and @infinisil (given ~ownership of repo-internal READMEs, where a large fraction of the more in-depth passthru.tests coverage was moved last year).

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

whether we should have such a section

Absolutely

whether that section should list common passthru attrs

Yes

what razors we should apply to decide when a given passthru attr deserves mention here as opposed to a more-specific part of the manual, an in-repo README, code comments, etc.

If it's commonly used, it should be in the common section. Otherwise the specific build helpers should document their passthrus and refer back to the common section.

Force-push to incorporate changes that landed a few hours ago via #315616.
I did reline the changes there and make some small phrasing/consistency edits.

What is needed to merge this?

I will properly review and merge on Monday or Tuesday.

@abathur here's a sharper razor: if it is only ever needed by contributors, which is likely if links refer to the latest revision of the source code, then it's for the contributor guide. if examples won't go stale if the underlying code changes or moves, it's for the user's manual.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/2024-06-14-documentation-team-meeting-notes-132/47182/1


az aks create ... command results in error: The password must contain at least 1 special character

Something seems to be broken with the content in this tutorial. I've tried three different types of AAD secrets, and even tried not including any AAD information at all. This leads me to believe that this error is related to different functionality.
I'm running azure-cli v2.0.60
Full error details:
The password must contain at least 1 special character. paramName: PasswordCredentials, paramValue: , objectType: Microsoft.Online.DirectoryServices.Application
Command being run:
az aks create --resource-group $resourceGroup `
              --name $clusterName `
              --generate-ssh-keys `
              --aad-server-app-id $serviceId `
              --aad-server-app-secret **redacted** `
              --aad-client-app-id $clientId `
              --aad-tenant-id $tenant

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

ID: a47c6df7-5103-1336-eb0b-68f95155e6c8
Version Independent ID: f4420b08-9b57-f581-fcb4-f069afdd5b0c
Content: Integrate Azure Active Directory with Azure Kubernetes Service
Content Source: articles/aks/aad-integration.md
Service: container-service
GitHub Login: @iainfoulds
Microsoft Alias: iainfou

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

@kellsMS can you try creating the SP with az ad sp create-for-rbac --skip-assignment and specify with az aks create --service-principal --client-secret as per https://docs.microsoft.com/en-us/azure/aks/kubernetes-service-principal#manually-create-a-service-principal
Also, looking at your username I was curious as to if you were an FTE, if so please ping me offline as well :)

Closing as discussed offline :)

Adding some info for others who find this.
The doc works exactly as written. However, if you do not have admin access to your AAD Tenant then you might have issues such as some users find. For example, as an MSFT employee you do not have access to the MSFT AAD and hence, need to create the SP with az ad sp create-for-rbac --skip-assignment and specify with az aks create --service-principal --client-secret as per https://docs.microsoft.com/en-us/azure/aks/kubernetes-service-principal#manually-create-a-service-principal

What was the result of this when discussed offline? Would like to know so I can fix for myself

Just an update for everyone. The doc works as expected. People seeing issues are internal MSFT employees. This is due to the permissions on the MSFT AAD. So if you are an internal FTE you should create the SP with az ad sp create-for-rbac --skip-assignment and specify with az aks create --service-principal --client-secret as per https://docs.microsoft.com/en-us/azure/aks/kubernetes-service-principal#manually-create-a-service-principal
Or of course, use a personal subscription instead.

@kendallroden / @MicahMcKittrick-MSFT We pushed a fix for this so updating to v2.0.61 should include a fix.

@kendallroden / @MicahMcKittrick-MSFT We pushed a fix for this so updating to v2.0.61 should include a fix.

Observing the same on AZ -CLI v2.0.61.

For the lazy (like me) the precise replacement that worked is to change the Lab's current line of:
az aks create --resource-group k8s-aks-cluster-rg-INITALS --name aks-k8s-cluster -disable-rbac --node-count 1 --node-vm-size "Standard_A1" --generate-ssh-keys
To a two step process, first:
az ad sp create-for-rbac --skip-assignment
And use the return from that call to complete the second rewritten line, replacing INITIALS from earlier steps within the lab, and  and  from the step 1 above:
az aks create --resource-group k8s-aks-cluster-rg-INITIALS --name aks-k8s-cluster --service-principal <appID> --client-secret <password> --disable-rbac --node-count 1 --node-vm-size "Standard_D2_v2" --generate-ssh-keys
It took about 30 minutes to complete!


Leaky mlir namespace from header file

Header file /src/Dialect/ONNX/ONNXOpsHelper.hpp (link to line | link to PR) leaks using namespace mlir. Generally, leaking namespaces from header files is an anti-pattern. All files that include them will be forced to use these namespaces, as do the files that include these files, etc...After many layers, the end-users might end up using a namespace unknowingly. If there happens to be a name overlap between global and mlir namespace, users might be confused which one they're using, especially for operators. What's worse, when moving some code from a cpp file that indirectly includes this header to another one that doesn't, suddenly nothing works...
From Google C++ Style Guide: Namespaces

Do not use Namespace aliases at namespace scope in header files except in explicitly marked internal-only namespaces, because anything imported into a namespace in a header file becomes part of the public API exported by that file.

will address this in a PR shortly

implemented in PR #654


Change Name on ShippingAddress to be optional

I hit this error while pulling my own orders and an order came back without a name. Confirmed it works after fixing this.

Thanks, @mvd7793!


Fixes formatting

7 days in between proposing a change and having it merged. The turn-around times have gone down considerably. Thanks a lot, this is much appreciated!
One question, though, if you don't mind: Is there a public document describing where this documentation came from, how it was translated, and most importantly, what the preferred formatting is (Markdown vs. HTML), and why?

We don't have something like this specifically for the Win32 API docs (the subject of this particular repo), but the Microsoft Docs contributor guide has some general info that applies generally to all Microsoft technical docs.


Accessibility issue on closing file

VSCode Version: 1.52.1
OS Version:  Darwin x64 20.2.0 (macOS 11.1.0 BigSur)

Steps to Reproduce:

Open any file
Change something in it
Cmd+W to close the file
In alert window I cannot select any options except Save file. Arrow keys are not working. Tab key is not working. Alt+ is not working. The only way I can select Don't save is by using mouse or touchpad.

Does this issue occur when all extensions are disabled?: Yes

Please review the macOS help pages from Apple to learn more about dialog accessibility.

Please review the macOS help pages from Apple to learn more about dialog accessibility.


Create index.md

Please confirm this pull request meets the following requirements:

[x] I followed the contributing guidelines: https://github.com/github/explore/blob/main/CONTRIBUTING.md.
[x] I have no affiliation with the project I am suggesting (as a maintainer, creator, contractor, or employee).

Which change are you proposing?

[ ] Suggesting edits to an existing topic or collection
[x] Curating a new topic or collection
[ ] Something that does not neatly fit into the binary options above

Editing an existing topic or collection
I'm suggesting these edits to an existing topic or collection:

[ ] Image (and my file is *.png, square, dimensions 288x288, size <= 75 kB)
[x] Content (and my changes are in index.md)

Please replace this line with an explanation of why you think these changes should be made.

Curating a new topic or collection

[x] I've formatted my changes as a new folder directory, named for the topic or collection as it appears in the URL on GitHub (e.g. https://github.com/topics/[NAME] or https://github.com/collections/[NAME])
[ ] My folder contains a *.png image (if applicable) and index.md
[x] All required fields in my index.md conform to the Style Guide and API docs: https://github.com/github/explore/tree/main/docs

Testing is an important discipline in DevSecOps. I've curated a collection of open source tools and frameworks that helps testing teams to ship code faster. These are frameworks like Selenium, Appium , Playwright, Cypress etc that are widely used by OSS teams and enterprises alike - as well as tools that help create/write test cases.

Something that does not neatly fit into the binary options above

[ ] My suggested edits are not about an existing topic or collection, or at least not a single one
[x] My suggested edits are not about curating a new topic or collection, or at least not a single one
[ ] My suggested edits conform to the Style Guide and API docs: https://github.com/github/explore/tree/main/docs

Please replace this line with an explanation of your proposed changes.

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

Thank you ! Made the updates !


Characteristic notifications arrive out of order on Android

Expected Behavior
I expect 'onNext' of safeMonitorCharacteristicForDevice for each notification to be called in the same order that the notifications are received.
This would then log (using characteristic.logValue("Notification from", bytes);) the notification bytes in the correct order.
This is the behaviour that is observed in iOS.
Current Behavior
Currently, some notifications arrive out of order for Android only.
Steps to Reproduce
We are using a BLE device that sends notifications very fast (every few milliseconds) in order to transfer large amounts of data when we request it from the device.
Context
Please provide any relevant information about your setup. This is important in case the issue is not reproducible except for under certain conditions. Both JS and platform logs can be enabled via setLogLevel function call.
I was originally thinking that this could be similar to the issue fixed in https://github.com/Polidea/RxAndroidBle/pull/639 but I'm not sure?

Library version: 1.1.1
Platform: Android
Contents of the package.json file:

{
  "name": "...",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "concurrently -r \"tsc -w\" \"REACT_DEBUGGER=\\\"open 'rndebugger://set-debugger-loc?host=localhost&port=8081' --args\\\" react-native start\"",
    "test": "jest",
    "lint": "prettier \"app/**/*.{ts,tsx}\" --write "
  },
  "dependencies": {
    "@react-native-community/async-storage": "^1.5.0",
    "base64-arraybuffer": "^0.2.0",
    "date-fns": "^2.9.0",
    "react": "16.8.6",
    "react-native": "0.60.5",
    "react-native-ble-plx": "1.1.1",
    "react-native-gesture-handler": "^1.5.3",
    "react-native-keep-awake": "^4.0.0",
    "react-native-permissions": "^2.0.2",
    "react-native-reanimated": "^1.7.0",
    "react-native-share": "^2.0.0",
    "react-native-tab-view": "^2.11.0",
    "react-redux": "^6.0.1",
    "redux": "^4.0.1",
    "redux-devtools-extension": "^2.13.5",
    "redux-persist": "^6.0.0",
    "redux-saga": "^1.1.3",
    "reselect": "^4.0.0",
    "rn-fetch-blob": "^0.12.0",
    "styled-components": "^4.4.0",
    "text-encoding": "^0.7.0",
    "ts-enum-util": "^4.0.1",
    "uuid": "^3.3.3"
  },
  "devDependencies": {
    "@babel/core": "^7.8.3",
    "@babel/runtime": "^7.8.3",
    "@react-native-community/eslint-config": "^0.0.6",
    "@types/react": "16.8.6",
    "@types/react-native": "^0.60.11",
    "@types/react-native-keep-awake": "^2.0.2",
    "@types/react-native-share": "^1.1.5",
    "@types/react-redux": "^7.0.5",
    "@types/styled-components": "^4.1.19",
    "@types/text-encoding": "^0.0.35",
    "@types/uuid": "^3.4.6",
    "babel-jest": "^24.9.0",
    "concurrently": "^4.0.1",
    "eslint": "^6.8.0",
    "jest": "^24.9.0",
    "metro-react-native-babel-preset": "^0.56.4",
    "prettier": "^1.19.1",
    "react-test-renderer": "16.8.6",
    "tslint": "^5.11.0",
    "typescript": "^3.7.4"
  },
  "jest": {
    "preset": "react-native"
  }
}

I havent managed to solve this yet, but I have found a very similar issue what was happening in a Flutter BLE library.
The issue is discussed at https://github.com/pauldemarco/flutter_blue/issues/317
And was resolved via these two commits -
https://github.com/pauldemarco/flutter_blue/commit/fad8be1329d86ba4f7152e33899e1f9f7f6eba0f
https://github.com/pauldemarco/flutter_blue/commit/fc6637d11ee448f1b30b52c84787ecd47d1e9603
The BLE device that our app connects too does disconnect itself from our our app, after which we attempt a reconnection and wait for the device to connect again in future. This seems to be a big contributing factor in the linked issue.
@dariuszseweryn I don't know enough about RX to see if the same problem may exist in react-native-ble-plx, so I was hoping you would be able to tell?

The commits do not look like anything that could be potentially related to what you are experiencing AFAIK. BluetoothGatt is disconnected and closed for each connection — it is never reused.
I would need to get a sniffed BLE traffic from an external sniffer and probably HCI logs from the device to tell more what can be happening.

Hi @dariuszseweryn
We are still trying to fully resolve this issue :(
I've received some advice regarding handling fast notifications from Nordic (https://github.com/NordicSemiconductor/Android-nRF-Connect/issues/117#issuecomment-593291007)
Are the libraries that underpin react-native-ble-plx implemented in a way that follows this advice? (1. Values should be read as fast as possible just after receiving. 2. A default Handler (on Android) or DispatchQueue (on iOS) should be used to read those values. Using another, dedicated handler/queue causes additional delay.)?
I'm trying to work out if I would be better off sticking with react-native-ble-plx or trying to move to a different implementation (possibly Android-BLE-Library with a custom React Native wrapper)
Thanks so much for all your help.

@robwalkerco Sorry for such a delay — I was on holiday when you responded and somehow I missed it. This is a known issue and values are read as quickly as possible. There is one more thing that RxAndroidBle (or currently MBA) could do to prevent overwriting value issue when a characteristic may be written and notify at the same time. That would be to use a copy of characteristic object for writing.

Thanks for your reply.
We are currently dealing with this by having the BLE device send characteristics slower. It mostly works but not a great solution.
We are implementing a system where we try to receive notifications fast, then check the data received for issues and fallback to a receive where we request the data is sent slower.
We have found that some phones were receiving the fast data fine, and others really struggled.

When dealing with a lot of notifications it may happen that you will face crashes (MissingBackpressureException) on Android devices when React Native bridge will not cope with the amount of objects to push through. We were thinking about this issue but currently there is no one strategy that would fit all users.
What is the approximate throughput when you start to experience issues? How many notifications per second and how long the notifications?

In an attempt to fix these issues, I'm actually using a fork of the last 1.x.x version, where I batch up characteristic notifications to reduce traffic over the RN bridge. (https://github.com/robwalkerco/react-native-ble-plx/blob/cb12cc3baf8bfda0ac0f7bc5c9e79c9e443ee1bf/android/src/main/java/com/polidea/reactnativeble/BleModule.java#L1897) I do the same on iOS as well.
I'm note sure if that actually makes any difference though!
I'll be updating to 2.0.0 soon, so will replicate by batching approach there I think.
I'll share some example data and the number of notifications with you as soon.

Just wanted to update this issue with our final solution.
We have ended up supporting two data transfer speeds on our BLE device firmware. (normal & slow)
When we fetch a batch of data, we check the integrity of the data to see if there were any transfer issues. If there were issues we refetch in slow mode.
When testing on an iPhone 7 and Samsung S7, we sometimes need to fallback to slow mode, and on a Pixel 3 we always get the data through first time (and super fast!)
We also do the same slow mode fallback if we get a MissingBackpressureException.
We are using version 2.0.0 of react-native-ble-plx now, and have not bothered about batching the notification data on the native side. It does not seem to make any difference (this was originally to rule out issues caused by transfer over the RN bridge).
We are finally happy with this solution, and it seems to make for a fairly reliable data transfer :)
Thanks for your help @dariuszseweryn


Subtyping: Transitivity of opt-to-constituent rule

I started to do some baby steps in formalizing a “mini candid” in Coq, starting with the rules that seem safe.
But adding the “specialize to constituent type” rule is causing problems:
If the rule is
not (null <: t2)     t1 <: t2
--------------------------------
        t1 <: opt t2

as it is now, then this is not transitive. We have int <: opt int (by this rule), opt int <: opt opt int (by the normal rule), but not int <: opt opt int (because of the not (null <: t2) restriction).
This restriction was added in #135, upon my suggestion. Without that restriction, we have the problems described in https://github.com/dfinity/candid/issues/135, i.e. bad interaction with the “catch decoding rule”, and the problem that
    t1 <: t2
------------------
  t1 <: opt t2

doesn't make progress if t2 = opt t2.
Or, to respond to @rossberg says in https://github.com/dfinity/candid/issues/135#issuecomment-728895485

Interesting suggestion. I suppose options of options are not something you would see often in an interface, so limiting their evolution might be okay. How confident can we be that this has no problems?
I wish we had spare cycles to mechanise this, and prevent further holes.

I am no longer confident that this has no problems.
One way to maybe! taper over the problem is to restrict the other rule as well:
not (null <: t2)     t1 <: t2
--------------------------------
     opt  t1 <: opt t2

so that you can’t go from opt int to opt opt int… but that essentially disallows evolution under opt opt and might be better served by disallowing opt opt… probably not nice. Or maybe this rule:
(null <: t1) iff (null <: 2)      t1 <: t2
---------------------------------------
             opt  t1 <: opt t2

which rules out opt int <: opt opt int without ruling out opt nat <: opt int nor opt opt nat <: opt opt int ?

Maybe this is all fine together with the other special behavior for opt (the opportunistic decoding). But that one is dubious for other reasons, see #141. And even if it is fine, I wonder if we get weird transitive behavior.

With the extra (null <: t1) iff (null <: 2) restriction, I can prove transitivity, see https://github.com/dfinity/candid/pull/147. Hmm, not sure I like that.

What if you have (dynamic) maybe and vanilla opt and restrict maybe to be invariant. Just guesssing.

This issue here isn't really about the dynamic aspects of opt, it already arises with the desire to do t <: opt t. A separate type constructor might help if we forbid its immediate nesting (no maybe maybe t).

Closing this; the narrow issue of this issue only applies to a variant of the formalism that we are not using right now, as the Coq profs in #147 shows (i.e. the opportunistic subtyping rule tapers over this problem.)


[BACKPORT 2022] arch/armv7-a: Fix the wrong idle stack setup for SMP case

Summary
Backport #2022
1.Get the stack pointer from sp instead of .Lstkinit's field
2.Make g_idle_topstack point to the end of the idle stack

LGTM

Can someone merge?  The doc failure is unrelated and I suspect due to me opening against the wrong branch originally.

LGTM.

Can someone merge? The doc failure is unrelated and I suspect due to me opening against the wrong branch originally.

I've just merged.


Group module not displaying

Hello,
I'm trying to use group directive but nothing is displayed in waybar and the output doesn't show anything.
My config:
[...]
    "modules-right": [
        "custom/weather",
        "idle_inhibitor",
        "pulseaudio",
        "tray",
        "power-profiles-daemon",
        "keyboard-state",
        "group/hardware",
        "custom/notification",
    ],
    // Modules configuration
    "group/hardware": {
        "orientation": "inherit",
        "drawer": {
            "transition-duration": 500,
            "children-class": "not-power",
            "transition-left-to-right": false,
        },
        "modules": [
            "cpu",
            "memory",
            "temperature",
            "battery",
            "network"
        ]
    },
[...]

And my style:
* {
	border-radius: 20px;
	border: none;
	font-family: Cantarell-VF Bold, Symbols Nerd Font;
	font-size: 13px;
	padding: 0px 0px;
	margin: 0px 1px;
}

@define-color bg #262a32;
@define-color fg #d8dee8;
@define-color gr #545d70;
@define-color red #f7768e;
@define-color green #b9f27c;
@define-color blue #4b4e6f;
@define-color cyan#d3ebf7;

window#waybar {
	background-color: rgba(0, 0, 0, 0);
    color: #ffffff;
    transition-property: background-color;
    transition-duration: 0.5s;
}

#workspaces button {
    padding: 1px 5px;
    background-color: @bg;;
}
#workspaces button:hover {
    box-shadow: inherit;
	  background-color: rgba(0,153,153,1);
}

#workspaces button.focused {
	  background-color: rgba(0,43,51,0.85);
}

#window,
#custom-weather,
#custom-notification,
#pulseaudio,
#clock,
#keyboard-state,
#idle_inhibitor,
#power-profiles-daemon{
	  font-weight: normal;
	  padding: 0 12px;
	  margin: 0 3px;
	  color: @fg;
	  background-color: @bg;
}

#hardware-group{
	  font-weight: normal;
	  padding: 0 12px;
	  margin: 0 3px;
	  color: @fg;
	  background-color: @bg;
}
#tray{
	font-weight: normal;
	padding: 0 12px;
	margin: 0 3px;
	color: @fg;
	background-color: @bg;
}

#custom-menu {
	font-weight: normal;
	background-color: @bg;
	color: @cyan;
	padding: 0px 10px;
	margin: 0px 10px;
}

#window {
	background-color: @bg;
	color: @cyan;
	font-family: Cantarell-VF Bold;
	font-weight: bold;
}

#custom-notification {
    font-family: "NotoSansMono Nerd Font";
}

#battery.charging {
    color: #2dcc36;
}
#battery.warning:not(.charging) {
	  color: #e6e600;
}
#battery.critical:not(.charging) {
    color: #cc3436;
}
#temperature.critical {
    color: #cc3436;
}

Is there any culprit somewhere ?

I've tried your config with GTK_DEBUG=interactive

I think you may want to style #hardware, not #hardware-group. I don't know if the id has changed, though. I'm on commit 64f54e1fcef76729b62fdacfec0b2baea56753c5
N.B. using the same direction as the bar, I personally don't get great results, it does sorta work though.

I made the modification and with #hardware in style.css. Then I recompile waybar with your patch. However, the hardware group is not showing.
From GTK_DEBUG, I can see its there but in gray.

Well, there is an additional GtkEventBox beneath the #hardware Gtkbox, next to the GtkRevealer. That Eventbox contains the CPU module. I don't know why it was made that way, but you should at least see the CPU module, and when you hover over it, it should expand.
I'm using a minimal config, along with your whole css (plus the #hardware change), it displays the CPU module for me as shown below.

What does your waybar look like?

Hey sorry, yes hovering on it works. Thx,


Add jflint

Can we add jflint? It allows for Jenkinsfiles to be linted against a Jenkins instance.

Sure, someone can have a go at that.

Would be great!


"One of your dependencies may have a security vulnerability" email

Hi,
I received an email with this information:

Please advise what I need to do.

Closing because this project is now deprecated.


Is v2 available for Unity ? Trustwallet is not responding after scanning walletconnect qr code

Hi, is v2 protocol update coming for unity as well ? Trustwallet is no longer responding when I can qr code generated by walletconnect. Metamask seems to be working fine.

We'd be happy to look into this for you
kindly file a support ticket below
https://forms.gle/FhSmn4AznQtZcruX8

Doesn't seem to be to much traction on this. I will be looking into it as we need also. Will keep you posted on the progress.

v2 is available now


LAB_02b-Manage_Governance_via_Azure_Policy.md

English:
Role
Current Translation:
Role
Suggested Translation:
角色
Description:
Inconsistent translation. Global check

Hello contributor,
Thank you for your contribution! We are processing your suggestions and we will update you shortly.
Kind regards,
Microsoft Worldwide Learning Team

The issue has been fixed, so I close the PR.


I'm getting this error on MPC

Hello,
I get this error when using NeuralNote with element vst in Mpc software. I'm sure the works I used are mp3.

Hey,
Could you try with the standalone version with the same file and check if the same error occurs?

I tried running it as standalone with VstHost, still the same problem.

I meant using the standalone NeuralNote application (not the VST plugin). You don't need a host to use it. You can choose to install it in the installer if you don't have it already.
Also, is it possible for you to send me the mp3 file? So I can try to reproduce the issue.

I managed to get wav. working. Thank you


Why is the fw folder called fw?

Just wondering, as I have a project using the generator and I don't understand why you would call that folder fw instead of common, or something more readable.

The initial idea is shorthand of "framework". I' d like highlight all the codes that nothing to do with business logic there. Two reasons i remember as below:

Fw is short
Good for mystique(kidding, ^^)
Not every member in the team would touch this folder, so it should be another independent folder than "features", there is a "common" in "features"

If you have any suggestion, let me know


refactor(build): Support electrical revisions explicitly

As the development of the OT-3 goes on, we start having different versions of printed circuit boards. Sometimes, those different versions need to have different code that interacts with them - in fact, frequently they do, since behavioral changes are why you make "new versions" of PCBAs.
This PR lets us easily make a different firmware build and bootloader for each electrical PCBA revision. The output hex files contain the revision in them, making them easier to pack in side by side to deliver to the robot for update purposes, where the robot can always pick the right one based on the response from a given board.
To make this a little easier to deal with, especially to add new revisions, a lot of the stuff that was copy-pasted in individual projects is now defined in a big old macro with a lot of arguments and a lot of documentation. I recommend reading the macro doc at the top of the file for an overview of the options. Most application firmwares don't have to (and don't) touch most of the switches, but the bootloaders need to not build themselves, and the rear-panel needs a different set of bootloader handlers and so on, so the switches tend to be used somewhere.
Finally, in the process of updating CI to deal with all the new files, I realized it was a huge pain, so I used cmake install directives to provide a dist/ directory that's easy for CI to pull stuff out of.
Review Requests
This is kind of a big one. You can go commit-by-commit, and quite honestly skip some once you get the point.
Testing
Upload all the firmwares and flash all the images and make sure it all still talks and blinks and moves.
Closes RET-1317

Codecov Report

Merging #563 (fb1a35c) into main (80e155b) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head fb1a35c differs from pull request most recent head b161841. Consider uploading reports for the commit b161841 to get more accurate results

@@           Coverage Diff           @@
##             main     #563   +/-   ##
=======================================
  Coverage   84.46%   84.46%
=======================================
  Files          89       89
  Lines        2871     2871
=======================================
  Hits         2425     2425
  Misses        446      446


added tests for morsecode : fixed bugs

Morse-code had a few bugs, which are fixed and tested.

I'm waiting for Dan's validation before merging these changes !


Unable to open 'PlantUML Preview': write EPIPE.

this error happends when I try to do 'preview'

did you setup env value?

yes I did, I configured it as User variable and system variable and didnt work. I have
GRAPHVIZ_DOT = C:\TEMP\UML\graphviz-2.38\bin\dot.exe
JAVA_HOME = C:\Program Files\Java\jdk1.8.0_101\bin
PLANTUML_HOME = C:\TEMP\UML\plantuml.jar

NOTE: if I run plantuml.jar outside VSCode (manually) it works fine

OK.
PLANTUML_HOME is directory of plantuml.jar. True value is C:\TEMP\UML.
Please try.

works great :)

You are wellcome.


SIL: Fix subclass scope calculation for constructors [5.0]

Description: There was a regression that could cause linker errors because symbols for non-public constructors were insufficiently visible.

Origination: Regression from some resilience changes in 5.0.

Scope of the issue: Affects anyone subclassing across module boundaries.

Risk: Low.

Bugs: https://bugs.swift.org/browse/SR-9939, rdar://problem/48403349.

Reviewed by: @jckarter

Details:
The logic here was buggy; we would dyn_cast the decl to a FuncDecl and
return early if the cast failed; the ConstructorDecl logic had no
effect at all.
Furthermore, it was wrong, for two reasons:

even non-required designated inits still appear in the vtable
in the resilient case, the constructor needs public linkage unlike
other non-final public methods, since it is referenced directly
by subclasses when they perform a super.init() delegation

@swift-ci Please test


WIP - Add initial flask app

Applicable spec: ISD-116 (internal)
Overview
Add the initial flask application. Only the webhook receiving functionality is included. The webhooks are logged into files in a certain directory, which will then be transmitted automatically to Loki using cos integration.
Follow-up PRs will include:

Webhook validation using secrets
The 12-factor charm
Log file rotation
Log configuration with gunicorn (for app logs, not webhook logs)
Using poetry (requires https://github.com/canonical/operator-workflows/pull/236 to be merged)

Rationale
A webhook router application is required as defined in the specification.
Checklist

[x] The charm style guide was applied
[x] The contributing guide was applied
[x] The changes are compliant with ISD054 - Managing Charm Complexity
[x] The documentation is generated using src-docs
[ ] The documentation for charmhub is updated
[x] The PR is tagged with appropriate label (urgent, trivial, complex)

There is no charm yet, so there are no docs on charmhub.

@weiiwang01 Can you take a look, please? Thanks.

I'll put the note here as well, we were looking into this, and it seems there is the gunicorn way available as well: https://www.google.com/url?q=https://trstringer.com/logging-flask-gunicorn-the-manageable-way/&sa=D&source=docs&ust=1710249238666567&usg=AOvVaw210jtoz0IaFpGgAiZ48V_m

I'll put the note here as well, we were looking into this, and it seems there is the gunicorn way available as well: https://www.google.com/url?q=https://trstringer.com/logging-flask-gunicorn-the-manageable-way/&sa=D&source=docs&ust=1710249238666567&usg=AOvVaw210jtoz0IaFpGgAiZ48V_m

@jdkandersson
Thanks, but regarding the webhook logs, I would like to distinguish between gunicorn/app logs and those to separate them more easily in COS (e.g. to filter just for /var/log/whrouter/*.log filename in Grafana).
Regarding the application logs, this might be the way to go, though I think this should be added once we have the charm code (which is responsible for installing gunicorn and running flask via it).


parseConfigNodeLink support Chinese database name #2231

Codecov Report
Base: 76.57% // Head: 76.49% // Decreases project coverage by -0.07% :warning:

Coverage data is based on head (78f90d2) compared to base (8e0e878).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2238      +/-   ##
==========================================
- Coverage   76.57%   76.49%   -0.08%
==========================================
  Files         580      579       -1
  Lines       48281    48062     -219
==========================================
- Hits        36969    36765     -204
+ Misses       9290     9281       -9
+ Partials     2022     2016       -6

Flag
Coverage Δ

go-1.15-386
76.49% <ø> (?)

go-1.15-amd64
?

go-1.16-386
?

go-1.16-amd64
?

go-1.17-386
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

database/gdb/gdb.go
64.17% <ø> (ø)

os/gcron/gcron_schedule_fix.go
87.50% <0.00%> (-12.50%)
:arrow_down:

os/gspath/gspath_cache.go
84.21% <0.00%> (-10.53%)
:arrow_down:

os/gfsnotify/gfsnotify_watcher_loop.go
75.63% <0.00%> (-7.57%)
:arrow_down:

net/gtcp/gtcp_pool.go
68.18% <0.00%> (-6.82%)
:arrow_down:

os/gfsnotify/gfsnotify_filefunc.go
70.12% <0.00%> (-3.90%)
:arrow_down:

os/glog/glog_logger_rotate.go
61.99% <0.00%> (-1.36%)
:arrow_down:

contrib/drivers/oracle/oracle.go

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


There's no output.

I have a simple fusebox.js file in my project:
const FuseBox = require('fusebox').FuseBox

let fuse = FuseBox.init({
    homDir: './src',
    outDir: './fusebox_test',
    cache: true,
    log: false,
    debug: false,
})

fuse.bundle('> main.ts')

When I run node fusebox.js, nothing happens. There's no outDir created.
What am I missing?

Not sure what made me try outDir. That isn't even.. listed in the docs.

Just for completeness sake: your homeDir is spelled homDir. 😃


Channel Editor?

Do you have any plan for providing the channel editor, such as the channel editor in Open Ephys? For now, I am using the 4-shank Neuropixels, and I found the channel editor in Open Ephys is so simple that it is hard to understand the rule behind the Neuropixels.
For example, only one electrode can be selected as readout channel from all electrodes shared with same channel ID. I cannot easy finding out which channels will be disabled when I enable certain channels. For an another example, according to my experiment, I want to recording multiple brain regions along the probe. However, I cannot assign full density channels around those regions, so I used the half density arrangement by skip some rows. By the channel editor in Open Ephys, I need to click the channels one by one. Although I can write some Python script to do that for me, It is still not convenient. It would be better have a function to automatically pick channels under certain density rule. Especially I also want to plot the probe and channels on the brain slice, either histology image or Atlas mouse reference brain. It would be great that I have a brain reference to know where the channels are when I am picking the channels.

Hi Antonio,
I am not sure to follow you.
The purpose of probeinterface is to read several probe description format and unify then with a simple object model.
I never used the OpenEphys channel editor. So I can't tell anything.
What I guess is that it is a tool to select 384 channel among 1024.
The NP probe have many constrain on how channel can be selected because of adc groups.
Such an editor/selector is really related to the NP probe (so spikeglx or openephys)
Also note that probeinterface do not have ability to write to any format except the internal one (json based).
I would be happy to have more discussion on this if you want.

@AntonioST probeinterface can only load files and it cannot be used to select NP channels. Closing


Revert optional breakage

Revert a change that improved performance of type checking but resulted in a regression in source compatibility.

@DougGregor FYI - backing out the performance improvement for collection type checking due to the source compatibility break. I have some ideas on how to get the performance improvement back which I will take a look at when I get a chance.

@swift-ci Please smoke test


inconsistent fetch of extra data in models.py#TestRun::setattr

I noticed a bunch of extra http GETs in the debug log when I was calling Squad().testruns().
I see in the code we specifically are fetching it during attribute set here:
https://github.com/Linaro/squad-client/blob/131a7650795cf9b98e9eeb7118425433f7bc88d9/squad_client/core/models.py#L339
Why are we fetching the environment data each time we build a TestRun object? That seems to be the only time it's done here and seems inconsistent.
Below is what it looks like after it's been fetched. Note that all the other url-like fields are still urls, but environment is not.
Thanks!
{'url': 'https://qa-reports.linaro.org/api/testruns/2549856/',
 'id': 2549856,
 'metadata_file': 'https://qa-reports.linaro.org/api/testruns/2549856/metadata_file/',
 'log_file': 'https://qa-reports.linaro.org/api/testruns/2549856/log_file/',
 'created_at': '2020-04-08T05:10:17.551320Z',
 'completed': True,
 'datetime': '2020-04-08T05:10:17.551087Z',
 'build_url': None,
 'job_id': 'i386-745',
 'job_status': None,
 'job_url': None,
 'resubmit_url': None,
 'data_processed': True,
 'status_recorded': True,
 'build': 'https://qa-reports.linaro.org/api/builds/34782/',
 'environment': <squad_client.core.models.Environment object at 0x1039a3310>}

Related: https://github.com/Linaro/squad/issues/704

Sorry for delay. The answer is that I made a small workaround when fetching TestRun objects: https://github.com/Linaro/squad-client/blob/master/squad_client/core/models.py#L340
I wanted to make a more generic __setattr__ to fetch nested objects automagically, but was afraid of hitting a recursion condition.


Non UWP build

Any chance there are plans to be able to use this library in a regular .net application?

I'm not sure on the technical details of how to do it. If I could see some examples of how to wrap C++ into a NET application it might be possible. In the next version to come we will be able to generate the C# UWP wrappers but I don't know if we can do the same for .NET.

@Terricide yes; it's now under consideration; I've done some testing and it appears to be doable given the progress to support Win32 to wrap it for .NET too;

That is awesome!!! I've been using https://github.com/radioman/WebRtc.NET but I can't get it to work on Windows 7 and I want to support the Edge browser :)

Hows it going were you ever able to get it to work?

I can report back that others have managed to use the UWP bits via the Desktop Bridge.  We would like to provide a sample/walkthrough of this process.  At the moment a native .NET flavor of WebRTC is not on the roadmap.