[Feature Request] Get affinity with friends

Hello,
First of all, thanks for this interesting project.
I'm wondering if there's (by any chance) a way to get affinity with friends ? If we can use this syntax and get a metric with affinity percentage of each friend that would be great i think. Maybe this issue can be flagged with improvement flag if it's not available right now.
Target code (eg. JikanPy):
# friends info
myfriends = jikan.user(username='Guts__', request='friends')
But anyway great project.

Wouldn't be trivial as Jikan doesn't log you in, its just scraping the public page.
However, since MAL Is just performing Pearson's Correlation Coefficient, you can download both lists and calculate affinity yourself (In case you're curious on how MAL affinity works).
Theres a python package called aniffinity that does this for you.
For some reason it doesn't implement any rate limiting, so working off the load.json endpoint doesn't work for larger lists; I created a fork on my Github that implements rate limiting; so you can install like:
python3 -m pip install git+https://github.com/purplepinapples/aniffinity
Example execution:
>>> from aniffinity import Aniffinity
>>> af = Aniffinity("Guts__", base_service="MyAnimeList")
>>> af.calculate_affinity("Xinil", service="MyAnimeList")
Affinity(value=19.64363617549836, shared=74)

Thank you so much @purplepinapples,
Tbh i've found yesterday a pretty similar python script to yours but sadly didn't work.
I can play a bit with your script and a wrapper to automatically fetch my friends list, get all affinity scores, rank them by desc values and display them as an output. (can be interesting and funny) :)

If you think you can get login working, we and are willing to make a PR for this, we can perhaps add this functionality to the parser.

@sam5558 Because of erkghlerngm44/aniffinity#9 you can now:
python3 -m pip install git+https://github.com/erkghlerngm44/aniffinity
and use the wait_time argument to wait between paginated requests:
>>> from aniffinity import Aniffinity
>>> af = Aniffinity("Guts__", base_service="MyAnimeList", wait_time=2)
>>> af.calculate_affinity("Xinil", service="MyAnimeList", wait_time=2)
Affinity(value=19.64363617549836, shared=74)

It defaults to 2 seconds, I'm just including for clarity.

Thank you for the info. I never got a RateLimitExceededError tbh.
I'm still working on a script to fully automate all usernames, affinities & shared anime.
I've also noticed that the Pearson's correlation coefficient doesn't give the exact percentage (sometimes i get 2 or 3% of difference between what myanimelist states and what the script outputs)

I hope the solutions above worked for you.
Currently there's no plans to add this sort of feature as it's something that could be done on the client-side and Jikan doesn't support POST requests (#219) in order to be able to scrape that sort of information by logging the user in and checking against another.
I will be closing this issue, please feel free to open another one if you've any other queries.


page 1173 "Document Attachment Details" - OnAfterOpenForRecRef(Rec, RecRef) - add var FlowFieldsEditable: Boolean

The page has fields Document Flow Purchase and Document Flow Sales, whose Editable is controlled by an internal FlowFieldsEditable: Boolean. That is set to true in OnInitPage() and then overridden to false for various standard related table types in OpenForRecRef(). We should be able to set it to false in the OnAfterOpenForRecRef() subscriber, when adding attachments to record types for which the Flow Purchase/Sales controls are irrelevant - without having to instead make an extension and do it that way.
Therefore, please update the event publisher to
    [IntegrationEvent(false, false)]
    local procedure OnAfterOpenForRecRef(var DocumentAttachment: Record "Document Attachment"; var RecRef: RecordRef; var FlowFieldsEditable: Boolean)
    begin
    end;

and call as
        OnAfterOpenForRecRef(Rec, RecRef, FlowFieldsEditable);

without having to instead make an extension and do it that way

In fact, this won't work without copying-and-pasting standard code (bad! yuk!) as far as I can tell, since we only want to change Editable for Attachments to the custom record types we care about, but leave it either true or false for others - but in a pageextension we must set Editable to some fixed value, so we can't say 'if it is not a Custom Record then leave it at what the base page specifies'.

Hmm, but the fields are only shown at all if SalesDocumentFlow or PurchaseDocumentFlow are true, which they won't be for our custom records. Rather than asking for those to be added to the event too, which I don't know we need right now, I think we can do what we need already, so never mind.


Support more graphics APIs for emojis

Is your feature request related to a problem? Please describe.
Not every terminal uses the Kitty Graphics Protocol. iTerm has its own graphics protocol, and SIXEL is a much more universal solution.
Describe the solution you'd like
Consider supporting the iTerm2 Graphics protocol and SIXEL to improve compatibility of the emoji feature with more terminal emulators.

Thank you for the issue!
This was in the back of my mind for a while, and I feared the implementation process. It was only a matter of time until it was requested. Hopefully it's not too bad, I'll start looking into the different protocols soonish.

@Nogesma since you implemented the emote system, what are your thoughts for doing this in SIXEL? I'd like to take a shot if we need to do a rewrite of the graphics protocol, since SIXEL looks to be the most promising (and universal, already supporting iTerm2).

I had a quick look and it seems like sixel lacks a lot of features compared to the kitty graphics protocol, that we are currently with twt.
It does not support using Unicode placeholders to display images, which means we would have to go back to tracking the images placement manually, and update them on each refresh.
Additionally, we would also need to render a new image for every emote/overlay pair, as it doesn't seem like sixel supports Z axis placement, nor relative placements.
I also didn't find anything about animated images in the protocol.
It would honestly add a lot of complexity, because we would need to reimplement some of the features of the kitty graphics protocol on our side.
If this is a popular request, there's always a possibility to add basic support for it, with no overlays or animated images, but it would probably not be easy, and I remember my last implementation that manually moved images was still a bit buggy.
I haven't really looked at iTerm2, and I do not have a computer that runs macOS, so I can't really help on that side.

In that case, I agree in waiting to see if this is a popular enough request to spend time implementing it.

I'll close this as not planned for now.


[Feature Request] Add a randomization feature to the Contributor Page

Description
Description: When viewing the Contributor page that utilizes the Contributors Grid component, the contributors' cards should be displayed in a random order every time the page is visited or refreshed. This feature should be similar to the implementation in the MasonryLayout.jsx file on line 23, where the user array is shuffled using the following code snippet:
const shuffledUsers = users.sort(() => Math.random() - 0.5);

The goal is to apply a similar approach to randomize the order of the contributors' cards on the Contributor page.
Screenshots

Checklist

[X] I have checked for duplicate issues
[X] I have read the Contribution Guidelines
[ ] I am willing to work on this issue (optional)

Hey, can you please assign this to me. It's already completed and I can create a pull request shortly.


DO NOT MERGE: 0.6 rc2

Close #134
Close #132
Some function restructuring motivated by #129

Update requirements.
Separate some logical concerns within Project constructor and Sample subclass seeking.
Clean up messaging about sample run skip reasons.
Remove outdated example files.
Require setuptools that's now generally assumed for install
Faster and more informative failure for nonexistent pipelines_dir interface file

I confirm that this solves the missing interface problem in my test.

But this did not force a new reliance on pandas 0.20 when I had pandas 0.19 installed, so the requirement thing is not working yet.

My commits fix #134 for me. Previously, an old version of pandas was satisfying it because the version number was getting stripped off when we read in the requirements file. @vreuter please double-check  	f58fc74

Addresses #133

When you get the chance @afrendeiro can you rerun the case that caused #129 with looper --dbg ... and see what the debugging output indicates regarding what's happening as the Project searches for the Sample subclasses?

Okay, I've pulled the latest 0.6-rc2 and ran looper with --dbg.
A few issues with this:

for a successful install setup.py needs to stop looking for the script files that were removed;
why argparse.SUPPRESS on the log options? Good for simplicity but prevents non-devs from seeing the logs...

Here's a sample from a looper --dbg check (highlighted important bits):
looper:787 [INFO] > Command: check (Looper version: 0.6.0-rc2)
...
models:632 [WARNING] > Looper v0.6 suggests switching from pipelines_dir to  pipeline_interfaces. See docs for details.
...
models:905 [DEBUG] > Adding sample sheet
models:915 [DEBUG] > Creating samples from annotation sheet
models:1162 [DEBUG] > **Successfully imported pipelines **
models:999 [DEBUG] > merge: **sample** 'ATAC-seq_HAP1_ACTB_r1_2471_10'; lane=3
models:999 [DEBUG] > merge: sample 'ATAC-seq_HAP1_ACTB_r1_2471_10'; data_source=/scratch/lab_bsf/samples/BSF_0279_HG7MMBBXX/BSF_0279_HG7MMBBXX_3_sample
...

So looper is still finding my pipeline_dirs but making generic Sample objects. I don't understand.
Do you guys have any pipeline with __library__ to test this?
One more issue with this update: instantiating a Project no longer calls add_sample_sheet internally.
Wasn't the consensus on this that they would be tied? For looper CLI usage there's no difference since looper will call that but for interactive use this again implies a change...

do you have a module called 'pipelines' installed, and does this module have a matching sample subclass? This is where it will be looking (not in the pipeline itself), by my reading...

yeah, the current logic is not the way I thought it worked. this is going to take some reworking I think. It's not doing what it used to somehow...
@afrendeiro: do you want it to be pulling the child class from a global 'pipelines' install (bad way imo because it relies on the magic name 'pipelines'), or do you want it to pull child class from the python file that defines the pipeline (preferable in my opinion).
Right now it's doing the former and not the latter as far as I can tell; I think we should switch to the latter and exclude the former.

I deliberately pulled two functions from the tail of the Project constructor with https://github.com/epigen/looper/commit/49f1e5f138f3a67d7f528025d6b276b5746b5f45, because I was unaware of previous discussion about this. In general, I much prefer to separate things, but if there's consensus / I'm outvoted to include the calls at the end of the constructor logic, that's OK.
I see two main disadvantages--only one of which has unknown/potentially significant extent, the other is known and bounded--and one advantage, of inclusion in the constructor. The significant disadvantage is that this complicates inheriting Project. If a potential client developer wanted to derive from Project but have additional constructor logic before those calls at the end, he or she would need to modify the constructor itself rather than just overriding the functions that would be called at its end / post-construction. While probably not a frequent use case, this feels like a more substantial issue. The minor one is that this complicates testability, either requiring mocking or eroding test logic independence. The advantage is as mentioned, that it reduces needed function calls when using a Project in isolation, outside of the CLI.

Regarding the Sample subclasses, the logic could also get messed up if the import search finds a valid pipelines before a globally installed package. This sometimes happens when within the directory from which the import is attempted there's a module (or another package) with the same name as the targeted, globally-installed package.

Changed tilte since this isn't yet stable

@nsheff do you have some other cases you normally put through dry run to check how things are looking? microtest is well-behaved on the newest commit and is picking up ATAC-specific sample with a slightly tweaked pipeline interface file, but it'd be good to have some additional checks.

Also, what about the SUPPRESS on the log options @nsheff ? I don't have a strong preference either way. @afrendeiro do you think it's better to display them? I think they were included at one point and were later suppressed.

personally I would say don't clutter the CLI with the log options, but let's add them to the readthedocs in an advanced section.

got this error:
looper run -d examples/test_project/test_config.yaml
Command: run (Looper version: 0.6.0-rc2)
Loading PEPENV: /home/nsheff/.local/lib/python2.7/site-packages/looper/submit_templates/default_compute_settings.yaml
Using default PEPENV. You may set environment variable PEPENV to configure environment settings.
Looper v0.6 suggests switching from pipelines_dir to pipeline_interfaces. See docs for details: http://looper.readthedocs.io/en/latest/
Traceback (most recent call last):
  File "/home/nsheff/.local/bin/looper", line 11, in <module>
    load_entry_point('looper==0.6.0rc2', 'console_scripts', 'looper')()
  File "/home/nsheff/.local/lib/python2.7/site-packages/looper/looper.py", line 819, in main
    compute_env_file=getattr(args, 'env', None))
  File "/home/nsheff/.local/lib/python2.7/site-packages/looper/loodels.py", line 29, in __init__
    no_compute_exception=RuntimeError, **kwargs)
  File "/home/nsheff/.local/lib/python2.7/site-packages/looper/models.py", line 630, in __init__
    else self._make_basic_samples()
  File "/home/nsheff/.local/lib/python2.7/site-packages/looper/models.py", line 1009, in _make_basic_samples
    if _os.path.isfile(self.metadata.merge_table):
  File "/usr/lib/python2.7/genericpath.py", line 37, in isfile
    st = os.stat(path)
TypeError: coercing to Unicode: need string or buffer, NoneType found

random suggestion:

20 of 20 sample(s) generated job template(s); 17 of 23 job template(s) were considered for submission, and 17 of those were actually submitted.

Let's get rid of the repeated "(s)" and either make the computer infer (it knows the #) or just use s always. it looks a bit ridiculous like that :)
actually let's go a bit further and just make this a list instead of a sentence, So it says:
Samples generating jobs: 20/20
Jobs considered for submissIon: 17/23
Jobs submitted: 17/17

also for me on microtest sample-yaml is not getting passed:
/home/nsheff/code//pipelines/pipelines/atacseq.py --sample-yaml None -G hg19 -I ATAC-seq_human_PE  -O /home/nsheff/microtest/results_pipeline -P 4 -M 16000  | tee /home/nsheff/microtest/submission/ATAC-seq_human_PE_atacseq.log

Can you give this another run whenever you have the chance @nsheff ? microtest seems to be giving me the expected behavior now, both in the case of when pipelines doesn't supply a specific subtype and when it does. With regard to the YAML file for the submission script, that is.

oops, the examples folder got removed somehow; these are used in the docs
source/sample-annotation-sheet.rst:27: SEVERE: Problems with "csv-table" directive path:
[Errno 2] No such file or directory: '../examples/microtest_sample_annotation.csv'.

That removal was intended because the examples are non-functional. I think that we should either include them but have them be functional, or exclude them and change the docs.

yeah. I think they should be included because it makes maintaining examples in the docs easier. So, we need to make them functional. actually this is a perfect example -- we must keep them functional otherwise they shouldn't be included in the docs. they should probably also be incorporated into our tests -- tested docs! nice! how's that for keeping docs up-to-date...

actually now after thinking for a few minutes my excitement has faded a little... they don't need to be really functional, just potentially functional, to be a useful example. And, I think, they are...

OK, agreed. Question, though--will the docs break if it's made more apparent in the examples that they aren't intended to be functional (i.e., by making the paths & such things like /path/to/output_dir)? I ask because recently when I tried to run one of these rather than the real microtest I had to pause and look at the actual config file to see that it was an issue with path existence rather than something internal to looper. I can imagine something similar happening for an external user. He or she may not initially look at the config file's content, or think that looper intends to pick up the CeMM-specific paths.

Nope. for the docs they just need to exist. the docs are easy to please. so yes, they can become obviously non-functional examples...

@vreuter How close are we to merging this?

I'm set with it now. Did you have other cases you wanted to run?

I'll give it a try with some of the ones I'm working on now. I'm mostly just itching to move on

Are you making more changes?

One note on the Sample subclasses that I noticed during this round of changes...it seems like some of the Sample subclass constructors assume that the input data is a Series. This became apparent when I'd represented a generic Sample as an ordinary dict and then passed that data through to the subtype constructor(s) within looper.run. This works fine, having Series be the base type that's passed, but in general I think it may make more sense to have the Samplesubclass constructors also operate on a normal dictionary and/or an Iterable of two-tuples since they're more basic/builtin types. This could lower the barrier to someone using a Sample, eliminating a need for familiarity with pandas.


Merging install and remove merx into builder

Overwrite install.build with install.merx and remove.merx as the function and rollback methods respectively

Thanks!


Add Month ## to ZIP filename

Modified the output zip file name to include the MONTH of the statement in the filename as a two digit number. Without this change, the zip filename only has the year in it. See around line 4001.

I also updated it so that the format is name-YYYY-MM.zip to provide a better sort order.  I also tested this change, so its ready to be pulled.

I also updated it so that the format is name-YYYY-MM.zip to provide a better sort order.  I also tested this change, so its ready to be pulled.

Nice work! Clever use of .slice(-2) to avoid testing that we need a leading-zero, and I agree with keeping the year in front of the month for easier sorting in the file-system. Happy to merge, and will rebuild the dist/ folder afterwards.

Nice work! Clever use of .slice(-2) to avoid testing that we need a leading-zero, and I agree with keeping the year in front of the month for easier sorting in the file-system. Happy to merge, and will rebuild the dist/ folder afterwards.


Consider composer validate and composer check-platform-reqs

Feature Request

Q
A

New Feature
yes

RFC
yes

BC Break
yes/no maybe?

Summary

Prior to running composer install, run composer validate to confirm that there are no issues with the composer.json file.
Prior to, or after running composer install, run composer check-platform-reqs, at least where --ignore-platform-reqs is not used in order to confirm that the installed packages should function correctly.

Good idea, I should probably transfer this to the matrix action repository.


Remove year from tract tooltips

@sleitner

Abort. I'm going to try a different approach.

Just kidding, I read the product owner's email wrong. This'll work fine.

:+1:


I find it weird that the generated tasks.json has errors

#3159

Have a workspace with no tasks.json and trigger the command Configure tasks runner
A tasks.json gets generated with a ts content so we could get the correct snippets in the intelli-sense
I find it weird that we generate an erroneous tasks.json just so we could filter on the right snippets. Couldn't we generate an empty tasks.json and still reveal the snippets in some smart way

Yes, this is ugly.
Not only that but the filterText property is heavily used here and shows the problem with it. The highlighting is all wrong.

The intent of this interaction is that the user selects a snippet forcing an Intellisense pop-up for this interaction has the issues described above.
My suggestion is to make the snippet selection more explicit, e.g., the user picks a snippet from a quick box and then Code inserts the snippet. This is similar to picking an initial snippet for a launch configuration in the debugger. Using Intellisense to insert additional snippets makes good sense to me.
A nit, since we use a snippet we should leverage the snippet functionality and use snippet variables in the snippets, this makes it obvious what the user should modify. For example, the tsc snippet should make the filename argument a snippet variable.

Addressed on latest. When you create a new tasks.json file you now only have the snippets in and no ts prefix.

@isidorn please close as verified. The new story doesn't have snippets anymore.


Remove aux files from trace logging

Proposed changes
This change logs a modified nginxConfig object when the agent runs in trace mode. This modified object does not contain the aux zipped files that are part of the sent configuration.
Checklist

[x] I have read the CONTRIBUTING document
[ ] If applicable, I have added tests that prove my fix is effective or that my feature works
[ ] If applicable, I have checked that any relevant tests pass after adding my changes
[ ] I have updated any relevant documentation (README.md)

Change was merged via https://github.com/nginx/agent/pull/251.


glutamate catabolic process

I could use either of these terms, do we need both?
GO:0006539     glutamate catabolic process via 2-oxoglutarate
Definition
The chemical reactions and pathways resulting in the breakdown of glutamate, via the intermediate 2-oxoglutarate
this one sounds a little vague?
GO:0019551    glutamate catabolic process to 2-oxoglutarate
Definition (GO:0019551 GONUTS page)
The chemical reactions and pathways resulting in the breakdown of glutamate into other compounds, including 2-oxoglutarate.

In the first term, the entire pathway would describe an end point that is after the formation of 2-oxoglutarate in the pathway. In the second term, the 2-oxoglutarate would be the endpoint of the pathway. The catabolism needs to be looked at carefully to investigate how the pathway through the 2-oxoglutarate can branch, but on the surface, it looks like GO:0006539 should have has_part GO:0019551 and GO:0019551 should be part_of GO:0006539. The definition of GO:0019551 also looks like it needs to be refined. With this structure, GO:0019551 can be used as a module for the upstream process that is the beginning f downstream processes that branch off of it.

Looking at this closer, the synonyms of GO:0019551 seem a bit odd, but the logical definition seems ok. We also need to investigate how alpha-ketoglutarate etc relate to 2-oxoglutarate metabolically.

The logical definitions of both terms look fine as I described them above. In GO:0019551, 2-oxoglutarate is the output and in GO:0006539, 2-oxoglutarate is an intermediate.

2-oxoglutarate (aka alpha-ketoglutarate) is a TCA cycle intermediate, so it makes sense to make it an endpoint for a glutamate-specific pathway in the same way that glycolysis ends at pyruvate, not because that's a physiological endpoint but because it's a junction where metabolism unique to glucose feeds into multiple other pathways.
If this reasoning makes sense, then GO:0019551 looks good as-is and GO:0006539 looks over-broad. However, the only textbook path from glutamate to 2-oxoglutarate requires only a single transamination reaction, so GO:0019551 doesn't meet the suggestion (requirement?) that processes involve more than one reaction / molecular function.

@deustp01 @ukemi
Is there an action here, or are those terms correct ? Looking at genes annotated to this term, most are 'glutamic-oxaloacetic transaminase', which according to Uniprot catalyze 2-oxoglutarate + L-aspartate = L-glutamate + oxaloacetate - so this annotation would be wrong anyway ?
Thanks, Pascale

2-oxoglutarate (aka alpha-ketoglutarate) is a TCA cycle intermediate, so it makes sense to make it an endpoint for a glutamate-specific pathway in the same way that glycolysis ends at pyruvate, not because that's a physiological endpoint but because it's a junction where metabolism unique to glucose feeds into multiple other pathways.

I've changed my mind on this (apologies for the youthful folly). Reactions that inter-convert glutamate and 2-oxo-glutarate are not necessarily part of glutamate catabolism just as reactions that convert ATP to ADP are not necessarily part of ATP catabolism. For both ADP and 2-oxo-glutarate, one possible fate is entry into a process that leads to complete catabolism so GO:0006539 glutamate catabolic process via 2-oxoglutarate now seems exactly right for such a fate, but other important processes can regenerate ATP and glutamate, so GO:0019551 glutamate catabolic process to 2-oxoglutarate seems risky. The only way I know to get from glutamate to 2-oxoglutarate involves a single reaction so a process term may not be possible. If one is wanted for the glutamate recycling (of which this reaction is one part), that could work.

OK, if I understand - the conclusion is to propose to obsolete 'GO:0019551 glutamate catabolic process to 2-oxoglutarate'

the conclusion is to propose to obsolete 'GO:0019551 glutamate catabolic process to 2-oxoglutarate'

That is my latest conclusion, yes. But let's wait for agreement (or not) from @ukemi and @hdrabkin

@ukemi and @hdrabkin Thoughts ?

I'm really having a hard time following these arguments.  however, if this
'GO:0019551 glutamate catabolic process to 2-oxoglutarate
is a single step, then maybe @ukemi is correct

As far as I can see glatamate degradation is catalyzed by glutamate dehydrogenase in a single step

Are there other possible pathways ? @amorgat  ???

This looks like an interconversion, not a catabolic process.

Now (as also 2 weeks ago but not last year), yes, this looks like an interconversion. If we pretend that reactions have purposes, it's hard to see how the "purpose" here is clearly catabolism, i.e., breakdown to waste products and energy - that's one possible fate of the reaction products but interconversion is another, at least in mammals. Prototrophic unicellular organisms may be different - the molecule may be committed to an irreversible catabolic fate earlier in the process, I don't know.

Any action? close?

propose to obsolete 'GO:0019551 glutamate catabolic process to 2-oxoglutarate'; 75 experimental annotations. Give notice
Obsoletion reason: suggests a single step.

Where do you see 75 EXP ? I only see 6

I saw six first myself, but then
http://amigo.geneontology.org/amigo/search/annotation?q=GO:0019551
and filter on experimental.

But this includes ALL annotations to any gene product ALSO annotated to the term you looked for. See GO terms, you have annotations to
| eag | ether a go-go |   | voltage-gated potassium channel activity |   | FlyBase | PMID:9497369

We should use 'consider' GO:0004069 L-aspartate:2-oxoglutarate aminotransferase activity
Annotations should be easy to fix.

It seems this one is ready to implement
obsolete 'GO:0019551 glutamate catabolic process to 2-oxoglutarate';
6 EXP
reason  single step
'consider' GO:0004069 L-aspartate:2-oxoglutarate

I'll take this....

tagging @rozaru


Have a default state for mLastNotDraggingSlideState

This variable is used to store the saved instance state for the activity, therefore if null will cause  he parcel serialization to fail with a NPE. It's not entirely clear to me in what circumstances this can actually happen and I can't reproduce it (even though we see crashes in our crashlytics reports), but there's definitely a code path that leads to the NPE (ss.mSlideState = mLastNotDraggingSlideState at line 1360 in SlidingUpPanelLayout.java).
We've been running this patch internally for a while and we haven't seen any more crashes.
Fixes #536.

Thx!


Fix CI build downloads and related docs

I expected to follow the docs to get to an unreleased build with the fix I wanted. However, I ran into a few issues:

Confusing docs. The docs say:
You can download binary artifacts of the latest commit from GitHub by navigating to
the "Summary" page of the Build/Release Corso CI job that was run for that commit.
You will find the artifacts at the bottom of the page.

However, this leads folks in the wrong direction but the CI job summary page for the actual PR only has website binaries. See this as an example for PR #2275. The only place I could find the binaries were in the build on main here. We should either clean up the docs or make sure the binaries are available from the PR CI summary.

Suboptimal binary packaging: We shouldn't compress Linux and macOS artifacts using zip but instead use tar.gz.

https://github.com/alcionai/corso/pull/2275. The only place I could find the binaries were in the build on main here.

The artifacts are only available for commits on main as we don't do all the builds for PRs, let me think of a better way to convey this in the docs.

We shouldn't compress Linux and macOS artifacts using zip but instead use tar.gz

This is not something we can handle, it is GitHub compressing it on the fly when the user downloads. In fact we are upload the entire  file without compression. Even if we were to upload a compressed file, GitHub wraps it in a zip file when the user tries to download.

Fair enough. Let's just tweak the docs and close this out.


over elaborate init files are a performance hinderance

I have a small gripe with compas_fab over elaborate __init__.py files.
A specific example is compas_fab/backends/__init__.py
All of the backends are loaded, where you're most likely using a single one at the time.
Now, ROS, the analytic solver and pybullet are loaded even while its unlikely to use more one solver at the time.
( FWIW, I'm working on the tesseract backend )
Loading pybullet will take seconds to load... and in the case of macOs pop-up a UI...
So a huge amount of unnecessary code is loaded...
Finally, the __init__ arguable could be just be an empty file, rather then the 166 lines it is now.
The "hardcoded" ( dare I say Javaesque 👺 ) style of the current init files are also stylistically a little substandard of the usual finesse and elegance of the compas_fab codebase.
( And then the irony of providing a LazyLoader in compas_fab.utils.lazy_loader 🧐 😉 )

You are so very right. The lazy loader should actually avoid pybullet from loading, it seems it's not working correctly :/
I've considered multiple times whether it would be a better idea to split off all backends, and have compas_fab_ros, compas_fab_pybullet, etc. They could still live together in this repo for the time being, but it would create a better separation of concerns for sure, and would potentially open up the option of completely moving each backend to a new project/repo in the future without breaking changes in the namespacing.
@jf--- what do you think?


Update README.md

Adding glowing-animated-button component in Buttons directory.
What is the change?
Adding glowing-animated-button component in Buttons directory.
Related issue?
closes: #46
How was it tested?
N/A
Checklist:
Before you create this PR, confirm all the requirements listed below by checking the checkboxes [x]:

[x] Have you followed the Contribution Guidelineswhile contributing.
[x] Have you checked there aren't other open Pull Requests for the same update/change?
[x] Have you made corresponding changes to the documentation?
[x] Have you tested the code before submission?
[x] Have you formatted your code ? (You can use any html,css beautifier)
[x] My changes generates no new warnings.
[x] I'm Hacktoberfest'21 contributor.
[x] I have commented my code, particularly in hard-to-understand areas.

GIF/video of the working of component you created:
Already given in another pull request.

Make only one pr per issue


CASMTRIAGE-6810: Make explicit which version of CSM docs should be used during different points of the upgrade

A PR to clarify that when preparing for a CSM upgrade, you should still be using the docs version for the current CSM release, but then during the upgrade, you should be using the docs for the target release of CSM.
Backports forthcoming.

/backport release/1.6 release/1.4


Fix: replacing deferredLogin by the loginCallback function

Fix of #45 and calling the default callback method

thanks)

The one line code fix works for me, thank you!

Fixed in PR #65


PHP-css-fixer some arguments looks obsolete

Hello
Beautifier with php-cs-fixer enable try to executre  command with --allow-risky but this option does not exist on actual php-cs-fixer.
Should be great to remove this option on configuration and call script.
thanks

To complete
-using-cache is no more valid

Was my bad :/ was used an obsolete version (conflict during upgrade)


Graph Edit - mouse wheel should zoom by default and not scroll

Godot version:
3.2.2 and 4.0
OS/device including version:
Any
Issue description:
I think the graph edit should zoom by default rather than scroll up and down, like Blenders compositing view. It feels a lot more natural imo. Also current there is no mouse wheel shortcut to zoom... which feels really bad. I usually like navigating in node-based workflows (like UE4 bluprints) by zooming in and out. Only having the on-screen buttons to do this feels clunky.
The code is there to do this... I have no idea why it was commented out. Enabling it makes it work perfectly fine. This comment was made by reduz in 34c022a0 over 4 and a half years ago. I think it works fine, however it could feel better once combined with adjustments made possible by PR #38261.
https://github.com/godotengine/godot/blob/a609b30ddb77bcc1c64008a7848da07b5448a10d/scene/gui/graph_edit.cpp#L1010-L1018

Also I have tested it using set_zoom_custom(<zoom>, b->get_position()) so it zooms to your mouse position, and it feels really good.

The original reason was that antialiasing is off makes scaling 2d look bad, but antialiasing is off in master.

Duplicate of https://github.com/godotengine/godot/issues/5214, however since it targets only Visual Shader I will close the old one

Closing in favor of https://github.com/godotengine/godot-proposals/issues/2352, as feature proposals are now tracked on the Godot proposals repository.


Remove windows-api pin and update Gemfile.lock

Signed-off-by: Jaymala Sinha<EMAIL_ADDRESS>Description
Remove windows-api pin which conflicts with win32-api dependencies
Issues Resolved
Resolve double gem dependency issue like:
In Gemfile:
    berkshelf was resolved to 7.0.8, which depends on
      chef (>= 13.6.52) was resolved to 14.11.21, which depends on
        win32-api (~> 1.5.3) x64-mingw32

    berkshelf was resolved to 7.0.8, which depends on
      chef (>= 13.6.52) was resolved to 14.11.21, which depends on
windows-api (~> 0.4.4) x64-mingw32 was resolved to 0.4.4, which depends
on
          win32-api (>= 1.4.5)

Check List

[ ] New functionality includes tests
[ ] All tests pass
[ ] RELEASE_NOTES.md has been updated if required (not required for bugfixes, required for API changes)
[x] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco

@jaymalasinha This doesn't seem like a double dependency. With this removed windows-api is no longer included in our bundle, which seems like it will break a lot of things.

After looking into this a bit more with @jaymalasinha it looks like we depended on windows-api, but never actually required it in chef. This was a dead dep and we should remove it.


Alpha is abnormal.

Describe the bug
This is my test using openglfx on jmonkeyengine.
The alpha looks incorrect and the font is a little blurry in the rendering.
I don't know what caused it.
this is init jemrender to fx
canvas =new GLCanvas(LWJGL2Executor.LWJGL2_MODULE, GLProfile.Compatibility,false,samples,false);
To Reproduce
Screenshots

Environment:

OS: [win10 22H2  19045.3570]
openglfx version: [4.0.5]

Describe the bug This is my test using openglfx on jmonkeyengine. The alpha looks incorrect and the font is a little blurry in the rendering. I don't know what caused it.
this is init jemrender to fx  canvas =new GLCanvas(LWJGL2Executor.LWJGL2_MODULE, GLProfile.Compatibility,false,samples,false);
To Reproduce
Screenshots
Environment:

OS: [win10 22H2  19045.3570]
openglfx version: [4.0.5]

Using the openglfx-lwjgl2:4.0.5

The blurry text looks as if the entire image is rendered 1-5 pixels smaller than needed, and then stretched to the window size.
I can’t say anything about incorrect alpha blending. openglfx does not directly interact with it, but only takes the pixels of the final image. There may be an incorrect pixel format - RGBA/RGBA_PRE.
Look this way.

Is this the problem with the way I use it or the library itself.
I'm not sure if it's my problem.

This doesn't look like a library problem. Check what I wrote above


bs-css-fela now working @rescript/react

Can not use bs-css-fela in a project that uses @rescript/react.
  It's possible that your build is stale.
  Try to clean the artifacts and build again?

  Here's the original error message
  The files src/util/utils.cmi
  and /aaa/bbb/ccc/node_modules/bs-css-fela/lib/ocaml/cssReact.cmi
  make inconsistent assumptions over interface React

https://github.com/reasonml-labs/bs-css/pull/239

Fixed in master


Add sepByByteBounded for bytestring conduits

/cc @nhibberd

This is basically to implement linesBounded on bytestring is it?

:+1:

This is basically to implement linesBounded on bytestring is it?

Yep, intend to use it for warden, and @nhibberd mentioned he had a use for it as well.

Are there any multibyte unicode points that contain newline chars? or is there something in the unicode spec that forbids new unicode points from containing newline chars?

@domdere

Are there any multibyte unicode points that contain newline chars? or is there something in the unicode spec that forbids new unicode points from containing newline chars?

The wonders of utf8, for ascii sub-set you are always know you are looking at a byte that is a valid char, not some subsequence of a larger multi-byte char, as the leading bits tell you where you are in the sequence.
Char sequences ---

  7	U+0000           U+007F	        1	0xxxxxxx
11	U+0080           U+07FF	        2	110xxxxx	10xxxxxx
16	U+0800           U+FFFF	        3	1110xxxx	10xxxxxx	10xxxxxx
21	U+10000          U+1FFFFF       4	11110xxx	10xxxxxx	10xxxxxx	10xxxxxx
26	U+200000         U+3FFFFFF      5	111110xx	10xxxxxx	10xxxxxx	10xxxxxx	10xxxxxx
31	U+4000000        U+7FFFFFFF     6	1111110x	10xxxxxx	10xxxxxx	10xxxxxx	10xxxxxx	10xxxxxx

Whoa cool that's pretty awesome, is that a guarantee we can make for all
the common encodings?

@domdere works for \n in latin-1 at least, not sure about the others.

works for \n in latin-1 at least, not sure about the others

:+1:


[patch] Refactor RegexLexerMeta for extensibility

(Original issue 477 created by None on 2010-02-26T18:50:58+00:00)
I'm working on a project where I sadly can't use Pygments directly, but I am nonetheless trying to take advantage of its lexers, at least the ones that are purely regex-based (without overriding get_tokens_unprocessed). To do this, I refactored RegexLexerMeta so that there are separate methods to translate each component of a token tuple. My code then overrides those methods to, for instance, keep the regular expressions as strings instead of compiling them into matcher functions.
I think that the refactoring is generally useful and a good idea in its own right. Would you consider accepting it as a patch?
Reported by ArthurDenture

(Original issue was assigned to gbrandl)
(Original issue 477 last updated on 2011-01-03T15:02:53.507981+00:00)
(Issue automaticaly closed due to status in Bitbucket: resolved)

(Original comment by gbrandl on 2010-03-08T00:13:39+00:00)
First, I'm sorry I hadn't more than glanced at the patch before making false claims :)
I think that increase in startup overhead is acceptable, since the lexer token defs aren't processed until the lexer is actually used.  Therefore, taking a little bit longer there shouldn't be noticeable if one doesn't instantiate all lexers at once.
I'll revisit this before the next release.

(Original comment by None on 2010-03-08T00:03:30+00:00)
Yikes, I thought I was on the CC list, but I didn't get an email when you followed up. Sorry for the delay.
This patch does not affect the RegexLexer loop; it affects RegexLexerMeta. Any overhead will be on instantiation, not during the actual highlighting.
Anyhow, I measured that overhead with timeit using the following:

timeit.Timer(stmt='PythonLexer(); del PythonLexer._tokens', setup='from pygments.lexers.agile import PythonLexer').repeat(5, 10000)

The fastest run on stock pygments was 2.80 seconds, and the fastest run in my patched  version was 3.21 seconds, meaning that this patch adds about 15% overhead. That's a significant percentage, but keep in mind that in absolute time, 3.21 seconds * 1000 (ms/s) / 10000 runs is 32 ms instead of 28 ms to instantiate a single lexer. Is this increase in startup overhead acceptable?

(Original comment by gbrandl on 2010-02-28T08:41:45+00:00)
The reason the RegexLexer loop is in one block is one of performance.
E.g. for the matching in the loop, I suspect that an additional method call for every regex that is tried will cause a noticeable drop.  It would be good if you could measure that.

(Original comment by birkenfeld on 2011-01-03T15:02:53.500557+00:00)
Tim added this in <> and it's now merged.


Chapter 8 - wrong reference to file and background sync not working

Under "Add notifications to background sync", it says to replace the code in app/src/sw.js, which I think it meant app/sw.js.
Also, the sync doesn't work, thus no notification.  I even tried force sync using the Chrome's DevTools (Chrome DevTools > Application > Service Workers), nothing happens.  Please advise.

it worked for me

Thanks for reporting this issue and sorry for not seeing this earlier. I've corrected the pathing typo.
As far as background sync, I'm not sure what might be causing your issue. I haven't used the API in a while, and I don't have much experience with it myself. But I do remember development feeling a bit flaky in the early days (from caching issues, network issues, etc.). I think I recall that I was often confused by the nuance that turning your connection off via the browser was not necessarily sufficient to trigger a sync, and I had to actually test by toggling my wifi. That could be browser/hardware specific but might be worth a try?


AdiBags compatibility: Custom Filter widget broken

Addon Version
v0.1.8
World of Warcraft Version
Retail
Describe the bug
With AdiBags v1.10.24 and BetterBags v0.1.8 both installed, modifying AdiBags categories is no longer possible, probably due to reusing the AceConfig widget partially. In AdiBags, the widget always claims to be completely empty:

Steps to reproduce
Install both addons, open AdiBags options > Filters > custom.

Good guess. Based on your hint, I changed the name of the custom ItemList control to BBItemList and AdiBags started displaying item lists against. Here's a patch:
diff --git a/BetterBags/config/config.lua b/BetterBags/config/config.lua
index 297ff4c..1da3e01 100644
--- a/BetterBags/config/config.lua
+++ b/BetterBags/config/config.lua
@@ -140,7 +140,7 @@ end
 function config:OnEnable()
   self.helpText = {}
   self:CreateAllHelp()
-  GUI:RegisterWidgetType("ItemList", config.CreateItemListWidget, 1)
+  GUI:RegisterWidgetType("BBItemList", config.CreateItemListWidget, 1)
   LibStub('AceConfig-3.0'):RegisterOptionsTable(addonName, function() return self:GetOptions() end)
   self.frame, self.category = LibStub("AceConfigDialog-3.0"):AddToBlizOptions(addonName, "BetterBags")
   LibStub("AceConfigDialog-3.0"):SetDefaultSize(addonName, 700, 800)
diff --git a/BetterBags/config/customcat.lua b/BetterBags/config/customcat.lua
index 0cade21..0742f68 100644
--- a/BetterBags/config/customcat.lua
+++ b/BetterBags/config/customcat.lua
@@ -26,7 +26,7 @@ function config:CreateCustomCategoryConfig(category)
       items = {
         type = "multiselect",
         name = L:G("Items"),
-        dialogControl = "ItemList",
+        dialogControl = "BBItemList",
         order = 1,
         values = DB:GetItemCategory(category)
       },

Closing this as Adibags support has been discontinued, and additionally, BetterBags is moving away from using the AceConfig for custom category item lists


selecting an open script file in sln explorer does not activate the doc window.

Open a PS1 file in the editor
open a different file (e.g. json file)
select the PS1 file in sln explorer...
nothing happens, usually when you select a node in sln explorer and the file is open in a doc window, that doc window is activated.  This happens w/ PS1 file before poshtools is installed, we should probably do the same.

Possibly related to needing to #59 ?


Use consistent connection option names

This is backward-compatible because it still supports the current :conn- -prefixed keys.
Fixes #477.
I don’t know if I was supposed to edit that core_old.clj file :man_shrugging:

Merged, thanks!


adding ROADMAP details

@elzzhu Adding some details on the project roadmap for the OSPO requirements.

@elzzhu would you have a chance to approve this please.


Add reactabular-sort docs to the site

It's below data category right now. Here.
That said, alternative categorization would work for me if we can figure out a better one. "Features" and "Data" feel awfully vague.

Current coverage is 83.92% (diff: 100%)

Merging #224 into master will not change coverage

@@             master       #224   diff @@
==========================================
  Files            53         53
  Lines           734        734
  Methods         112        112
  Messages          0          0
  Branches        239        239
==========================================
  Hits            616        616
  Misses          117        117
  Partials          1          1

Powered by Codecov. Last update 490dad4...2c5c610

Shit, I didn’t find it ;-( But for me drag’n’drop and sorting is very close things, so, yeah, “Data” and “Features” isn’t very clear. Not sure I could divide these two somehow.

Ok, let me think about it. I'll come up with a proposal shortly.

Cool, thanks!

@sapegin Can you have a look now?

Yeah, I thinks it’s better!
 That helped me to improve it. 👍

I think the search portion might go out of the project eventually as the dependency to Reactabular is so light. It will make the docs perhaps a little thinner again, but we'll see.


NTP-Setup using /etc/ntpd.conf

We are already using the openntpd package in build root instead of the old ntpclient functionality. The NTP setup routines (WebUI, etc.) have to be adapted, however, to the new package so that users are able to change the ntp server address via the WebUI which should then trigger an automatic restart of the ntpd daemon.

After having checked the functionality it now seems to work.


Create UIScrollView category to automatically handle insetting with keyboard

Basically put all of this PR's code into an extension so we can do something like
collectionView.insetOnKeyboard()

https://github.com/rnystrom/GitHawk/pull/652

@rnystrom we can also extract Keyboard notifications subscription and management to specific object which will be easy for reuse.
Previously i've used something similar to:
`internal class KeyboardHandler : NSObject {
internal typealias KeyboardEventCallback = (_ willShow: Bool, _ keyboardFrame: CGRect) -> Void

internal var enabled: Bool

internal init(enabled: Bool = default, before: KeyboardEventCallback? = default, animations: KeyboardEventCallback? = default, completion: KeyboardEventCallback? = default)

internal func keyboardWillShow(_ notification: Notification)

internal func keyboardWillHide(_ notification: Notification)

}
`
but we can rethink this if needed

we have this now


Improve Readme.md file

Closes issue: #120
I improve readme.md file a little bit and also add github actions with a python script to automate the main contents of repo to display in readme.md with their link.

@Akash20x use grid for storing content ....

@Akash20x use grid for storing content ....

Where I didn't understand, please elaborate

@Akash20x use grid for storing content ....

@Niketkumardheeryan Did you mean that I have to display contents in tabular form.

@Akash20x yep, got it right..

@Akash20x yep, got it right..

OK I will do it

@Niketkumardheeryan I have done the required changes, please check it

@Akash20x hey u have added content list manually ,u have to automate this step, if a new project will be added into this repo,it should be automatically add into that list.

add contributors  at last too.

@Akash20x hey u have added content list manually ,u have to automate this step, if a new project will be added into this repo,it should be automatically add into that list.

No it is not manually,
Try delete contents and then check it will automatically come after 1 minute.

add contributors at last too.

OK

@Niketkumardheeryan I have done the required changes,please check my pull request.


Support direct cloning into library folder

When I clone this library from ~/Arduino/libraries, I end up with an extra directory:
Bounce-Arduino-Wiring/Bounce2
It would be better if the repository name would be changed to Bounce2 and no subdirectory within the repository for easier cloning.

Hum, the problem is that the folder will appear as Bounce-Arduino-Wiring in the Arduino IDE.

Ok, done. Is this ok?

great thank you


no bt device shown on iphone

Hi, I wanted to just use the bluetooth script, but no device shows up on my iphone when trying to find it. I can conect via ssh and bluetoothctl, but this should be prevented by udev i guess...
best regards,
goeste

Is this still an issue? Much has been improved in Raspbian during the last year, so probably this is fixed?

Yes it is still an issue! :(

Could you check the output of sudo hciconfig? It should say UP RUNNING PSCAN ISCAN somewhere. If not, you might need to execute
hciconfig hci0 piscan
hciconfig hci0 sspmode 1
`
``

to set the Bluetooth system in the right state.

Cool! It works! :)

Great! Can you try to restart you Pi to see if this is persistent? It should be (unless you modified the filesystem to be read-only, in which case you might need to make it writable again, restart the bluetooth service, and do these steps), but I'm not sure...

Yes, it seems to work even after reboot...

Am 02.07.2019 um 10:13 schrieb Nico Kaiser<EMAIL_ADDRESS>Great! Can you try to restart you Pi to see if this is persistent? It should be (unless you modified the filesystem to be read-only, in which case you might need to make it writable again, restart the bluetooth service, and do these steps), but I'm not sure...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/nicokaiser/rpi-audio-receiver/issues/2?email_source=notifications&email_token=ABWTCUU5PFYBPNZY64ZTD6LP5MEY5A5CNFSM4E3ZWDOKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZAOUDA#issuecomment-507570700, or mute the thread https://github.com/notifications/unsubscribe-auth/ABWTCUS2G5XFUIB6NEJ7URLP5MEY5ANCNFSM4E3ZWDOA.


Fix DUT serial output download logic

The previous version was incorrectly triggering the download from
the signal handlers, which was not doing anything in the case of normal
process completion.
Change-type: patch
Signed-off-by: Roman Mazur<EMAIL_ADDRESS>

@balena-ci I self-certify!


new koji build metadata osbs_build providing information about build

kind, subtypes and engine

OSBS-8618

Signed-off-by: Robert Cerven<EMAIL_ADDRESS>Maintainers will complete the following section:

[x] Commit messages are descriptive enough
[x] "Signed-off-by:" line is present in each commit
[x] Code coverage from testing does not decrease and new code is covered
[x] JSON/YAML configuration changes are updated in the relevant schema
[x] Changes to metadata also update the documentation for the metadata
[x] Pull request includes link to an osbs-docs PR for user documentation updates
[x] New feature can be disabled from a configuration file

New attrs should be docuemnted

otherwise LGTM

New attrs should be docuemnted

added to koji.md

rn updated: new koji build metadata osbs_build providing information about build


Ideas for improving readability

Hi! love the idea of this & been looking for something like this for a while -- however there are a few readability issues / bugs that I think could be fixed:
Default hover document:

glow-hover.nvim hover document:

{
  max_width = 500,
  padding = 1,
  border = "rounded",
  glow_path = "glow",
}

Padding value seems to have no effect
Would be good if the doc was highlighted using nvim theme colors
Option to only render the documentation (not the signature) would also be pretty sweet
Opening the hover doc puts you into insert mode

Thanks!

I think this is really good feedback, I'm on the same page as @cwqt.
For me the main issue is this one:

Opening the hover doc puts you into insert mode

Having the possibility to get inside the message to yank part of the docs for a quick Google search or yanking a function/class name it's really useful.


Parameterize command invocations

Is your feature request related to a problem? Please describe.
The ability to parameterize some of these scripts would greatly improve the effectiveness of some of the commands. I'm not sure how this is best implemented, but generally being able to provide constrained customization could open up some neat possibilities
Other issues that might benefit from this:

#327
#308
#289

Describe the solution you'd like
Tbd

Great idea, I could probably get working on something like this sooner or later.

Not planned for now, Chris said he wants the interactions between the scripts as minimal as possible.

/close not planned


Pranav TeamSports Peer Review

Done by Kinish Sathish
Expected
Score: 1/1

[x] .1 - Frontend UI demo.   UI takes inputs and passes them to an API and returns data from the backend to frontend.

[x] .1 - Postman API Demo.  JSON Raw/Body formatted API passes inputs to backend and updates persistent table.

[x] .1 - Java Demo - Object Creation.  Tester method that shows creation of Objects and outputs to Terminal, illustrate printing objects (hopefully using toString().

Extra for now, required at end of project

[x] .1 - Java Demo - Model Init.   Delete database and show the creation and population of tables.   Expected in this step is the use of CommandLineRunner and the use of a tool like SQLite Viewer

[x] .1 - Java Demo with Postman or UI - All CRUD methods.   Above was focused on Create and Read, this is focused on Update and Delete.

Done By Kinish Sathish
Completed all of the required objectives from the tasks. Specifically, worked on a frontend UI demo In order to connect API data from the soccer quiz to look better on the frontend, also did work on API by adding in new data from APIs, and the team created many objects in order to make the website look excellent and efficient.
They also added a lot of detail regarding data base and created an update and delete feature within the data base.


Render formulae from Pluto Notebook in Documenter export/use.

I a cell contains markdown with a formula (non-inline) like
md"""
We can generalise the notion of a directional derivative, i.e. for the “direction” ``Y∈T_p\mathcal M`` let ``c\colon [-ε,ε]``, ``ε>0``, be a curve with ``c(0) = p``, ``\dot c(0) = Y`` and we obtain
```math
	Df(p)[Y] = \frac{\mathrm{d}}{\mathrm{d}t} f(c(t)) = \lim_{h \to 0} \frac{1}{h}(f(\exp_p(hY))-f(p))
```
"""

and one uses the (otherwise really nice) idea from the docs/make.jl in this repository,
the inline math is rendered but the formula is not.
I tried quite a few things, the Franklin example from the docs (in the generated markdown raw html part) and several other approaches but though Documenter loads both latex as well as auto-render I am not able to trigger them, even not with copying the require approach from documenter.js.

I finally found the time to check the new (registered) version and the problem persists locally at least.
Here is a manual trick export by Pluto itself (current version in the docs)
https://manoptjl.org/stable/pluto/AutomaticDifferentiation.html
and I switched to the variant described in the makefile here, see
https://github.com/JuliaManifolds/Manopt.jl/blob/3fca79067927253a109706398c864576fb07106b/docs/make.jl#L57
Currently even with a manual attempt trying to render the math formulae manually (line 71-85 same file). With those lines, no math gets rendered, without only inline get rendered but the others are just plain
$$ mathformula $$

lines shown in the final HTML, so they do not get rendered. With the script, the $$ vanish but there is nothing rendered. Interestingly while the log looks the same as locally the resulting page looks fine
https://manoptjl.org/previews/PR98/pluto/AutomaticDifferentiation.html
So I have to check what is different between GH Actions and my local version (currently for example that I am on a fresh Julia 1.7 and GH is on 1.6.4).
PS: There is also one warning (ignore the errors after that I might have broken one of my Literate examples)
https://github.com/JuliaManifolds/Manopt.jl/runs/4379719470?check_suite_focus=true#step:4:951

Update: So with the CI being on 1.7 I can reproduce the error in the CI (see the PR998/ link above), the corresponding PR is of course https://github.com/JuliaManifolds/Manopt.jl/pull/98

Pluto.jl uses MathJax, so the most reliable method would probably to use that math engine.
Luckily, Documenter.jl allows configuring the math engine:
using Documenter: HTML, MathJax3, makedocs

mathengine = MathJax3()
format = HTML(; mathengine, [...])
makedocs(; format, [...])

I was shortly confused by the append_build_contextwhich I do not have on master but also I do not need. Locally it worked.
If you want you could add to the raw html documenter export something like
https://github.com/JuliaManifolds/Manopt.jl/blob/00aa4a8f833b4052bfa97ca8bcf7956c3286639c/docs/make.jl#L62-L64
to get the GitHub icon correct (of course you have to adapt the interpolation to your variables of the Pluto notebook path and filename).

If you want you could add to the raw html documenter export something like

Awesome tip.

...and after allowing the newest Documenter version it also works on CI, so the MathJax3() works like a charm now - great! I just have to maybe color the frames of the code cells (input/output) a little differently.
I also noticed that output is bash-style – maybe using Julia here would also be good?

I also noticed that output is bash-style – maybe using Julia here would also be good?

The output style is inferred by Highlight.js, if I'm not mistaken. This is the output block:
https://github.com/rikhuijzer/PlutoStaticHTML.jl/blob/52418b3087c54046129bb24e6c1078f4adf3dc8d/src/html.jl#L37-L42
Output can be anything as well as RAW text sometimes, so setting it to Julia will also give problems IMO

...and after allowing the newest Documenter version it also works on CI, so the MathJax3() works like a charm now - great!


docs: updating links for new repo name

@stephenplusplus did I miss anything?

Maybe, but we'll just get them as we find them!


Ongoing: natural backpressure

NOT READY FOR MERGE Just have a look, if you're curious about what I'm working on.
The current implementation of our node has a single dispatcher thread, pulling network-transport Events from an unbounded Chan and then determining what to do with them, typically putting received data into some other unbounded Chan. That's no good. network-transport-tcp will pull data from sockets as fast as it can, no matter what.
Even with queueing and buffering for network-transport-tcp as in https://github.com/haskell-distributed/network-transport-tcp/pull/46 we're still not quite there. We could define some QDisc which bounds the input buffers for each socket, but we're still left with only one means of output: receive :: EndPoint -> Event. It aggregates events from every socket, and then our dispatcher still hands out the data to the unbounded Chans of the handlers.
So I've made a somewhat radical change to network-transport-tcp which you can find here: https://github.com/avieth/network-transport-tcp/tree/avieth/backpressure . It allows for the QDisc to give out a custom type, not necessarily Event. This makes the ConnectionBuffers :: QDisc EndPointEvent possible (see src/Network/Transport/ConnectionBuffers.hs). This puts out an event for every peer connection which includes a bounded input buffer for that connection alone. The main dispatcher thread of our node can spin as fast as it wants, picking up new connections and handing off their input buffers to handlers. Those handlers will be responsible for reading from the buffers. A full buffer leads to a slowdown on the peer's side, hence we have very natural, somewhat automatic backpressure: if your handler is slow, it'll slow the input from the peer.

Dropping lightweight connections isn't possible in nt-tcp at present. If there's already a heavyweight connection, then no handshake takes place for new connections; a control header is sent and then the lightweight connection is assumed ready, the peer has no chance to reject it (the lightweight connection only, leaving the socket and its other lightweight connections in tact).
Suppose some peer has induced an inordinate amount of handlers in our node. Say there are n handlers currently running in response to that peer, and n is something like 4 standard deviations from the mean number of handlers per peer. What can we do in response to this? We want to keep taking in data from the peer, for the handlers may still need some and we must not starve them. But we don't want to take this new connection, because we want to maintain high quality of service for other peers. The only reasonable option I see is to drop it.
We could either:

Impose a handshake on new lightweight connections, so that the abusive peer will see an error when trying to connect to the overloaded peer who dropped his connection.
Silently drop new data from that peer.

Number 1 isn't so bad. The cost of the handshake won't be high, the socket is already up. Number 2 could be bad: if the peer tries to get a bidirectional connection going, it will time out waiting for the ACK; if the peer tries to start a unidirectional connection, he'll never know that the peer ignored him. Is that ok? Currently when we send a unidirectional message we have no guarantee that the peer did anything with it anyway.


Question : ToRA 70B Training environments?

Hello. For the ToRA70B model, is it correct that you trained in the A100 80GB x 8 environment? If not, can I know the environment?

Yep, we use 80GB x 8 gpus, just as shown in the training script.


Question : Is there a no op implementation for release build ?

Cockpit.showCockpit(supportFragmentManager) requires a dependency .

showCockpit method is generated only in debug Cockpit.java. There's no no-op version of this method.

Cockpit.showCockpit(supportFragmentManager) requires a dependency .

But then should we comment this line in release builds ? Will we have to change the code before building always ?


Wrong offset for playbackFinished when song ends

IMPORTANT: Before you create an issue, please take a look at our Issue Reporting Guide.
Briefly summarize your issue:

Login with JP account and play music from my music library. play music is fine, but check the log information and found the offset is incorrect when the song play finished. May i know if this is a know issue?
What is the expected behavior?

The offset should be correct when the song play finished.
What behavior are you observing?

Checked the below log information:
line#927 start play music.
line#1897: stop play music.
line#2388: resume play music.
line#3490 and line#3847: stop and play next music.
line#4747 and line#5124: stop and play previous music.
line#14054: the music play finished, the offset is incorrect
offset_failed_log.txt
Provide the steps to reproduce the issue, if applicable:

play music from my music library.
after 15 seconds, stop play music.
after 15 seconds, resume play music.
after 15 seconds, next
after 15 seconds, previous. wait till the song ends, you can see the wrong offset .

Tell us about your environment:

What version of the AVS Device SDK are you using?
  <1.8.1>

Tell us what hardware you're using:

[ ] Desktop / Laptop
[ ] Raspberry Pi
[x] Other - tell us more:  OpenWrt

Tell us about your OS (Type & version):

[x] Linux
[ ] MacOS
[ ] Raspbian Stretch
[ ] Raspbian Jessy
[ ] Other - tell us more:

Hi @BobXLiu , we have confirmed this issue and we are now working on a fix.


docs/building-operators: update and align tutorials

Description of the change: unify all tutorials
Motivation for the change: the tutorials have drifted when they should be closely aligned
/kind documentation
Checklist
If the pull request includes user-facing changes, extra documentation is required:

[ ] Add a new changelog fragment in changelog/fragments (see changelog/fragments/00-template.yaml)
[x] Add or update relevant sections of the docs website in website/content/en/docs

Follows up on #4335
/hold

/cc @jmrodri @varshaprasad96


useBreakpoint hook does not work without snipe

The breakpoint snipe component is missing and is required for the useBreakpoint hook to work.

For whomever takes this, here's an implementation of <BreakpointSnipe> that you might be able to use
https://github.com/wethegit/noa-microsite/tree/dev/src/components/app/page/components/breakpoint-snipe
Could even add this to the component library…

You'll also need to define BREAKPOINT_SNIPE_CLASSNAME in the utilities/consts.js file

Closing in favor of the new version which lives in @wethegit/component-library
https://wethegit.github.io/component-library/?path=/docs/components-breakpoint-snipe-readme--overview

I should mention that we have yet to port over the hook to the component library — so that's now a new issue 🙃


breakdown of sa and jb cases

Hi All - I noticed on http://www.cdc.gov/zika/geo/united-states.html that we are now breaking down number of pregnant, sexually acquired , Guillain-Barré syndrome cases for states and territories. Do we want to capture this information? If so, where?

Yes, please do capture that information. Make sure you have the latest version of the data guide and add new fields to capture those additional data points. Then add that data into the new csv's. It is okay that it wasn't captured previously.


How to update parking_lot's dependency on parking_lot_core

parking_lot_core's dependency on windows-sys was recently updated from v0.33.0 to v0.34.0. What's the process for updating parking_lot's dependency on parking_lot_core? I suppose it would require tagging a new release of the latter, and then updating the root crate to depend on the new release of core?
Am I understanding this change, for example, correctly that it does those things simultaneously?

There is no need for a release of parking_lot, a minor release of parking_lot_core is enough, as the last one.

That is not the case. 0.9.0 would be semver compatible with 0.9.1, so just releasing parking_lot_core 0.9.1 would be enough.

I know that it's semver compatible, but I guess what I'm getting at is that if I were to cargo vendor parking_lot, I'm pretty sure it would pull in parking_lot_core 0.9.0 since it is explicitly pinned to that version, rather than "0.9" for example. Am I missing something?

parking_lot is not pinned to 0.9.0. It is pinned to any version semver compatible to 0.9.0, which includes 0.9.1:
https://github.com/Amanieu/parking_lot/blob/e27f37d111c57a99b0a7147caddc28c57fb44e91/Cargo.toml#L14

Gotcha, I didn't realize that specifying a full version worked that way. Thanks for clarifying.

This should do it: #334
Although a maintainer would need to publish the new release to crates.io.


Tales of Argosa - Update to version 1.1

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

New Sheet Details

The name of this game is: <   >  (i.e. Dungeons & Dragons 5th Edition, The Dresden Files RPG)

The publisher of this game is: <   > (i.e. Wizards of the Coast, Evil Hat)

The name of this game system/family is: <   > (i.e. Dungeons & Dragons, FATE)

[ ] I have followed the Character Sheets Standards when building this sheet.

[ ] I have authorization from the game's publisher to make this an official sheet on Roll20 with their name attached.
[ ] This game is not a traditionally published game, but a copy of the game rules can be purchased/downloaded/found at: <   >
[ ] This sheet is for an unofficial fan game, modification to an existing game, or a homebrew system.

Changes / Description

Update to version 1.1
1- "Others" of personal information and Gear row become "Other"
2- Initiative attribute say "INIT" instead of "INI"
3 – The setting are removed as none of them are relevant anymore in TOA
4 – Fixed the logo link
5 – Updated the official Logos
6 – Updated the json file for allow CSE

Character Sheet Info Roll20 Internal Use only.

@Audemar-Codding it looks like the original code for this was using CRLF line endings, which is against our policies. This was caught and fixed in a different PR by @vince-roll20 (thanks vince), so you will need to rebase this branch and ensure you've fixed your line endings to comply with our policies going forward.

Ha i see,
sorry i'm making a new pull request with LF files.


Fix error with user-agent brand not being an array

We have thousands of errors a day caused by navigator.userAgentData.brands not being an array. This PR aims to fix that.

Where does this error surface?

Where does this error surface?

It throws an exception when calling .map on something that is not an array.
Could you clarify if you were looking for something more specific?


[BUG] uploading a filename with a comma crashes flowise

Describe the bug
Flowise crashes when a file with a comma is uploaded.I found this using unstructured, but they apply to all the file upload types:

Csv
Docx
Json
Jsonlines
Pdf
Text
UnstructuredFile

flowise expects the data to be in a "<base64>,<filename>" format
const value = result + `,filename:${name}`

On the server-side, there is splitting based on this comma, which throws an error if a filename exists.
const splitDataURI = file.split(',')
const filename = splitDataURI.pop()?.split(':')[1] ?? ''
const bf = Buffer.from(splitDataURI.pop() || '', 'base64')
const loaderDocs = await loader.loadAndSplitBuffer(bf, filename)
docs.push(...loaderDocs)

To Reproduce
upload any file with a comma.  Flowise CRASHES
Expected behavior
upload a file with a comma.  Have flowise not crash.
Screenshots
an example of a filename with a comma.  There ends up being 4 elements in an array which will cause a crash.

Data should really be passed around using JSON.
export interface IFileObject {
    data?: string
    filename: string
}

I got this working on a local branch, but would have to update the UI and 7 file handlers to fix for all of flowise.  I could do, but it'd take time.  All I use right now is unstructuredFile, and never through the UI.

@jaredmcqueen good catch! can you open a PR just for the UnstructuredFile, we can then take the fix and implement on other doc loaders


T731 locals() scope, eval(), exec()

Fix locals() and friends in module and class scope
Implement eval() and exec()

Looks good to me.


Normalize app_name where necessary

Currently we're using the value of app_name template variable provided by user in setup.py as-is.
Since that will be usually a Python package name, it will be nice to support values that contain some standard normalization (from Python module names to Java package names).
Today I hit a related problem when I tried to use name='hello-android-app' in my setup.py.

We're going to need to radically change this template to support the upcoming change to an embedded CPython approach, currently underway as part of the PSF-funded work on the Android backend. That will involve creating a new template from scratch, so this respository is being archived. Thanks for the report!


Populate RDBMS Object Comment schema.yml Description

Feature description
The description key in schema.yml files is currently used to populate DBT docs. This feature would be to materialize the description values in the RDBMS as object comments (the "comment" value in information_schema.columns for columns, information_schema.tables for tables etc).
Who will this benefit?
Persisting this information into the RDBMS will make it possible to query this additional table meta - so BI tools can easily build consumer-facing rich data catalogs.

Bonus points: I typically build out JSON formatted strings in the db comments with keys like "comment", "grain" (for tables), "repo version added" - it could be interesting to do the same thing here, maybe populate a JSON object string with "description" and "schema tests" - so BI users can easily review the tests applied to the data set.

See also: #1031

Closing in favor of https://github.com/fishtown-analytics/dbt/issues/1031


Compile oqs-provider for openssl installed in arbitrary path

Hi, I have installed openssl-3.4.0-dev in /usr/local/ssl
./Configure --prefix=/usr/local/ssl --openssldir=/usr/local/ssl '-Wl,-rpath,$(LIBRPATH)'
but when I compile oqs-provider with
cmake -S . -B _build && cmake --build _build
CMake Deprecation Warning at CMakeLists.txt:4 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is GNU 11.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /opt/rh/devtoolset-11/root/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Creating Release build
-- Build will store public keys in PKCS#8 structures
-- Build will not include external encoding library for SPKI/PKCS#8
-- Found OpenSSL: /usr/local/lib64/libcrypto.so (found suitable version "3.4.0", minimum required is "3.0")
-- liboqs found: Include dir at /usr/local/include;/usr/local/include/oqs
-- Building commit 0ec51ec in /home/zxl/oqsopenssl/openssl/oqs-provider
-- Configuring done (0.5s)
CMake Warning at oqsprov/CMakeLists.txt:40 (add_library):
  Cannot generate a safe linker search path for target oqsprovider because
  files in some directories may conflict with libraries in implicit
  directories:

    link library [libcrypto.so] in /usr/lib64 may be hidden by files in:
      /usr/local/ssl/lib64

  Some of these libraries may not be found correctly.

CMake Warning at oqsprov/CMakeLists.txt:40 (add_library):
  Cannot generate a safe runtime search path for target oqsprovider because
  files in some directories may conflict with libraries in implicit
  directories:

    runtime library [libcrypto.so.1.1] in /usr/lib64 may be hidden by files in:
      /usr/local/lib64

  Some of these libraries may not be found correctly.

-- Generating done (0.0s)
-- Build files have been written to: /home/zxl/oqsopenssl/openssl/oqs-provider/_build
[  3%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqsprov.c.o
[  6%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqsprov_capabilities.c.o
[  9%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqsprov_keys.c.o
[ 12%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqs_kmgmt.c.o
[ 16%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqs_sig.c.o
[ 19%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqs_kem.c.o
[ 22%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqs_encode_key2any.c.o
[ 25%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqs_endecoder_common.c.o
[ 29%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqs_decode_der2key.c.o
[ 32%] Building C object oqsprov/CMakeFiles/oqsprovider.dir/oqsprov_bio.c.o
[ 35%] Linking C shared module ../lib/oqsprovider.so
[ 35%] Built target oqsprovider
[ 38%] Building C object test/CMakeFiles/oqs_test_signatures.dir/oqs_test_signatures.c.o
[ 41%] Building C object test/CMakeFiles/oqs_test_signatures.dir/test_common.c.o
[ 45%] Linking C executable oqs_test_signatures
[ 45%] Built target oqs_test_signatures
[ 48%] Building C object test/CMakeFiles/oqs_test_kems.dir/oqs_test_kems.c.o
[ 51%] Building C object test/CMakeFiles/oqs_test_kems.dir/test_common.c.o
[ 54%] Linking C executable oqs_test_kems
[ 54%] Built target oqs_test_kems
[ 58%] Building C object test/CMakeFiles/oqs_test_groups.dir/oqs_test_groups.c.o
[ 61%] Building C object test/CMakeFiles/oqs_test_groups.dir/test_common.c.o
[ 64%] Building C object test/CMakeFiles/oqs_test_groups.dir/tlstest_helpers.c.o
[ 67%] Linking C executable oqs_test_groups
[ 67%] Built target oqs_test_groups
[ 70%] Building C object test/CMakeFiles/oqs_test_tlssig.dir/oqs_test_tlssig.c.o
[ 74%] Building C object test/CMakeFiles/oqs_test_tlssig.dir/test_common.c.o
[ 77%] Building C object test/CMakeFiles/oqs_test_tlssig.dir/tlstest_helpers.c.o
[ 80%] Linking C executable oqs_test_tlssig
[ 80%] Built target oqs_test_tlssig
[ 83%] Building C object test/CMakeFiles/oqs_test_endecode.dir/oqs_test_endecode.c.o
[ 87%] Building C object test/CMakeFiles/oqs_test_endecode.dir/test_common.c.o
[ 90%] Linking C executable oqs_test_endecode
[ 90%] Built target oqs_test_endecode
[ 93%] Building C object test/CMakeFiles/oqs_test_evp_pkey_params.dir/oqs_test_evp_pkey_params.c.o
[ 96%] Building C object test/CMakeFiles/oqs_test_evp_pkey_params.dir/test_common.c.o
[100%] Linking C executable oqs_test_evp_pkey_params
[100%] Built target oqs_test_evp_pkey_params

It doesn't get the right openssl (it seems like find_package(OpenSSL 3.0 REQUIRED) can only find the default openssl), how to compile oqs-provider for openssl installed in arbitrary path?

Hi @xianglingzhang, thanks for the question. You can tell CMake where to find your custom installation of OpenSSL by setting the OPENSSL_ROOT_DIR variable. Please let me know if that fixes your issue.
As a future note, if you want to try out oqs-provider for a specific OpenSSL version without causing issues with an existing OpenSSL installation, you can use the fullbuild.sh script to automatically configure and build an arbitrary OpenSSL version without doing a system-wide installation.


Mta plugin fix + Telekinetic room rework

This fixes #3945 and #3946. The telekinetic room has been rewritten to be more robust, more efficient and easier to understand.

Can this be re-reviewed at some point? The telekinetic room is still broken.

There is a difference in "fix" and "rewrite completely". Eg, this claims to fix a bug but does not detail what the bug even is. It's not possible to tell from the commit history.

Well you say that Adam but we had a discussion on discord about what it fixed at the time of making this pull request, you just said you didn't have the time to properly test the rewrite.
This fixes issue #3946 which should be detailed enough and it also suggests the next move when you cast telekinetic grab instead of when the guardian stops moving.

Hey if you're still around could you rebase/update this?

Fixed in #9328.


Adding an example notebook no how to convert hex geometry to square and back

It was not clear for me at first how to convert back from square to hexagonal geometry using the key (and the hidden buffer).
So I modified a bit the docstring of the conversion function and made an example notebook.

Nice. I didn't even know this was in there. I don't quite understand why manually indexing the buffer is neccessary in the first place.

@mackaiver I am not sure to understand why it's necessary either actually...
It was implemented by @tino-michael I think.

My idea was to give the user a more fine-grained control over the uniqueness of the entries in the buffer (up to not using the buffer at all).
But if you want, by all means, remove the key argument from the function and make it automatically use geom.cam_id.

But if you want, by all means, remove the key argument from the function and make it automatically use geom.cam_id.

Yeah guess using geom.cam_id makes sense. 👍

Perhaps a small 2 line example of converting forward and back should be added to the docstring as well, if it's confusing to use (that way people don't have to go looking in all the notebooks)

Alright, I added example code in the docstring.
I also tried to use cam_id as default key but it would mean changing the default key of the square geometry from "LSTCam_square" back to simply "LSTCam" which would be a bad thing overall imo.
I think the first implementation was good, just lacked a bit of documentation for a newbie to use.


Streaming extensions: Conversation ID should not be required for starting a conversation

When comparing WS/REST vs. Streaming Extensions (a.k.a. SE), using token with conversation ID burnt (JWT token).

WS/REST

If conversation ID is not presented, it means creating or joining a conversation (POST)

The result will be a JSON with the conversation ID same as the one in the token
If conversation is already started, this call will succeed with HTTP 200

If conversation ID is presented, it means joining a conversation (GET)

SE

If conversation ID is not presented, it is an error (Incorrect conversation id in request)

On the WS/REST API side, whether conversation ID is presented means either creating or joining a conversation. But on SE API, conversation ID is always required.
Although these 3 protocols are not exactly equal, we should reduce inconsistencies as much as we could, so we would reduce confusion from our customers' standpoint.

In current DL ASE, you can establish the socket with either a secret or token, no conversationID is needed. (i.e. Connect no longer requires a conversation ID).
You can then call StartConversation as normal.


Bitchute yt-dl fails to get all channals videos

[X] I'm reporting a broken site support
[X] I've verified that I'm running youtube-dl version 2<IP_ADDRESS>
[X] I've checked that all provided URLs are alive and playable in a browser
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar issues including closed ones

out.txt
I'm using the latest github pull (as of yeasterday) of youtube-dl (not the packaged release).
I direct yt-dl to get all the videos from one channel on bitchute and it reports being unable to find quite a few of them.
I'm running yt-dl on Devuan (Debian) Linux.
Thanks for your work!

PS: Because I counting up to +100 is error prone, I didn't try to access the particular videos that wouldn't download.


Extend part1

Have created 3 new, fleshed-out scenarios to introduce users to the NOMAD GUI search.

I added a provisionary Glossary section too, but maybe it would be better to have this as a separate page, if we still have the time.

My only concern is that Scenario 2 is quite intensive. I think it will likely take too long for people to do on their own, and may burn them out a little before even getting to the MD part.

I get what you mean: there is a balance between letting them free enough to find the right terms on their own and spoon-feeding the answers. Narrative wise, scenarios 2 and 3 are indeed intertwined. I actually first wrote 3, then reconstructed the queries to get the same dataset in 2. Overall, I prefer your option 1 (we see how much they struggle with scenario 2 and maybe do a joined walkthrough) for several reasons:

I think it is more rewarding to "accidentally" arrive at (more or less) the same dataset, but from widely different starting points. If we start with the publication, the payoff will become obvious very early on in the data science scenario.
I think that data science is a more common application for NOMAD than searching for publications (for which there are other search engines).
I think people should also get introduced to the search bar before the widgets.
The tools in 3 are a natural extension of 2: they know how to search fast, but their overview was too limited and that gets addressed next. Conversely, once you know about a dashboard, you won't rely on the entries list that much anymore.
There would be some work realigning the text to one and another if switching positions.
Like this, we get to field test how much people struggle. Maybe your suspicions are confirmed, and then we can apply these insights later on.

Thx for the review! You're right on some paragraphs being too obtuse. I clarified them now.
2 more points remain unresolved, since I didn't understand your feedback there well. Feel free to elaborate.

Btw, should I update the introduction above Exercises?

e rewarding to "accidentally" arrive at (more or less) the same dataset, but from widely different starting points. If we start with the publication, the payoff will become obvious very early on in the data science scenario.
I think that data science is a more common application for NOMAD than searching for publications (for which there are other search engines).

Ok, this sounds like a good plan then. Any idea how long you expect this first part to take then?

update the introduction above Exercises?

Yes, feel free to if you have time, otherwise I can update it later.


In-depth links to "Programming in D"

There are many great section in @acehreli's book
http://ddili.org/ders/d.en/index.html
They would be great to have as in-depth links for the reader if they want to "dive deeper".
It's also a good sanity check for the tour, to see whether there is missing content.

#257 is a first step to add more references, while quickly looking over the chapters there, I couldn't immediately find a good spot for many chapters. While obviously some are more complicated, it worries me a bit that for example we never explain variables, assignments etc.
Anyway here's the list of "missing" chapters and hopefully in the next step we add more of those great links :)

[ ] http://ddili.org/ders/d.en/hello_world.html
[ ] http://ddili.org/ders/d.en/compiler.html
[ ] http://ddili.org/ders/d.en/io.html
[ ] http://ddili.org/ders/d.en/input.html
[ ] http://ddili.org/ders/d.en/stream_redirect.html
[ ] http://ddili.org/ders/d.en/files.html
[ ] http://ddili.org/ders/d.en/literals.html
[ ] http://ddili.org/ders/d.en/formatted_output.html
[ ] http://ddili.org/ders/d.en/formatted_input.html
[ ] http://ddili.org/ders/d.en/enum.html ?
[ ] http://ddili.org/ders/d.en/value_vs_reference.html
[ ] http://ddili.org/ders/d.en/lvalue_rvalue.html
[ ] http://ddili.org/ders/d.en/lazy_operators.html
[ ] http://ddili.org/ders/d.en/main.html
[ ] http://ddili.org/ders/d.en/exceptions.html
[ ] http://ddili.org/ders/d.en/lifetimes.html
[ ] http://ddili.org/ders/d.en/null_is.html
[ ] http://ddili.org/ders/d.en/cast.html
[ ] http://ddili.org/ders/d.en/parameter_flexibility.html
[ ] http://ddili.org/ders/d.en/function_overloading.html
[ ] http://ddili.org/ders/d.en/member_functions.html
[ ] http://ddili.org/ders/d.en/const_member_functions.html
[ ] http://ddili.org/ders/d.en/special_functions.html
[ ] http://ddili.org/ders/d.en/destroy.html
[ ] http://ddili.org/ders/d.en/modules.html
[ ] http://ddili.org/ders/d.en/encapsulation.html
[ ] http://ddili.org/ders/d.en/property.html
[ ] http://ddili.org/ders/d.en/pragma.html
[ ] http://ddili.org/ders/d.en/alias.html
[ ] http://ddili.org/ders/d.en/alias_this.html
[ ] http://ddili.org/ders/d.en/pointers.html
[ ] http://ddili.org/ders/d.en/bit_operations.html
[ ] http://ddili.org/ders/d.en/is_expr.html
[ ] http://ddili.org/ders/d.en/lambda.html
[ ] http://ddili.org/ders/d.en/nested.html
[ ] http://ddili.org/ders/d.en/union.html
[ ] http://ddili.org/ders/d.en/goto.html
[ ] http://ddili.org/ders/d.en/tuples.html
[ ] http://ddili.org/ders/d.en/functions_more.html
[ ] http://ddili.org/ders/d.en/memory.html
[ ] http://ddili.org/ders/d.en/operator_precedence.html

This issue was moved to dlang-tour/english#25


[Bug]: Puppeteer screenshots differ a lot on MacOs and centOs(Linux)

Bug description
I am using puppeteer to generate screenshots of UI components and comparing them via jest-image-snapshots by writing jest tests.
The tests I have written run fine on my local (macOs)  and the screenshots generated by puppeteer are consistent.
But when I run it on CI/Jenkins which runs on server using CentOs , the screenshots generated differ very much in size and other aspects.
I know that it is expected that the screenshots would differ to some extent based on the OS/env used . But the difference is very high in most cases i.e >4%.
Root Test file
const puppeteer = require('puppeteer');
const assertImageSnapshot = require('../utils/assertImageSnapshot');`

const buttonVariantsTestConfig = [
  { snapId: 'primary-btn', states: ['hover'] },
  { snapId: 'preferred-btn', states: ['hover'] },
  { snapId: 'secondary-btn', states: ['hover'] },
  { snapId: 'tertiary-btn', states: ['hover'] },
];
const runButtonSnapTests = async (page, buttonConfig) => {
  for (const testConfig of buttonConfig) {
    const { snapId, states } = testConfig;
    await assertImageSnapshot(page, 'Button', '[data-snap-id="${snapId}"]', states);
  }
};

describe('Component snapshots', () => {
  let page;
  let browser;
  beforeAll(async () => {
    browser = await puppeteer.launch({
      headless: true, args: ['--no-sandbox'], devtools: true, sloMo: 250,
    });
    page = await browser.newPage();
  });

  afterAll(async () => {
    console.log(' ----------- closing browser ---------');
    await browser.close();
  });

  describe('Button Snapshots', () => {
    it('Button Variants snapshots tests', async () => {
      await runButtonSnapTests(page, buttonVariantsTestConfig);
    });
  });
});

assertImageSnapshot.js
const getConfig = require('../snapshotConfig');

const assertImageSnapshot = async (page,
  componentName, selector, state = [], promiseFunc = () => Promise.resolve('')) => {
  await page.goto(`http://localhost:6060/#/Components/${componentName}`);

  // promiseFunc can be used to add custom dom manupulation/dom events before taking screenshots
  return promiseFunc().then(async () => {
    const element = await page.$(selector);
    for (const elementState of ['', ...state]) {
      const snapIdentifier = `/${selector.split('"')[1]}-${elementState}`;
      const config = getConfig(snapIdentifier, componentName);
      if (elementState === 'hover') {
        element.hover();
      }
      expect(await element.screenshot())
        .toMatchImageSnapshot(config);
    }
  });
};

module.exports = assertImageSnapshot;

Puppeteer version
^10.4.0
Node.js version
14.16
npm version
6.14.14
What operating system are you seeing the problem on?
Linux, macOS
Relevant log output
Expected image to be the same size as the snapshot (119x40), but was different (129x40).
    See diff for details: e2e/__image_snapshots__/Button/__diff_output__/primary-btn--diff.png
    Or paste below image diff string to your browser`s URL bar.

  Expected image to match or be a close match to snapshot but was 4.626494023904383% different from snapshot (929 differing pixels).
    See diff for details: e2e/__image_snapshots__/Button/__diff_output__/full-width-btn--diff.png
    Or paste below image diff string to your browser`s URL bar.

I had the exact same problem. The root cause is that rendering would always be different between different OSes. So you have to pick one. I solved it by running screenshot tests in Docker on my Mac. First, build a local Docker image (I am using buildkite/puppeteer as the base image, even though it is deprecated), and then run tests with local files mounted inside:
docker run --rm -it -v $(pwd)/src:/app/src -e CI=true my-image-tag node ./node_modules/jest/bin/jest.js -u


[Bug] ARM Library: Patch does not generate Updatable model for complex envelope types

Describe the bug
Seeing one onboarding team hitting PatchBodyParametersSchema lintDiff. The root cause is this resource includes ManagedServiceIdentity from common type definition which type property is marked as required. Our auto update model generation does not seem to extend to the common types but still $ref to its original definition. As original definition contains required properties thus triggering this warning.
To Reproduce
Playground
Expected behavior
In update model, as we are starting to master the properties in TypeSpec models, we should stop generating $ref to original common definitions but generate an update model locally.

Here is one solution tat teams can use until this is fixed

Here is a discussion about PatchBodyParamterSchema rule:

https://github.com/Azure/azure-sdk-tools/issues/7771

Hi @markcowl thank you for the solution, I have tried in the PR https://github.com/Azure/azure-rest-api-specs-pr/pull/18316. Unfortunately without luck. I have two properties HcpOpenShiftClusterResource and HcpOpenShiftNodePoolResource, I tried to apply the variant as is proposed here for HcpOpenShiftClusterNodepoolResource, it game me additional error of identity not in the right place. For both resources, the original error PatchBodyParameterSchema remained.
May I ask for further suggestions?

@petrkotas sent a PR to your branch with a fix

Hello @markcowl
We are onboarding as a new resource provider on RPaaS and the rule PatchBodyParametersSchema is failing for us as well. The PATCH request body is getting generated automatically for us where the request body parameters are marked as required. Due to that, the rule PatchBodyParametersSchema is getting failed for us. Could you provide a solution for this in the documentation for passing CI checks?
Our PR - https://github.com/Azure/azure-rest-api-specs-pr/pull/18659

Fixed.


disable SHIORI3FW.DebugMode by default

I think that SHIORI3FW.DebugMode should be disabled by default for security reasons.

https://github.com/YAYA-shiori/yaya-dic/pull/25#issuecomment-1486703481
Oh sorry, I just removed the call to OnDebugModeChange when intercepting from taromati2 and the part that was removed required extra judgement but I forgot to remove this, sorry😂


Debugging fails if Microsoft Azure storage emulator is not running

The default local.settings.json that is generated looks like this:
{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "python"
  }
}

However, if a user tries to follow the guide and start debugging, they will be presented with the following prompt:

If you click "Debug anyway" you will get runtime errors related to the storage:

"The listener for function 'Functions.ExampleTimerFunction' was unable to start. Microsoft.WindowsAzure.Storage: No connection could be made because the target machine actively refused it. System.Net.Http: No connection could be made because the target machine actively refused it. System.Private.CoreLib: No connection could be made because the target machine actively refused it."

The fix for this is to:

Install the Microsoft Azure storage emulator from here if it is not already installed.
Run the storage emulator, instructions are available here.

Essentially run AzureStorageEmulator.exe start from the directory (or providing the path to the directory) where the exe lives.

Restart your function debugging.
You should no longer get the prompt when starting, nor should you see the runtime error above.

Since the audience of the article could well include groups that are not necessarily mutually-exclusive:

Those new to Python
Those new to Azure functions
Those new to VS Code

It would be great if there was a note included in the documentation about this requirement for the Microsoft Azure storage emulator to be installed and running (the prompt from within VS Code doesn't provide a helpful enough message IMO).
The only reason I was able to fix this was because of my experience with functions being run from within Visual Studio where the storage emulator is automatically started, and I came across this comment which helped.

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

ID: 32211a5a-ad60-b982-b27e-1f2c7caef1c9
Version Independent ID: 32a098cf-c39d-342b-5b7e-d9a62f6a9454
Content: Step 4: Debug the Azure Functions Python code locally with VS Code
Content Source: python/tutorial-vs-code-serverless-python-04.md
Product: azure-python
GitHub Login: @kraigb
Microsoft Alias: kraigb

@BeigeBadger Thanks. I'll get this incorporated into the docs when I have a chance.

Thanks for getting onto this so quickly @kraigb!

Apologies for taking a long time to get to this, but I did update the article just now to include mention of the error. That said, in reviewing the whole process, the "UseDevelopmentStorage=true" value doesn't seem to be the default any longer...when I tested the process, the value for AzureWebJobsStorage was just an empty string. So the extension may have been updated in the last two months. In any case, thanks for pointing out the detail!


Move hubot support.channel to support.thread

Change-type: patch
Signed-off-by: Josh Bowling<EMAIL_ADDRESS>

@balena-ci I self certify!