Bugfix/1527 fix grad norm tracking

What does this PR do?

Fixes # (issue)
Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together? Otherwise, we ask you to create a separate PR for every change.
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified; Bugfixes should be including in bug-fix release milestones (m.f.X) and features should be included in (m.X.b) releases.

Did you have fun?
Make sure you had fun coding 🙃

Hello @tchaton! Thanks for opening this PR.

In the file pytorch_lightning/core/grads.py:

Line 27:121: E501 line too long (121 > 120 characters)

In the file pytorch_lightning/trainer/connectors/training_trick_connector.py:

Line 45:12: E713 test for membership should be 'not in'

In the file pytorch_lightning/trainer/supporters.py:

Line 232:33: E225 missing whitespace around operator

In the file tests/trainer/logging_tests/test_grad_norm_track.py:

Line 22:1: E302 expected 2 blank lines, found 1
Line 31:68: E226 missing whitespace around arithmetic operator
Line 65:121: E501 line too long (123 > 120 characters)
Line 73:121: E501 line too long (125 > 120 characters)
Line 75:1: E302 expected 2 blank lines, found 1
Line 90:121: E501 line too long (123 > 120 characters)
Line 98:121: E501 line too long (125 > 120 characters)
Line 100:1: E302 expected 2 blank lines, found 1

Do see the Hitchhiker's guide to code style

@tchaton  there won't be any more releases in 1.1.x so I have changed your destination branch to feat 1.2
pls, there is no need to close this PR, just rebase on the target branch, or maybe easier just cherry-pick the commit (@kaushikb11 will help you if needed)

@tchaton what about this fix?

@tchaton what about this fix?

Hey, things have been a bit hectic for me lately and I've dropped the ball on this one. I'll try to fix the conflicts and failing tests this weekend:)

@tchaton I think this is ready for review now. I looked into the failing tpu tests but it is not super obvious to me what's wrong.


Fix shared context between batched executions

We have recently made some improvement around context object referential stability.
But this improvements also introduced a subtle bug when the operation batching is enabled. The fact that the context is referentially stable now turned it into a shared context between all parallel executions of batch operations.
This is a bug since most plugins using the context do not expect multiple operations to be run with the same mutable context object.
The simplest solution is to actually make a new context for each execution when we have batched operations

I think this already does that;
https://github.com/dotansimha/graphql-yoga/blob/71db754876612bb9a1df496f478eaf1b94f342cf/packages/graphql-yoga/src/server.ts#L462


REPL and web don't start when couchbase isn't running but mount is present

If couchbase is stopped (by stopping the docker image), repl/run and web/run fail to start. Specifically each prints
Error: java.net.ConnectException: Connection refused: localhost/<IP_ADDRESS>:8091

and then hangs, failing to start the REPL or the server. I then must Ctrl-C to exit.
My couchbase docker image is
7796fa135d71        couchbase/server:enterprise-4.5.1   "/entrypoint.sh co..."   4 weeks ago         Up About an hour    <IP_ADDRESS>:8091-8094->8091-8094/tcp, 11207/tcp, 11211/tcp, <IP_ADDRESS>:11210->11210/tcp, 18091-18093/tcp      quasar_couchbase

And my couchbase mounts are
/cb/                                                                                | couchbase   | couchbase://localhost/beer-sample?password=&docTypeKey=type&socketConnectTimeoutSeconds=15
/cb/Untitled Workspace 2.slam/.tmp/outc0d2077e-55f1-4177-ac39-2cf8117e84b2            | view        | sql2:///?q=%28select%20%22Hello%2C%20World%21%22%29

I verified that stopping the marklogic-xml or mongo 3.0 database does not hit the same bug; the REPL still starts up. I have multiple views in marklogic-xml, so this confirms that it's not views alone that are causing the behavior.

I tested this on v24.0.16.


zcu104: Add counter test

Requires https://github.com/YosysHQ/nextpnr/pull/760
Currently this is confirmed working on hardware, although I've had to disable global clocks to get it to route. I'd suggest getting this merged first and then I'll look at the global clock situation (I think it requires finer grain control over which route-throughs are disabled than we have at the moment.)

@acomodi CI is green, can you take a look (I don't seem to have the permission to request a review on GH)

Done!


Addition of Differential Expression package (DESeq2)

Addition of Algorithm:
My name is Matthew Marino. I am a CFDE GlyGEN summer intern working under Jeet Vora and Rene Ranzinger. I am currently trying to create multiomics workflows starting with transcriptomics and proteomics data.
I am hoping to be able to quantify differentially expressed (DE) genes from a counts/metadata matrix. Get a list of DE genes with their corresponding log2FC and q values in ranked order by significance. From here, I am then trying to do a similar method for LC-MS/MS proteomics and glycoproteomics datasets to assess the overlap/correspondence as well as draw meaningful biological conclusions from the datasets.
In order to analyze differentially expressed genes from untreated and treated samples within a RNA Seq counts matrix, DESeq2 does the following, Briefly: DOI: 10.1186/s13059-014-0550-8
1.) Data input: with a counts matrix and metadata describing the sample identifiers in each column (this appears to be similar to the add AnnData option)
2.) Combining both into a single data object (again similar to the AnnData option)
3.) Filtering low reads based on rowsums.
4.) Size factor calculation: median ratio of each gene's count to the to the geometric mean of that gene's count across all samples.
5.) Dispersion and Shrinkage Estimation: Models variance by; calculating gene wise dispersion estimates and fitting them to a trend line to provide a mean-dispersion relationship. Shrinkage of dispersion estimates is done by fitting to the trend line to improve accuracy of the dispersion estimates.
6.) Fitting of a generalized linear model (GLM) with a negative binomial distribution specific to the metadata experimental conditions.
7.) Hypothesis testing: Wald test: are log2FC different from zero? Provides P values. Multiple testing correction: Benjamin-Hochberg method to provide q (p adj.) values. (controls the false discovery rate, statistical significance of differentially expressed genes).
8.) Results table
A quick note regarding the output: I am hoping that it can return a table which ranks the differentially expressed genes by their q value and still contains the gene name and log2FC of each. This will allow the user to see whether they are differentially expressed in what direction and to what statistical significance.
This package is widely used by the community and is considered one of the most accurate ways to depict variance among treated vs untreated samples in RNA Seq data.
Citations:
DOI: 10.1093/bib/bbt086
DOI: 10.1186/1471-2105-14-91

Hi @reductiveminded Next Tuesday at 1 PM ET we have a workshop about the Playbook platform. You can find information about it here: https://playbook-workflow-builder.cloud/events/2024-06-25


kor: 0.5.4 -> 0.5.5

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/yonahd/kor/releases.
meta.description for kor is: Golang Tool to discover unused Kubernetes Resources
meta.homepage for kor is: https://github.com/yonahd/kor
meta.changelog for kor is: https://github.com/yonahd/kor/releases/tag/v0.5.5
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.5.5 in filename of file in /nix/store/gvr0rvk36qs7xw5lg2mfdw67b9lx4x8k-kor-0.5.5

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

kor

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/gvr0rvk36qs7xw5lg2mfdw67b9lx4x8k-kor-0.5.5 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A kor https://github.com/r-ryantm/nixpkgs/archive/94e3d7f05d95d666ed59aade4cf16823c7786e12.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/94e3d7f05d95d666ed59aade4cf16823c7786e12#kor

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/gvr0rvk36qs7xw5lg2mfdw67b9lx4x8k-kor-0.5.5
ls -la /nix/store/gvr0rvk36qs7xw5lg2mfdw67b9lx4x8k-kor-0.5.5/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

kor

Maintainer pings
cc @ivankovnatsky for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

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

Result of nixpkgs-review pr 336252 run on aarch64-darwin 1

1 package built:

kor


Update timeDimension after creation

I have a L.TimeDimension.Layer.GeoJson with an associated L.GeoJSON.
It uses the same timeDimension as the according L.TimeDimension.Player and L.Control.TimeDimension.
Now the geo data of the L.GeoJSON change (e.g. a new geo feature is added to the geo json or the geo data of an existing geo feature change).
My question: How can I update the according TimeDimension layer (and the player and control) without needing to recreate them?
I looked at https://github.com/socib/Leaflet.TimeDimension#ltimedimensionlayergeojson and hoped to find a function such as setGeoJson(geoJson) where geoJson is a data json containing the geo features. Is there a similar function anywhere or a recommended way for updating?

I found the following workaround:
geoLayer.clearLayers()
geoLayer.addData(geoJSON)
timeDimensionLayerGeoJSON._setAvailableTimes()

Is there any better solution for the described functionality?
If not I would suggest to add a function setGeoJson(geoJSON) to L.TimeDimension.Layer.GeoJson which does the above so that we don't have to call the private function _setAvailableTimes from outside.

hi @jekuno,
there is also a public method map.timeDimension.setAvailableTimes()

Hi @jekuno ,
I've followed this comment to detect when addData is called on the base GeoJSON layer.
So now, timedimension will listen on layeradd of the GeoJSON base layer, ad it will update the available times. I should probably add also a listener on layerremove.
We could think if it necessary to implement addDatamethod in L.TimeDimension.Layer.GeoJson (internally, this method should call addData of the base layer)

I think that every kind of Layer should have a function to update the data or set new available times. Right now I have a portus layer and I need to update its available times but I can't figure it out how to do that.


help setting it up... 500/404 errors

Hi, i'm using nginx - i first had the root pointed to /public folder and got 500 error while accessing via postman or compose test.
I changed it to root of application and now i'm gettign 404. When i visit the page https://api.mydomain.com - i get an error on page mod_rewrite need to be enabled... I do have equavelent mod_rewrite block in ngixn i believe like below
try_files $uri $uri/ @rewrite;

location @rewrite {
    rewrite ^/(.*)$ /index.php?_url=/$1;
}

on the environment config file i've not made any change except DB values, i've left the default values ( how do i generate keys?)    'authentication' => [
'secret' => 'your secret key to SIGN token', // This will sign the token. (still insecure)
'encryption_key' => 'Your ultra secret key to ENCRYPT the token', // Secure token with an ultra password
'expiration_time' => 86400 * 7, // One week till token expires
thanks for any help!

Hey! Thanks for sharing this. Did you install the phalconPHP extension in nginx? First make sure a valid phalcon installation is there, just in case. Then you can move the project to that folder and start playing around. If you did then you will need to check nginx configuration, maybe something is missing there. Thanks again for providing context and sharing.


Release 20.10.0

Signed-off-by: Lucas Saldanha<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Accounting for data objects that only iterate

In the old MLLearn terminology, we have data containers (observations can be randomly accessed) and mere iterators. Dataloaders (as currently implemented in DataUtils.jl) for example, are only iterators and some models will want to support them and regular data containers. In the latter case, a higher level interface will want to control observation resampling (CV) but in the former case, we're happy to forgo that functionality. How does the current "data interface" adapt to this complication? That is, how does the implementation articulate the fact that some allowed data objects cannot be subsampled? (At present the implicit assumption is that all data objects are data containers.)
(Originally there had been some discussion that Dataloaders would support (slow) random access, but that idea appears to have been abandoned in the DataLoaders -> MLUtils refactoring.  Perhaps @lorenzoh would care to comment.)
One idea is for a model accepting an iterator Xiter to set getobs(model, I, Xiter) = nothing, and to define getobs(model, I, X) as normal for a data container X. Is it safe to say we will generally be able to distinguish the iterable from the containers based on type alone, and avoid possible type instabilities here?
Any other ideas?

On dev a learner can now specify the data access their data supports (more precisely, what the output of obs(learner, data) must support). The options are described here.


JSON to XML - Out of spec XML generation

Hi,
When converting JSON to XML
The following JSON key-pair
"first_name": "　\bHazel",
Gets escaped and converted into:
<first_name>　Hazel</first_name>
However, this is only valid on XML 1.1. As there is no VERSION populated on the DocumentBuilder, invalid XML is rendered:
<?xml version="1.0" encoding="UTF-8">
Thanks

Could you provide a sample input payload and the configuration parameters for the converter, so that I can try to reproduce the issue?

Closing issue as there is no example provided

I just wanted to make sure this doesn't go unanswered. The example provided is clear and should be sufficient for tracing the issue, should there be a genuine interest in addressing it.


[7.0.1] ClassCastException at pixelmon.comm.packetHandlers.ExecuteExternalMove$Handler on EntityItemFrame

https://gist.github.com/Vohras2/7bfd9b0dbb6f3b483793508d3bc22e04

This needs to be forwarded to Pixelmon, probably not fixed as of 7.0.3.

https://www.pixelmonmod.com/tracker.php?p=2&t=13440

@Vohras testing


domains.create returns error: "Missing parameter 'name'" even though name is provided.

Followed examples for creating a new domain with this library and get:
Error creating Mailgun domain. [Error: Bad Request] {
      status: 400,
      details: `{\n  "message": "Missing parameter 'name'"\n}`
    }

I am able to get domains using this package, so I know it's not an authentication issue. The create fails no matter what I have tried. I have verified that I am indeed passing the name/domain in as expected and have tried just hard-coding it. No luck. I'm guessing it's not setting up the form data properly when posting to the endpoint. I have tried setting up the client with form-data 3.x and 4.x. Same failure with either.
Code is pretty simple:
exports.createDomainAndCredentials = async (domain) => {
  const mgClient = await exports._internals.getMailgunClient()
  const response = await mgClient.domains.create({
    name: domain,
    smtp_login: `smtpuser@${domain}`,
    smtp_password: 'blahblahblah',
  })
  return response
}

I had to use the "old" library, which has a number of vulnerabilities, but it works. Would much rather use this library.

This issue was fixed in the new version 3.5.5 of the package.


Getting an error of XMLHttpRequest while running jest test case

ReferenceError: XMLHttpRequest is not defined

i have also searched on web to mock this package for jest test cases but didn't find any proper steps or doc about it
so if anyone have info about mocking then please guide me for same.

Have the same issue

have you found any solution for it?

Any updates on this issue?

Facing the same problem... any solution ??

Guys any updates on this? I just mocked GooglePlacesAutocomplete component but it's not what I wanted to do

Try using xhr-mock. Look at the example they provide - you'll have to do setup(), teardown(), and a mock of the http method you want to mock.


mercantile tiles method is not idempotent

Hi,
I run tiles method once and get tiles A, ...; then I get bbox coordinates for A, let it be A_bbox.
Then if I run tiles for A_bbox I expect mercantile to return only tile A, but it return A and some other tiles.
Code for reproduction:
$ python -c "import mercantile as m; print [m.feature(x)['bbox'] for x in list(m.tiles(-122.080078125, 37.5097258429375, -122.0361328125, 37.54457732085582, zooms=13))]"

[[-122.080078125, 37.5097258429375, -122.0361328125, 37.54457732085582], [-122.080078125, 37.474858084971025, -122.0361328125, 37.5097258429375], [-122.0361328125, 37.5097258429375, -121.9921875, 37.54457732085582], [-122.0361328125, 37.474858084971025, -121.9921875, 37.5097258429375]]

@walkingpendulum this looks very related to #83, yes? I'm not sure whether using an epsilon value is always right here. I'd love your feedback on that if you will share it.

@sgillies yes it is duplicate for #84, thank you.
I think that epsilon approach is not address the real issue but sweep the issue under the carpet. The real problem is that for fixed zoom level some points are belongs to multiple tiles.
Personally, I would prefer to throw north side and east side points away from a tile box, so to speak.
More concretely, here lets calculate
ll_of_ur = tile(tile(e, n, z).west, tile(e, n, z).south, z)

and do not increase upper bound for i/j ranges by 1 in L329-330 if ll_of_ur.west == ll.east/ll_of_ur.south == ll.north respectively. Of course, floats should be compared with some epsilon precision but it is not the same epsilon as in discussion of #84.

@walkingpendulum if our computers could do floating point math perfectly, you'd get 9 tiles back if you asked for all the tiles that intersected or touched the bounding box of one tile, yes? Because points on the boundary of tile A are equally on the boundary of all the surrounding tiles. Getting a single tile back is also right in some sense. Getting 2-8 back is wrong.
Until we sort this out, the workaround is to avoid going back and forth between tile and spatial coordinates.

@sgilles, now I see that current tiles method behaves in consistent way with what you expect it will do.
My initial problem that leads me to this issue was to envelope some area in box consisting of tms/google tiles for fixed zoom level. And then I need to check if some area already was builded in aforementioned way.
At first I think all I need is to call tile method for area box nodes and check if resulted tiles are belongs to my area, but the very first test case with single tile bounding box proved that I was wrong.

If you interpret intersects according to the OpenGIS Simple Features Specification, then tiles(*bounds(tile), zooms=tile.z) returning 9 tiles is correct.  If you interpret it more akin to overlaps, then it should return 1 tile.  Since shapely and most geometrical/geographical libraries use SFS, I'd suggest returning 9 tiles, and the docs should be updated accordingly.
Alternatively, you could change the docs to say "Get the tiles overlapping a geographic bounding box".

@jagill after more consideration, "overlaps" is what I'm looking for. I'm making a tiny adjustment to the code and updating the docs for 1.1.2.


How to get the full pretrained checkpoint?

Hi, thanks for your interesting work. However, I'm wondering if there are any fully pretrained checkpoints available? The only checkpoint I found is from the demo section where the model has small parameters. I need this checkpoint to conduct some downstream experiments. I would appreciate your prompt response!

Hi,
Sorry for the late reply, but thanks for reaching out.
I don't know if this is still useful but the fully pretrained checkpoint can be downloaded here: https://zenodo.org/records/13850557


[Copy] Add Tutorials and new examples

This version does not have extra files. After a week in Austria (fully vaccinated and in quarantine now of course) I had some time to try a new visualization.
Mandelbrot- and Julia sets
This is an interactive way to see various Julia sets in action. In order to make this work, I had to rebuild the portrait painters without a cache option (each pixel would make a new portrait, that would be too much data to cache) and a new colorscheme.
It is a bit of a bastardization of the original goal of the package, but it also shows how powerful the package is.

Tutorials
After spending a lot of time figuring out how the package works (in order to make the Julia-set visualization) I spent some time explaining some of the examples. I find it much easier to learn when I have code in front of me, so hopefully this could help others trying to learn as well. An example of the comments:
# The goal of this visualization is to see how `f(z) = eᶻ` can be
# approximated through `g(z) = (1 + z/n)ⁿ` as `n → ∞`. We will
# use a slider to change the value of `n` and also place a 'test set'
# in the domain to see how it gets transformed.
using Cairo
using ComplexVisual
@ComplexVisual.import_huge

const CVG = try using ComplexVisualGtk; ComplexVisualGtk; catch nothing; end

const fontface = cv_fontface("DejaVu Sans")

# We start by creating the function to draw the axes on the left and right
function setup_axis(setup::CV_SceneSetupChain)
    label_style = cv_black → fontface → cv_fontsize(20)
    # these are the rules used to label the x-axis ticks
                                # main ticks on left, get labeled
    ticks1, ticks1h, ticks2 = "%.0f" ⇒ -6:0,
                                # secondary ticks on left, don't get labeled
                                "" ⇒ -5.5:0.5,
                                # ticks on right, get labeled
                                "%.0f" ⇒ -3:3
    # rules used to label the y-axis ticks
    # uses a Tuple to label specific irrational points
    ticks3 = ("-π" ⇒ -pi, "-π/2" ⇒ -pi/2, "0" ⇒ 0.0, "π/2" ⇒ pi/2, "π" ⇒ pi,)

    # main ticks are drawn slightly longer than secondary ticks on left
    app_l = CV_TickLabelAppearance(; label_style, tick_length=10)
    app_s = CV_TickLabelAppearance(; label_style, tick_length=6)

    # use the standard axis builder from `lrdomains.jl`
    return cv_setup_lr_axis(setup,
        # x-axis labels                     # y-axis labels
        (app_l ↦ ticks1, app_s ↦ ticks1h), (app_l ↦ ticks3,),
        (app_l ↦ ticks2,),                  (app_l ↦ ticks3,)
    )
end

All the explained examples (tutorials) are also shown in the readme in the examples folder.

The commit b0c8ed09c8eb905d4c91011adf98411dac937e57 is in the history of this PR. Hence all data in this commit must be included in the repo (if I merge this PR). Hence all the png-files will enter the repo which is bad.
Either you rebase your branch and update this PR; with something like
git rebase -i 6bee34c

Plan:

    edit b0c8ed0 tutorials and new example
    pick f3f89c2 tutorials and new example
    drop 954defe remove extra files

git rm Exp*.png
git commit --amend
git rebase --continue

to update your local branch with the "new"/rewritten history. Then you have to force-pull it and update the PR.
Or we use #5 where I did this and created "my" pull-request (keeping you as author, but now all the commits are "co-authored", because now I'm the committer of these commits).

Ah, I see. I'm sorry, I thought that adding a new commit would solve it, but now I see. I'm happy to use #5, and I will learn about git rebase tonight. Thank you for your help!

merged by PR #5


Guide broken for Static Sites

When using the static site URL, per the guide, I get the following error:

I'm assuming that the guide is incorrect or missing some information?

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

ID: 8772b2a5-6b28-9d91-5fd4-e125d85126c6
Version Independent ID: 0a58807a-e274-7833-7845-bed7ebaaf1bc
Content: Integrate a static website with Azure CDN - Azure Storage
Content Source: articles/storage/blobs/static-website-content-delivery-network.md
Service: storage
Sub-service: blobs
GitHub Login: @normesta
Microsoft Alias: normesta

Misread the docs - set up the wrong origin when creating the endpoint; this should also be the url for the site and not for the overall blob!


ANN001 Missing type annotation for function argument if ANN101 is disabled

Describe the bug
When using type comments and having ANN101disabled, I received a ANN001 Missing type annotation for function argument for method containing a self argument.
In contrast, using type hints no error is raised.
Is this intended?
To Reproduce
.flake8:
[flake8]
max-line-length = 88
ignore = E501, E203, W503, ANN101, ANN102

A.py:
class A:
    def __init__(self):  # type: () -> None
        self._var = 1

    @property
    def var(self):  # type: () -> int
        return self._var

    def sum(self, a):  # type: (int) -> int
        return self.var + a

$ flake8 A.py
A.py:9:19: ANN001 Missing type annotation for function argument 'a'

A2.py:
class A:
    def __init__(self) -> None:
        self._var = 1

    @property
    def var(self) -> int:
        return self._var

    def sum(self, a: int) -> int:
        return self.var + a

$ flake8 A2.py

Version Information
Please provide the full output of flake8 --version
$ flake8 --version
3.8.3 (flake8-annotations: 2.3.0, mccabe: 0.6.1, pycodestyle: 2.6.0, pyflakes: 2.2.0) CPython 3.8.5 on Linux

As well as your Python version:
$ python -V
Python 3.8.5

Greetings, thanks for the report.
Yes, this is the expected behavior. Setting the ANN101 flag does not inject an annotation for self, but rather just ignores the code when yielding errors to flake8. For type comments, this means that def sum(self, a):  # type: (int) -> int is interpreted as hinting self as int, rather than a, resulting in the ANN001 error being yielded.
This type of scenario is what we had in mind for the partial type comment caveat, which is what I was going to recommend, but this approach seems to clash with assumptions made by at least one linter (Pylance):
Parameter annotation count mismatch: expected 1 but received 2

and also makes mypy error:
error: Ellipses cannot accompany other argument types in function type signature

So I don't think I'll recommend this, and the logic supporting this caveat should probably be revisited.
To the original problem, we'll have to do a bit of research into the most appropriate approach. I think prepending an annotation for self and cls for function type comments makes sense & should be painless into incorporate.

This should be fixed on the dev branch now if you'd like to a look; the provided examples now appear to be behaving as expected:
$ flake8 --ignore=E501,E203,W503,ANN101,ANN102 ./A.py
$ flake8 --ignore=E501,E203,W503,ANN101,ANN102 ./A2.py

I'd like to get #94 fixed before making a new release but it may not be until early next week.

Well done :+1:  Thanks a lot :smiley:


Fix underflow in highestPowOf2Divisor()

Prevent highestPowOf2Divisor() from producing an underflow when the argument is INT_MIN.

Please let me know if this is good now to merge.


Price return from backend have rounding issue

{"price": {"__typename": "PricePayload", "errors": [], "price": {"__typename": "Price", "base":<PHONE_NUMBER>0, "currencyUnit": "USDCENT", "formattedAmount": "0.016827500000000002", "offset": 12}}}
from:
  subscription ($input: PriceInput!) {
    price(input: $input) {
      price {
        base
        offset
        currencyUnit
        formattedAmount
      }
      errors {
        message
      }
    }
  }

in the mobile app

issue is 0.016827500000000002

closed because formattedAmount is deprecated


Update node modules

This PR updates the package-lock.json file to version 2 as this was highlighted during the "Install npm dependencies" stage of a  CI run. This should speed up CI runs when the cache is not available, for example when running using the workflow_dispatch trigger, as the new lock file will not need to be generate before the installation begins.
Typescript was also added to node_modules as it a requirement for a requirement for eslint-plugin-jest. As this is a dev dependency, I'm not sure if it should be included in the repo. Please let me know if you would like this PR to be updated to remove it (and the other dev dependencies).

Codecov failing for a similar reason to #64 and #65.

Hi @CalumY, thanks for the contribution. You're right, the update to lockfile v2 is overdue however, I'll push it myself for security reasons as I cannot review that many changes.
Regarding typescript, I want to avoid including it in the dependencies for as long as possible because we don't need it in the current toolchain and I don't want the extra burden of updating ts versions.


add devise

Code Reviewer! Welcome! 🔥🤠
Thy shall raise this PR for review:

[x] Removed current_user method in ApplicationController.
[x] Installed and setup devise.

[x] Can register a new user.
[x] User logs in with a combination of email and password.
[x] Hashed password should be stored in the database.
[x] Ask for confirmation of email.
[x] Can reset password.

[x] Modified the views in devise for registration and login to match the wireframes from the Sneak Peek and your styling.

@KDlamini Hello brother, I tried to reach my coding partners but no one is available they have started weekend. why can't you do me a favour to review my project. thank you


[MM-28216] Hookups to back-end for Billing History section

Summary
This contains all the hookups to Redux to pull down billing history. It also contains a virtual paging implementation that can be converted once the server supports actual paging.
UX has already been reviewed by Matt.
Will need QA once hooked up to CWS.
Ticket Link
https://mattermost.atlassian.net/browse/MM-28216

/cherry-pick cloud-ga

Cherry pick is scheduled.


Hardware accelerated decoding

Is it possible to enable hardware acceletation in FFmpegInterop? I see in the config script that d3d11 and dxva are explicitly disabled. Why is that?
Having hardware acceleration enabled would greatly increase the usability of this lib. It would allow decoding of HEVC, H264, VC1, VP9 (depending on CPU type) even on medicore devices, and also for other formats such as MPEG2 it would drastically reduce power consumption and noise level during decoding.
I know that at least for H264, it is possible to pass through (force video decode = false), which enables HW acceleration down the decoder chain if possible. But it does not work with Hi10P profile. And HEVC, MPEG2, VC1, VP9 etc are all not supported even if the IGP/GPU would support HW acceleration. It would be awesome if we could use ffmpeg internal HW acceleration instead of having to rely on passthroug solutions (which anyways is only possible for codecs officially supported by WinRT EncodingParameter APIs).

Last time I checked these, it had some issues with store certification. But it may not be the case anymore.

Windows Phone is officially dead now, no dev would do any new development for that platform anymore. So unfortunately, this should not be a concern. I really loved WP/W10M, but Nadella hated it and he destroyed it like a maniac. I really don't know what that guy was thinking... Sad story.
API compatibility might be an issue.

Oh man, this is pretty disappointing: It looks like hardware acceleration is not really implemented in the ffmpeg library. There is some groundwork done, but the important decoder methods such as init, uninit, create buffer, get results, etc are all not available in the lib. Even if you enable hardware acceleration in the build (which did not introduce API warnings, by the way), the default lib implementation will skip all hardware accelerated decoders. And if you force it to use one, it won't work because all the methods are not there.
The real implementations for hardware decoders such as dxva2 are only available in the ffmpeg.exe project. And they are written in a way so they can only work in the context of the ffmpeg.exe application, because they heavily use all its internal stuff. It would probably require heavy rework to make these work in FFmpegInterop.
That's pretty poor design on ffmpeg side if you ask me. Why are hardware decoders not part of the lib, just like software decoders? Oh man...

That is somewhat expected, because not all platforms running FFMPEG are capable of hardware decoding. My guess is that they didn't bother with integrating it into the library because the library is already pretty huge as it stands.

Since every hardware decoder must be explicitly enabled in the config, Linux users would not have any downsides if a "dxva-enabled" build contains more than just a few strings and basic definitions...

@lukasf and @mcosmin222
I am using FFmpeg 2.3 and FFmpegInteropX to decode the RTP stream on HoloLens-2. It works fine for the H264 video stream, but when I enable, H265, FFmpeg crashes.
checking, if H265 hardware acceleration is supported configuration on HoloLens-2?


The pre-commit hook fails silently when a pyproject.toml file exists and toml isn't installed

#534 enabled usage of pydocstyle with pyproject.toml for configuration. In that PR, it was discussed that toml shouldn't be a hard dependency for using pydocstyle (which I agree with), and that it should simply throw a warning if a pyproject.toml file is detected without the toml package present to read it. However, this is problematic when using pydocstyle as a pre-commit hook because pre-commit will silently consume stdout unless the hook returns a nonzero exit code.
I see a few potential solutions here, which I've placed in order of preference:

Use the additional_dependencies feature of pre-commit to always require toml when installing the pydocstyle pre-commit hook. I see the argument for not wanting to error without toml in a general setting, but in the context of pre-commit where the dependencies can be tightly managed I think it's OK to have this dependency encoded.
Change the warning to an error, but also add a grep (or equivalent) of a pyproject.toml file (if one exists) to see whether the string [tool.pydocstyle] is present in the file as a precondition of erroring. This is a bit more engineering effort, but if avoiding requiring toml is important enough even in a pre-commit hook then this would be a way to do a more cursory check of the file without parsing it.
Set verbose: True in the pre-commit hook definition. This choice has the downside of always making pydocstyle noisier, but it at least ensures that the warning will be visible.
The status quo. This solution puts the onus on the user to realize that pydocstyle fails silently in this case. I personally don't think this is a viable solution, but I listed it in case the project maintainers feel otherwise.

I am happy to make a PR if we could come to a consensus on the preferred solution.

For completeness, here's a MWE:
# pyproject.toml
[tool.pydocstyle]
select = D30

# .pre-commit-config.yaml
repos:
  - repo: https://github.com/PyCQA/pydocstyle
    rev: 6.1.1
    hooks:
      - id: pydocstyle

# test.py
"""Docstring."""

def myfunc():
    """docstring."""
    pass

:+1: Had the same issue, thanks for opening this issue because it helped!

With pydocstyle 6.3.0 package tomli also required (version 6.2.0 works as expected), otherwise pyproject.toml configuration will be ignored.


run the benchmark nightly on Hetzner runners

We currently run small configurations of the test_pageserver_max_throughput_getpage_at_latest_lsn benchmark on every merge from main, as part of the benchmarks job in build_and_test.yml.
We can't run large configurations because it consumes too much CI time  after each merge into main (https://github.com/neondatabase/neon/pull/6477)
More context: https://neondb.slack.com/archives/C06750CD9U5/p1706200941278869
DoD
The benchmark doesn't run on each merge from main, but only once per night.
It runs on an otherwise idle Hetzner runner.
Results are recorded the same way as the other nightly benchmarks from benchmarking.yml so we can track regressions in Grafana.
Results carry as annotation the Hetzner runner type, so we can distinguish results from Hetzner runners from the results from EC2 runners to which we'll move in #6297
Future Work
This is a preliminary to https://github.com/neondatabase/neon/issues/6297 where we want to run the benchmark on the more practically relevant and more predictable EC2  instances.

Obsolete, we now run pagebench nightly on ec2 https://github.com/neondatabase/neon/issues/6297


Mycelium: Testsuite run and coverage on testlodge

Create a test suite on teslodge to cover all mycelium testing scenarios:
should inclide:

test section for Grid client
test section for dashboard

testsuite: mycelium
Related story:

https://github.com/threefoldtech/home/issues/1480

WIP :

checking mycelium stories and docs
adding testcases to the test suite

test cases to be added till now :

[ ] 1- read mycelium docs:https://github.com/threefoldtech/mycelium/tree/master
[ ] 2-make sure that all mycelium has the same ip range which starts with 200 and end with /7 and formatted in ipv6.
[ ] 3-check if mycelium nodes are connected .
[ ] 4-if one node or more are connected traceback the data sent to see it it routed in the shortest path between nodes
[ ] 5-make sure it gets route according to traffic.
[ ] 6-verify if uses multiple ways to communicate
[ ] 7-verify it supports Scalability
[ ] 8-verify you can control the vms without tun tools
[ ] 9-verify that all the nodes uses port :9651 (tcp or quic)
[ ] 10- that you can check your own info ( public key and address) and the x22519 key pair which is saved in the directory as priv_key.bin(	•	ability to get pub key from source ip address)
[ ] 11-that node can act as http api listens to port :8989(we can test it by post man or smith)(reliable message delivery)
[ ] 12-inspecting node keys(my helium inspect) should show public key and address
[ ] 13-download the binary which works for your Mac or linux
[ ] 14-check if the code builds with rust and cargo and ready for development
[ ] 15-check the binary docs
[ ] 16-verify that mycelium can not be deployed without Yggdrasil ip (for vm and k8s and all the solutions)
[ ] 17-check if the ip is formatted right and different from the Yggdrasil even thought it supports Yggdrasil but it should be formatted as mentioned in test case 1
[ ] 18-check the version of the current binary with the --version flag
[ ] 19-check the  -k/--key-file flag i allowing you to specify it for (inspect)sub commands.
[ ] 20-Log the actual endpoint when we can't connect to it
[ ] 21-check if the The overlay network uses some of the core principles of the Babel routing protocol
[ ] 22-deploy using the grid client with mycelium scripts for VMS and k8s
[ ] 23- after deploying solutions supporting mycelium ssh on the to check if the file service is found at /usr/bin/mycelium
[ ] 24-check if deploying through dashboard will show mycelium info in the contracts details in the json file
[ ] 25-for the grid client it should after deploying shows the hex seed
[ ] 26-try to see if the hex seed of 3 nodes for the deployment are shown after deploying
[ ] 27- 	•	minimal website (tech oriented) + mdbook
[ ] 28-the mycelium network setup scripts(test scripts)
[ ] 29-Message subsystem docs
[ ] 30-	allow each VM to be connected to mycelium, needs to be the default one in networking (connect to at least 3 public mycelium nodes)

will make sure that the test suite covers all of the repo and tested well

WIP :
designed 3 sections in the test suites :

Installation
deploying using the dashboard
deploying using grid client
communication between nodes

opened issues :

https://github.com/threefoldtech/tfgrid-sdk-ts/issues/2180
https://github.com/threefoldtech/tfgrid-sdk-ts/issues/2174
#122 for the case no. 23
#123

still investigating more and running through the repo will keep this story updated.


fixes #353

Closes #theRelatedIssueNumber

[] Running yarn lint does not trigger any linter errors
[] The test of the method you have fixed is passing
[] You have written a new skeleton method for someone else to work on!
[] You have written tests to accompany your skeleton method

oh OK so with these pull requests I should be adding 1 more template and undo the changes in template?

@BlakeGuilloud  I have resolved the conflicts and added an issue as well. Could you please review my pull request. Thanks. :)

Hey @jsjain007 ! Looks like there are still some conflicting files in the isArray method.

sorry for the mess, can I create a new pull request ?

Sure.

could you please review pull request #377 and thanks for the patience.

Ok @jsjain007 - I have merged in #377 - Could you either clean up this branch or create a new PR with your other methods? thanks!

sure will create new pull requests for other methods as well.

Cool- as you do that, would you mind closing out this PR when it is no longer useful to you? Thanks!

@jsjain007 still need this? I'm going to close it.


Sign/Encrypt fails with openssl (cms) if certfile contains duplicate entry

I am using openssl to encrypt file and I am getting malloc error as shown below.
openssl version
OpenSSL 1.0.2j-fips  26 Sep 2016

openssl command
openssl cms -sign -in infile -signer file.crt.pem -inkey file.key.pem -CAfile CAfile -out outfile -keyopt rsa_padding_mode:pss -certfile by_hash/81908841

Errors
1435735688:error:2E0A40AF:CMS routines:CMS_add0_cert:certificate already present:cms_lib.c:462:
1435735688:error:2E094041:CMS routines:CMS_sign:malloc failure:cms_smime.c:461:

Please note that in the command last option (-certfile by_hash/81908841) certfile has duplicate entry of certificate with same fingerprint and because of that signing is failing with CMS but somehow it works properly with SMIME.
Thanks in advance.

(@chirag7888  I reposted a part of comment https://github.com/openssl/openssl/issues/7418#issuecomment-431743310 here, because it was probably intended for this issue)
Reproducible steps:

Get all correct/proper files mentioned in the subject/body
Run the command mentioned in body (Which should be passed/should be signed properly)
Edit certfile (last option file), duplicate the certificate and put it in same file.
Run step #2, which should throw errors mentioned in body, (Note: With S/Mime this is working, but with CMS its throwing error)

I'm not sure whether this is really an OpenSSL error or just a usage error.

@mspncp What do you mean by usage error?
Is my command incorrect?

Ok, Thanks for your valuable time.

1.0.2 is unsupported version. Please open a new issue if you can reproduce the problem with 1.1.1 or 3.0 versions.


Make search function work for partial phone numbers

As a reminder to @colinxfleming we need to make the search work for partial phone numbers.

Will be working on this tonight, jumping off @KatSDC 's work the other night

After hacking on this for an hour and change I think the right path might be to change phones to be a string of all digits, and then do all the phone related formatting on the model level (similar to how we do LMP display as its own methods, and store it as a pair of ints).
This involves a few nasty steps:

Changing the validations in the patient model over
Mass updating all phone numbers in the prod db
Fixing seed data and rerunning in staging
Adding some methods to display phones with hyphens
Probably add a before_save hook to strip all non digits from phones
~ testin ~


Build with TravisCI

It would be nice to run a script for pulls that would pass / fail based on whether or not the file was well formed... and that it contained only the accepted colors.
Shouldn't be too hard to put something together with Node to enforce that.

The definitions are super reduced right now, and it kinda feels like more work to build tests for this than just plain paying attention. Should not be much work into it anymore as it's not so confusing anymore trying to match some half-assed vim screenshots.


Page Modal Search Doesn't Correctly Handle Results

Issue Summary
When using the search inside a page chooser modal, if you do not type your search query fast enough it will make multiple requests for each letter you type. These AJAX requests are sometimes completed in an order different from the order they requested. This leads to the final search results being incorrect.
Steps to Reproduce

Open any page chooser modal, such as the one for creating internal links.
Search for a page.

Here are two different videos showcasing the issue. https://imgur.com/a/m7Fu4Oj
Technical details

Python version: 3.5.4
Django version: 1.11.13
Wagtail version: 1.13.1
Browser version: Chrome 67.0.3396.79

Thanks for report!
What currently is happening: when typing slowly the search makes a single request per character. So when you have a 3 requests pending and the 2nd one is taking more time then the 3rd one (which already came back), it will return results from the 2nd request.
I was able to confirm this suspicion by quickly adding a conditional time.sleep to the first two characters in the corresponding search view, because it didn't occur directly in my local development environment (a.k.a. it works on my machine).
When initiating a new search request it would make sense to cancel the previous Ajax request, to prevent this from happening.

Looking into this with @Esperk, it seems that this is an issue with all chooser modals, not just the one for pages.

Fixed in #5137, will be released in Wagtail v2.5!


Customer is unable to login with microsoft authentication provide from vscode.dev due to Conditional Access Policies

Original: https://github.com/microsoft/vscode-internalbacklog/issues/4478
Context
From Azure ML extension team (Sergio)

A customer using the Azure ML remote connection in web reported that it is unable to login and that is stuck in an authentication loop, so after the customer enters its user and password the redirection to vscode.dev happens but eventually is taken back to the microsoft authentication prompt.
These are my findings on the initial triage:
The Azure ML web opener calls the microsoft authentication provider getSessions
Since there are not valid sessions found, the login process begins, and customer is taken to the microsoft login prompt
User enter the user password information and redirection starts
User gets 400 when the anything route calls the https://vscode.dev/codeExchangeProxyEndpoints/microsoft/{TENANT}/oauth2/v2.0/token API as part of the tryCompleteAuthExchage
The Azure ML web opener calls the getSessions again and the cycle repeats
Follow ups:
Why the 400 happens in the first place?
How can we get more information about the cause of the 400 when exchanging the code?
Can we make it available in telemetry? Can the webOpener get this information to log telemetry or display error information?
Next actions:
Azure ML extension to implement something to stop the loop on the web opener.

From VS Code team (Tyler)

The code for this is pretty simple:
the code for the token proxy route just returns the results of the call: https://github.com/microsoft/vscode-dev/blob/main/server/codeExchangeProxies.ts#L48-L53
the code that calls the endpoint console.error's the result of the call: https://github.com/microsoft/vscode-dev/blob/main/client/contrib/microsoftAuth.ts#L449-L484 and https://github.com/microsoft/vscode-dev/blob/main/client/contrib/microsoftAuth.ts#L164
So my guess is either:
Identity outage?
Maybe the thing causing the Bad Request doesn't ever make it to the codeExchangeProxy endpoint... @joaomoreno do you know of any reason this might happen?

From Azure ML extension team (Sergio)

This is the response we are getting for request https://vscode.dev/codeExchangeProxyEndpoints/microsoft/{TENANT}/oauth2/v2.0/token:
{"error":"invalid_grant","error_description":"AADSTS53003: Access has been blocked by Conditional Access policies. The access policy does not allow token issuance.\r\nTrace ID: 2f163c61-770b-4d3f-87de-df6430161700\r\nCorrelation ID: 3e5968cc-344d-49c1-b9ae-961ec2a34eab\r\nTimestamp: 2023-07-28 15:53:36Z","error_codes":[53003],"timestamp":"2023-07-28 15:53:36Z","trace_id":"2f163c61-770b-4d3f-87de-df6430161700","correlation_id":"3e5968cc-344d-49c1-b9ae-961ec2a34eab","error_uri":"https://login.microsoftonline.com/error?code=53003","suberror":"message_only"}
Conditinal Access policies is a known limitation in vscode.dev because of the way it acquires tokens using the codeExchangeProxyEndpoint route. This is done to work around CORS constraints.
According to VS code some users have reported using Edge as their browser got around the issue
This is a problem specific to vscode.dev and it should work fine in desktop because there are not CORS issues.
Next steps:

Ask customers to try Edge as their browser
Ask customers to disable the Conditional Access blocking the authorization
Measure how many customers are impacted and determine if this should be prioritized in web

Around authentication API error response handling - we reached out to Conditional Access team and here is a recommendation from them:
Nidhi, Tyler, our recommendation is:
Transition your authentication logic to use MSAL lib. This library should handle all edge cases for client errors and flows.
Handle MSAL errors properly and propagate them to the user so they could remediate if something happens.
for instance, if a user need to complete MFA, you should be able to redirect him to the auth endpoint to complete it. MSAL lib will assist your client to do that.
You can follow this guide:
Handle errors and exceptions in MSAL.NET - Microsoft Authentication Library for .NET | Microsoft Learn
@TylerLeonhardt  we are currently not using MSAL, correct? Can you confirm?

Looking at the another issue associated above - seems we are already planning to move to MSAL - that should also solve (to an extent) - the exception surfacing to client for us.

This is progressing. In theory, all the work in Microsoft/vscode is done.
Here's what's left:

vscode.dev -> adopt MSAL (currently blocked on https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/6269 I am working with the team to figure out a fix... hopefully it'll be resolved next week)
We need to add a couple of redirect URIs to VS Code's Client Id: (https://vscode.dev/hi and https://insiders.vscode.dev/hi)... this is taking longer than expected because the new process for managing first party apps is really really rough. There's also an AzDO outage at the moment that prevented me from getting as far as I wanted today.

Hopefully, this will all be addressed next week.

Ok so I've worked around the issue... now I'm on to another blocker. MSAL.js's popup flow doesn't work if the page has Cross-Origin-Opener-Policy set to same-origin... which we do for certain features to work (SharedArrayBuffers).
I've been working tirelessly on a workaround for this... the best I could come up with so far is owning my own popup then using MSAL.js's Redirect flow inside of it... but I've hit many many paper cuts along the way that have made it challenging.
I'm hoping to get some assistance from MSAL folks soon to work through these challenges.

Alright so we've got a workaround for the same-origin stuff... here's the issue on MSAL.js that talks about it.
https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/6829
but the journey is not over... now I am dealing with this adoption blocker: https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/6830

That said, I did push a small fix to our existing code that may solve this issue... it's in insiders.vscode.dev

Although the issue I linked is closed, I am following up with MSAL internally to come up with a plan. Sadly, don't expect much here soon as I need a solution provided by MSAL.

Summarizing the offline meeting about this, we discussed 2 possible solutions for introducing MSAL.js into the Azure ML scenario to allow auth to succeed for customers with Conditional Access Policies:
Solution 1: Enable MSAL.js for all users for the Azure ML route or with a special query parameter.
Solution 2: MSAL.js as a fallback for users for whom the current hybrid vscode.dev auth flow fails.
We understand that our scenario needs to prepare for the eventuality that Solution 1 will likely be the only auth flow available (particularly the experience of interactive re-auth when tokens expire). Our focus here is rolling out the MSAL.js auth flow with minimal disruption to current users and to help with testing this codepath for it to be applied more broadly.
Ask:
Our preference would be Solution 2, as it would help accelerate the transition to MSAL.js since this would test the code with any customer running into the Conditional Access issue. Solution 1 would require us to enable MSAL.js for a very small initial set of users and we would roll this out slower since it would impact current users who are not experiencing any issues.
Questions for @TylerLeonhardt and @sbatten:

Would Solution 2 be an acceptable step towards the eventual solution of MSAL.js as the only auth flow?
Is there a difference in timeline between the two possible solutions?

Thank you again for all the investigation and time dedicated to moving this forward!

@tbombach and team, and I, have talked offline and route-specific MSAL enablement is how we wanna proceed for now. That is now live (in insiders.vscode.dev and next week vscode.dev) and able to for you to take advantage of in your route.
Please give it a try and let me know how it goes.

@TylerLeonhardt are there steps for this?

I'll drive the verification for this, you can ignore it. I'll leave steps-needed so folks don't open it.

Marking as verified because Power Portals team says the flow works. We'll move forward and hopefully customers hit by CA policies are also helped.


Maintenance of ChangeLog and NEWS files

Hi,
it appears the ChangeLog and NEWS file are unmaintained (they contain no information). I would appreciate it if the NEWS file would duplicate the information from the release announcements to have them readable in the source tree itself, but if there is no intention to maintain either of these files, they should be removed, because it looks confusing otherwise.
Greetings
Marvin

You're right. I will remove ChangeLog. Keeping NEWS seems a good idea, if we can maintain. But we clearly haven't done it well, should we remove it too?

I'm all for removing it or creating a script to generate it out of the git logs for a release candidate.

On Sat, Aug 06, 2016 at 04:35:39AM -0700, Daniel Bovensiepen wrote:

I'm all for removing it or creating a script to generate it out of the
git logs for a release candidate.

No, please not. The Git log is not as informative to someone who does
not actively follow the development. The NEWS file should contain the
user-visible changes, which you cannot automatically generate from the
Git log.
Greetings
Marvin

The NEWS file should contain the user-visible changes, which you cannot automatically generate from the Git log.

I agree fully but most projects I see can't maintain something like that in the long run. So better than nothing or even better then something wrong, I think this would be an option which needs low efforts. And in the end nothing speaks against compressing the git-log output to something more understandable to the general public.

I think if you ask people submitting features to add a line to NEWS its much easier to maintain, and don't worry about trying to add every bugfix to the file.

On Sun, Aug 07, 2016 at 05:51:04AM -0700, Daniel Bovensiepen wrote:

The NEWS file should contain the user-visible changes, which you
cannot automatically generate from the Git log.

I agree fully but most projects I see can't maintain something like
that in the long run.

I suggested in the OP that the file should contain copies of the release
announcements. Since these will be written anyway, I don't see much
extra work than copy&paste of the release announcement markup into the
NEWS file. For example, for 1.2.0 it could simply contain the same text
as the 1.2.0 release announcement in the "What's new" section1. If the
info is available anyway, why not add it to the source tree?
Greetings
Marvin


Support Mean in DDP Sync

What does this PR do?
Add support for mean in DDP Sync

Fixes # (issue)
Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together? Otherwise, we ask you to create a separate PR for every change.
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Hello @justusschock! Thanks for opening this PR.

In the file pytorch_lightning/metrics/converters.py:

Line 236:61: W291 trailing whitespace
Line 244:1: W293 blank line contains whitespace
Line 246:1: W293 blank line contains whitespace
Line 260:1: W293 blank line contains whitespace

Do see the Hitchhiker's guide to code style

@Borda are TPU tests still to be neglected?

@Borda are TPU tests still to be neglected?

TPU shall be fine...

it seems that the test acc dropped significantly...
>       assert result['test_acc'] > 0.8
--
1102 | E       assert 0.25 > 0.8

@Borda  @williamFalcon @SkafteNicki can we get this done?

@SkafteNicki you're right. This is fixed now.


Make prop decorator get never add methods after code loading finishes

Input
→ View on sorbet.run
require 'sorbet-runtime'

class A < T::Struct
  prop :foo, Integer

  def example
    self.class.decorator.get({}, :foo, {accessor_key: :@foo})
  end
end

a = A.new(foo: 0)

T::Utils.run_all_sig_blocks

class Object
  def self.method_added(method)
    super
    p method
    raise "Should not be adding methods at this point"
  end
end

a.example

Observed output
static:
No errors! Great job.

runtime:
❯ ruby foo.rb
:get
Traceback (most recent call last):
        15: from foo.rb:23:in `<main>'
        14: from foo.rb:7:in `example'
        13: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/_methods.rb:252:in `block in _on_method_added'
        12: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/_methods.rb:320:in `_handle_missing_method_signature'
        11: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/_methods.rb:402:in `unwrap_method'
        10: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/call_validation.rb:40:in `wrap_method_if_needed'
         9: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/configuration.rb:533:in `without_ruby_warnings'
         8: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/call_validation.rb:42:in `block in wrap_method_if_needed'
         7: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/decl_state.rb:25:in `without_on_method_added'
         6: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/call_validation.rb:43:in `block (2 levels) in wrap_method_if_needed'
         5: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/class_utils.rb:73:in `def_with_visibility'
         4: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/class_utils.rb:73:in `module_exec'
         3: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/class_utils.rb:82:in `block in def_with_visibility'
         2: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/class_utils.rb:82:in `define_method'
         1: from /Users/jez/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sorbet-runtime-0.5.10413/lib/types/private/methods/_methods.rb:518:in `method_added'
foo.rb:19:in `method_added': Should not be adding methods at this point (RuntimeError)

Expected behavior

The code should never raise because the method_added hook should never be called.
Sorbet's on_method_added hook is heavy weight, and can substantially slow down first requests. The idea of run_all_sig_blocks is that the user should be able to force that heavy weight stuff to run at a time before the service is running requests.
With this specific self.class.decorator.get API, that doesn't seem to happen.

I believe this has to do with the fact that get is defined via alias_method. Here's a simpler reproducer:
require 'sorbet-runtime'

class A
  extend T::Sig

  sig {returns(T.untyped)}
  def example; end
  alias_method :example_alias, :example
end

T::Utils.run_all_sig_blocks

a = A.new

class Object
  def self.method_added(method)
    super
    p method
    p self
    raise "Should not be adding methods at this point"
  end
end

a.example_alias

It'd be simple enough to stop relying on alias_method in T::Props (or at least in the normal getter path). But maybe there's a feasible more general fix?


Let merchant add manual payment methods

Let merchants accept custom payment methods that are processed outside of their Dshop (e.g. bank transfers, cash on delivery etc).
They should be able to:

[ ] Click on "Add payment method" under Manual Payment Methods (see on Zeplin)
[ ] Set up their manual payment method by proving a name (e.g. Bank transfer), description that shows up on payments page during checkout (e.g. Pay by bank transfer) and payment instructions that shows up on the order confirmation (e.g. send the payment to this account) - See on Zeplin
[ ] Go to their Orders page and mark orders as "paid", once they receive the payment (See on Zeplin)

@gullible1 Have one question regarding "Mark as paid" button. Should we show up a modal or something with a notes field before the transaction? Could be useful for the seller to add a Transaction ID or some other things that he can refer later.


 The number of failed tests is different every run, and we don't have such problem on CI. We need to deal with this issue because it worsen dev experience.

closing


Technical debt: introduce Header type family

In many, many places throughout the consensus layer we have two type arguments: blk and hdr. However, these are not truly independent. Instead, we should have a type family mapping blk to hdr, which should then be used throughout the entire consensus layer (including storage layer).

Would supersede #588.

In an ideal world, we would then be able to move all the equality constraints (such as BlockProtocol (BlockHeader b) ~ BLockProtocol b to a single place instead of repeating them all over the place.

We should also rename SupportedBlock to SupportedHeader as part of this PR.

Fixed by #616.


workspace.list_variables may raise TypeError

I was iterating through containers in an account and listing variables in their default workspaces. For one of the containers, I got the exception below. I went to the GTM UI and manually checked that container: it has several built-in variables and no user-defined variables.
My assumption is that the list_variables method should not raise. Can you please check?
...
  File "/Users/xak/dev/.virtualenvs/gtm/lib/python3.6/site-packages/gtm_manager/workspace.py", line 385, in list_variables
    for x in response.get("variable")
TypeError: 'NoneType' object is not iterable

Hey @arthur78
Thank you very much for opening the issue and sharing your feedback!
I improved the list methods to handle empty lists and added a bunch more tests. It's all available in v0.2.5. I would be delighted if you would give it another try :)
Thanks
Chris


Update readme for apps for DB CLI commands

Update readme's to include CLI commands for DB

done

LGTM = MERGE MINOTAUR


Ensure valid shift values for SH instructions.

Description
Shifts of >= 64 bits on 64-bit values and >= 32 bits on 32-bits values result in undefined behavior so we need to mask off the msb of the shift size.
Testing
Ensure that all latest 'bpf_conformance' tests pass.
bpf_conformance_runner.exe --test_file_directory D:\wrk\bpf_conformance\tests --exclude_regex lock* --plugin_path .\bpf2c_plugin.exe --plugin_options "--include d:\wrk\ebpf-for-windows\include"
Note: The above command-line refers to a local directory D:\wrk\bpf_conformance\tests cloned from the master bpf_conformance repo.
Documentation
Is there any documentation impact for this change?
No doc changes.
Fixes #2465

Can you format the generated code using format-code.ps1? This should eliminate spurious whitespaces changes.

Can you format the generated code using format-code.ps1? This should eliminate spurious whitespaces changes.

As discussed, this code was already formatted by that script.  It looks like either the originals were committed without the script formatting pass or the formatting was changed at a date later than the original commit date.

@dv-msft please resolve conflicts


Thanks for the help! & Socketio in Godot 3.5

Hello! Thank you for your contribution to the community! As a beginner in Godot, I recently encountered challenges while attempting to connect to a Socket.io server. Despite my best efforts, I couldn't successfully establish the connection. Therefore, I want to express my gratitude for creating this "simple" yet crucial addon that aims to address such issues!!
One more thing: I tested the provided code with Godot 3.5, but it did not establish a connection with the WebSocket server. I'm curious if there are alternative implementations or suggestions you have in mind that could ensure compatibility with Godot 3.5? Your expertise and guidance would be greatly appreciated. Thank you once again for the help!

Did you actually adapt this code for Godot 3? This code is very much Godot 4 code, if you want to use it in Godot 3 it would require significant modifications.

Wow, thank you once again for the help!! I will try it out!


Prevent starting task if captions are nil

Media

Description

Prevent the task from being started if not needed (saw it clogging up instruments with it constantly firing).

Type of change

[ ] Feature (newly added functionality not yet in production)
[ ] Bug (fixing functionality not yet in production)
[ ] Patch (fixing functionality currently in production)
[X] Clean or Refactor (updates to existing code that does not change functionality)

@jayaquino Have you verified that instruments no longer is populated with the entries from your screenshot? I could be misreading the table, but it appears the rows are coming from onPlayerTimeChanged(time:), not from any of the methods it calls into under the hood.

@JordanOsterberg Yes they don't appear when the Task is not executed since it's contained in onPlayerTimeChanged(time:). This is on Swift Concurrency by the way.


Git deployment can´t handle nested subdirectories

If you try to deploy a project via git with a subdirectory that contains another subdirectory you run into this error:
TASK [anistrano-deploy : ANSISTRANO | GIT | Sync repo subtree[""] to release path] ***
fatal: [server1]: FAILED! => {"changed": true, "cmd": "{\n git ls-files --with-tree="master";\n git submodule foreach --recursive --quiet 'git ls-files --with-tree="$sha1" | sed "s#^#$path/#"';\n } | grep "^$prefix" | sed "s#^$prefix/##" | rsync -a --files-from=- "./$prefix/" /var/www/server1/releases/20170127073653Z/", "delta": "0:00:00.137968", "end": "2017-01-27 07:37:20.570202", "failed": true, "rc": 23, "start": "2017-01-27 07:37:20.432234", "stderr": "rsync: link_stat "/var/www/server/repo/deployment/ansible" failed: No such file or directory (2)\nrsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.0]", "stdout": "", "stdout_lines": [], "warnings": []}
In this case we have a "Project" with a subdirectory "deployment" and that contains another subdirectory "ansible".

I am sorry I don´t understand the problem, can you please post your playbook and explain a bit more your repo structure and what you want to deploy?
We support deploying a subtree and submodules but not sure about what you are trying to achieve

Hi Ricard,
sorry for my insufficient explanation. My structure is  this:
MainProject (what I want to deploy)
--> SubmoduleA (is a submodule of MainProject)
------> SubmoduleB (is a submodule of SubmoduleA)
That structure runs into the error from my first post.
If I only have SubmoduleA without SubmoduleB in it, it works fine too.

Ah I see
I have never tested 2 levels of submodules, I assumed it would work with the --recursive instruction and to be honest it has been many years since I stopped using them :)
Cool, will try to investigate a bit, sorry you ran into this, I am afraid we don´t have a solution at the moment

To fix the above issue with nested submodule you can do the following:
replace this line in tasks/update-code/git.yml:
git submodule foreach --recursive --quiet 'git ls-files -z --with-tree="$sha1" | tr "\0" "\n" | sed "s#^#$path/#"'

with this
git submodule foreach --recursive | sed -n -e "s/^Entering '\(.*\)'$/\1/p" | while read -r line; do (cd "$line"; git ls-files -z | tr "\0" "\n" | sed "s#^#$line/#"; cd $OLDPWD); done

The latter uses the full path to the module.
hth


Update workflows to use latest versions of actions

Describe your pull request here: See title
List the file(s) included in this PR: build-docs.yml, deploy-preview.yml
After creating the PR, follow the instructions in the comments.

Closing, will reopen not from a fork 😋


Example / Demo

Hi, thanks for these interesting libraries.
Can you add an example app that uses libraries in this repo

Definitely. It's on my to do list

Sounds good 👍


INSTANCE within LET, ENABLED in parametrized INSTANCE, ENABLED in instantiated operators with parameters, and related changes

These changes include bug fixes:

cdf6240de4ddd2466a995886950c260477ecf3a7: recomputing the levels of operators after instantiation, because parametric INSTANCE changes the arity of operators, and also can change the level of declared identifiers. A change in arity makes the level information of operators outdated, and requires recomputing the operator's level information.

e27d639689a211d47e3986470c570497b12eb665: bind primed occurrences of variables before instantiation, when these appear in scope of ENABLED inside the definition of an operator that takes arguments. This change:

ensures correct binding of primed occurrences of variables when instantiating, for example, the operator A(z) == ENABLED (x' # y') (as in the added test module)
raises an error during operator instantiation if an operator parameter occurs inside the scope of ENABLED, for example:

---- MODULE RaisesError ----
---- MODULE Inner ----
A(x) == ENABLED (x')
======================
M == INSTANCE Inner
============================

2ec2b79911436166d994e1ee5d01b7a3ed259b35: in the test scripts, tracking nesting of submodules inside a module, to decide which horizontal line =====* terminates the file's module, so that the test commands be read after that ====* line

d0b800e58cdb758b7edef04345719dd00f868182: show VARIABLE for single variable, VARIABLES for multiple variables when formatting modules

dbe57c610278d85a24abeb079c986b165cecf28f: load modules that occur inside an EXTENDS that itself appears inside a submodule

d114852d3dfcaff000d5c9096ac90e5fb44030e4: module units need to be correctly shifted when instantiating. The shift depends on how many hypotheses each of the omitted module units introduced in the module context (and this number is not 1, which was previously used)

a5035a822f6552a956b8d78b82792f30ea65ceff, 4815b340f10f5c650ece9826c5b84515c551ecc7: allow INSTANCE statements to occur within LET: there were errors when the instantiated module (e.g., TLAPS) included backend pragmas, because only definitions were expected in normalization of LET expressions, and in fingerprinting of LET expressions.

Test cases are also added for each change. Please find more details in the commits messages.

Thank you for reviewing the changes and approving this pull request, the changes are now merged.


Make URL conforms to ExpressibleByArgument

There are times a command line tool needs a local file URL or a remote URL as an argument.
For example --build-path, --package-path of the swift-package command. Of course one can use strings instead of URLs. But using URLs can benefit from validation, relative path handling, convenient path operations (like appendingPathComponent), etc.
A simple implementation would be something like
extension URL: ExpressibleByArgument {
  public init?(argument: String) {
    if let url = URL(string: argument), url.scheme != nil {
      self.init(string: argument)
    } else {
      // Assuming it is a file url.
      self.init(fileURLWithPath: argument)
    }
  }
}

https://github.com is parsed as a remote URL.
., folder, ../, .build are parsed as against current directory.
file:///System,  file:///C:/Windows/ are parsed as file URL.
Things I'm not sure:

ArgumentParser seems to use @_implementationOnly import for Foundation. This feature will break the @_implementationOnly import because it involves the URL type from Foundation. What's the story of the @_implementationOnly import?
File paths on the Windows platform.

I've created a draft PR for this.

@YuAo — thanks for the issue and the pull request! At this time, we aren't exporting Foundation so that the parser can be used by tools that don't need or want to link the framework. To work around this, you can either use the inits that include the transform parameter or declare your own ExpressibleByArgument conformance.


Problem: images link without extension.

Hi guys.
I'm using Amazon S3 as a storage for images.
The problem, that it's get you image links without extension, like this (same with lorem pixels and some other services):
https://s3.eu-west-2.amazonaws.com/account-prod/2e94b1aa-0c88-438a-b5d1-5e38e6b2cbc9
It's work fine for setting images as  img.src or background-image.
But unfortunately not working with baguetteBox.js, look like it's not recognize it as image.
Do you have any idea how to make it work ?
I made a pen with problem, where you can find regular aproach, and without extension (lorem pixel and amazon) - link

Hello,
I think the solution to your issue is the filter option:
https://github.com/feimosi/baguetteBox.js#customization
So in you case you'd have to run the script e.g. like this:
baguetteBox.run('.gallery', {
  filter: /.*amazonaws.*/i
});

or:
baguetteBox.run('.gallery', {
  filter: /.*/i
});

to match every <a> tag,
See the new pen: http://codepen.io/anon/pen/mWPWXQ

@feimosi perfect. Thank you. Didn't think about filters this way.


Prefer ChakraHost when available to node and WScript

ChakraHost is a great abstraction API for running tsc in exotic hosts.
However, some of such hosts may fully or partially emulate node API. It would help if tsc abstraction were accessible regardless of the platform layer emulation.
By detecting ChakraHost before node and WScript this explicit abstraction mode kicks in regardless of the platform.

:+1:

@paulvanbrenk can you take a look.

👍


add catalog links

Notes for Reviewers

This PR fixes #

Signed commits

[x] Yes, I signed my commits.

🚀 Preview for commit bf2c60c9c306c228b9ca88b755f6e8e2ca1c0afd at: https://673755637fe30d98ba0d960f--meshery-docs-preview.netlify.app


Separate user accounts for Tilde services

When we install Tilde at our partner sites, we need different user accounts for each partner. So the user acccount needs to be configurable in the application.properties configuration file.
@andish how do we pass authentication credentials to Tilde services? Currently we pass a header "Authentication". Do we have to submit a separate value for Authentication for each installation?

Authentication is realized using Basic authentication. It means that an authorization token is enough for bringing to global configuration file (it contains encoded username+password). Also URL would be grate if could be placed in configuration file, so we would change api endpoint and authorization without rebuilding the freme server.
So for each e-service following properties would be good to bring to configuration:

URL of endpoint;
authorization token.

In e-Translation and e-Terminology we send the authentication token in the request header "Authentication" to the Tilde service. So the header will look like
Authentication: Basic TOKEN_HERE

with TOKEN_HERE being replaced by the token.
Is this correct?
Configuraiton of URL endpoint is already implemented for the unit tests, we just need to document it.

yes, exactly.

@ArneBinder please

make the authentication token a configuration parameter in e-Terminology and e-Translation. Put the configuration in /home/u231015/freme-configs/broker-dev-private.properties on freme-dev because it should not be public. There should be separate parameters for e-Translation and e-Terminology.
add documentation about the authentication token parameter and the parameter to configure both API endpoints to http://api-dev.freme-project.eu/doc/knowledge-base/freme-for-sysadmins/e-services.html .

Please do not add the configuration to /home/u231015/freme-configs/broker-dev-private.properties but to

broker-dev
broker-local
freme-full

Here is what I added to the documentation. @jnehring is this ok?

Looks good. The functionality is implemented.


RWD - Should Swap the order of "Building a Penguin" and "Building A Ferris Wheel"

Describe the Issue
I'm currently going though the Building A Penguin section of the new RWD course (I'm almost done with RWD again yay!) and There is a massive lack of information on how to do animations and the commands it actually wants you to do.
The project feels like it was written when there was already a tutorial on keyframes and animations but then that got cut. I'll walk through the things I've noticed and needed to go off-site for, because I know the gameplan is to not have people have to leave the site to solve issues:

Step 95: Define a new @keyframes named wave
This one I did figure out on my own, but it's not clear how you're supposed to actually make the name. (It took two attempts because I assumed i needed to do @keyframes (wave) {}

Step 96: Give wave four waypoints starting at 10%, and incrementing by 10%.
There is no information in the previous lessons on waypoints, and this is the first time the camper will be coming across this. In addition, the Hint is completely useless here, especially if you just have the waypoints inputted incorrectly, because it's simply "You should add a 10% waypoint for @keyframes wave. Had to go offsite for this one.

Step 100: Use the wave animation on the left arm.
This one is completely unsolvable without going off-site, or just failing each question, because the hints do tell you the pieces it wants to to add as it's missing. There has been no point up to this lesson where any of this is gone over, because this is the introduction to animation and keyframes.

Just noticed in Step 103 (unrelated the the main step, but confusing if someone wants to look up what they did to replicate it in this step to learn better) that the animation property has been changed from how it tells you to do it in Step 100 to animation: 3s linear infinite wave; which is never explained or elaborated on, and the solution for 103 requires you to do it piece by piece. Also, as I'm now wrapping this one up, it is also not helpful in the step text, because we've never modified transition, and transition has it's own properties vs animation, and is not an animation with the name transition, which could very likely confuse campers.

Step 104: The last bit says "Congratulations! You have completed the Responsive Web Design certification!" but the Ferris Wheel is after this one. I'm going to go through the Ferris Wheel project, and honestly the best solution to everything might just be to move the Ferris Wheel project in front of this one, depending on how it is done

Affected Page
https://www.freecodecamp.org/learn/2022/responsive-web-design/learn-css-transforms-by-building-a-penguin/step-95
Your code
Issues mentioned in Description
Expected behavior
The things required to do in the keyframes and animation sections would be better explained
Screenshots
No response
System

Device: Desktop
OS: EndevourOS
Browser: Opera
Version: 87.0.4390.36

Additional context
No response

Yeah, okay so I am now working though the ferris wheel project, and it 100% looks like the Ferris Wheel project is supposed to go before the Penguin project
it has very clear explanations of Keyframes and setting up an Animation, as well as adding an animation to an element, and also goes over the combined animation property.
Going to change the title of the thread

Duplicate of https://github.com/freeCodeCamp/freeCodeCamp/issues/45985

Thought I would have caught that, but I'm assuming it's because I didn't realize that was the issue until I finished the Ferris Wheel project
Sorry!

Duplic

e of #45985 @.***/0?redirect=https%3A%2F%2Fgithub.com%2FfreeCodeCamp%2FfreeCodeCamp%2Fissues%2F45985&recipient=cmVwbHkrQVpKVEZZQjRPN1lLU1FHSjc3N1haRDZBVUVGVVZFVkJOSEhFVkhYSEZBQHJlcGx5LmdpdGh1Yi5jb20%3D)

—
Reply to this email directly, view it on GitHub @./1?redirect=https%3A%2F%2Fgithub.com%2FfreeCodeCamp%2FfreeCodeCamp%2Fissues%2F46224%23issuecomment-1140520309&recipient=cmVwbHkrQVpKVEZZQjRPN1lLU1FHSjc3N1haRDZBVUVGVVZFVkJOSEhFVkhYSEZBQHJlcGx5LmdpdGh1Yi5jb20%3D), or unsubscribe @./2?redirect=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAZJTFYAJPC44YJC3P7HBXITVMPIEVANCNFSM5XILRDRA&recipient=cmVwbHkrQVpKVEZZQjRPN1lLU1FHSjc3N1haRDZBVUVGVVZFVkJOSEhFVkhYSEZBQHJlcGx5LmdpdGh1Yi5jb20%3D).
You are receiving this because you authored the thread.


$IIVWT causes error with unitialized constant

$IIVWT,058.0,R,15.9,N,8.2,M,29.4,K*4A
Couldn't instantiate a NMEAPlus::Message::NMEA::IIVWT object: uninitialized constant NMEAPlus::Message::NMEA::IIVWT
["/var/lib/gems/2.3.0/gems/nmea_plus-1.0.19/lib/nmea_plus/message_factory.rb:64:in `rescue in dynamically_get_message_object'",
"/var/lib/gems/2.3.0/gems/nmea_plus-1.0.19/lib/nmea_plus/message_factory.rb:62:in `dynamically_get_message_object'",
"/var/lib/gems/2.3.0/gems/nmea_plus-1.0.19/lib/nmea_plus/message_factory.rb:80:in `create'",
"parser.y:9:in `_reduce_1'",
"/var/lib/gems/2.3.0/gems/racc-1.4.14/lib/racc/parser.rb:271:in `_racc_do_parse_c'",
"/var/lib/gems/2.3.0/gems/racc-1.4.14/lib/racc/parser.rb:271:in `do_parse'",
"/var/lib/gems/2.3.0/gems/nmea_plus-1.0.19/lib/nmea_plus/generated_parser/tokenizer.rb:30:in `scan_str'",
"/var/lib/gems/2.3.0/gems/nmea_plus-1.0.19/lib/nmea_plus/generated_parser/tokenizer.rb:86:in `parse'",
"nmea_server.rb:21:in `handle_client'",
"nmea_server.rb:67:in `block in <main>'"]

Unfortunately, this error is by design -- I throw exceptions for message types that are not defined.
Do you have any information on this message type and the meaning of each field?

IIVWT comes from a Raymarine ST60 "integrated instrument" system which uses an internal protocol between devices and it put onto the NMEA bus via a dedicated Raymarine instrument box.  Some of sentences used are very old and can be found here http://www.nmea.org/Assets/100108_nmea_0183_sentences_not_recommended_for_new_designs.pdf
In my test files I also found the HVM (magnetic heading) which is in the document referenced above
$IIHVM,2,W*36
Couldn't instantiate a NMEAPlus::Message::NMEA::IIHVM object: uninitialized constant NMEAPlus::Message::NMEA::IIHVM
Lastly I noticed that AITXT caused an error - I believe this comes from a Comar AIS transponder.
$AITXT,01,01,70,Entered a DSC Receivable Window Chan A*46
Couldn't instantiate a NMEAPlus::Message::NMEA::AITXT object: uninitialized constant NMEAPlus::Message::NMEA::AITXT
I understand that any unknown message or un-decodable string throws an error;   let me know if you want to know about further valid messages which are un-implemented.
John

I'm making progress on that document, which you can track here: #28
Would you feel comfortable contributing?

Sounds like good progress.  What contribution would be helpful?   I can
create a file from a live NMEA stream which uses some of these sentences if
that would help testing ?
On 20 January 2017 at 16:15, Ian<EMAIL_ADDRESS>wrote:

I'm making progress on that document, which you can track here: #28
https://github.com/ifreecarve/nmea_plus/pull/28
Would you feel comfortable contributing?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ifreecarve/nmea_plus/issues/24#issuecomment-274111944,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXje7um-0MVC3p7WKHYqUfSgTGmX_ojvks5rUN2igaJpZM4Lg5aE
.

I won't say no to having real-life examples of these sentences.  At the moment I'm just inventing them based on what the specs look like, and hoping that they're accurate.
I'm also wondering if you'd feel comfortable copying the style that I'm using to implement these messages, and submitting your own: https://github.com/ifreecarve/nmea_plus/pull/28/commits/1916d5822b765263c6f238b14beec05eebde142a

This is now fixed in the branch:
https://github.com/ifreecarve/nmea_plus/tree/2017-01-20_nmea_not_recommended
I'll be continuing to work on the document (only 17 message types to go now) before I merge and release a new gem.

Should be all set in https://rubygems.org/gems/nmea_plus/versions/1.0.20


[CSL-1448] Remove Unused constructor from deriveSimpleBi

See https://issues.serokell.io/issue/CSL-1448 for context.
After consulting with @neongreen , we opted for removing Unused and its logic from the Binary.Class.TH module, as it's incomplete and we can always retrieve it back from git history when and if we decide to resume working on it.

Kicked off the CI server once again, finger crossed!


measurements not recognized

Hi @marcovzla,
These tests fail in the branch numeric_processor because numbers are not recognized correctly:
https://github.com/clulab/processors/blob/numeric-processor/main/src/test/scala/org/clulab/numeric/TestNumericEntityRecognition.scala#L132-L135
Can you please take a look? I'd like to merge this in master this week, if possible.
Thanks!

It should be fixed now

Thanks!


fix flakey context test

On my machine (and possibly GH Actions) the test seemed to sometimes fail due to the timeout, not actually as a result of the context being cancelled without an error. We use a channel so we're actually testing the context's state.

Thanks for opening this. I went ahead and committed the simpler fix.


Run flake8 on CI

Add flake8 to Python requirements
Add docstrings to tests
Arrange imports correctly
Introduce variable to reduce redundancy
Run flake8 on CI

Requires #3.

@ablbot autosqash

@ablbot autosquash


Can hide the empty handle?

when the rule's handle is empty, can hide it?

I'll fix it

@qicz If a solution has not been obtained for a long time, it is recommended to close it


Clicking "download safe launcher" on website downloads demo app

(not sure which repo this should be in, so pls move if needed)
Downloaded demo app a few times by hitting "download safe launcher" button on https://maidsafe.net/demo_app_downloading.html#demo_app

@mowliv, you will have to start the launcher application and register an account. Leave the launcher running and then start using the safe apps. Here is a tutorial on how to use the launcher and the demo app. Hope it helps, if you still have a problem feel free to report under the safe_launcher repository

@krishnaIndia you didn't understand my report. I was initially unable to download the launcher app because when I clicked the appropriate button on the website it instead downloaded the demo app.

@mowliv thank you for opening this GitHub issue 🙂
I just found what the problem is.
There is a typo on the demo app page: https://maidsafe.net/demo_app_downloading.html#demo_app
the "Download SAFE Launcher" button should point to ./safe_launcher_downloading.html#launcher?download instead of ./safe_launcher_downloading.html#laucher?download.
so because the word "launcher" has a typo, it downloads the demo app instead of the launcher.
we'll get this fixed quickly. thanks again, @mowliv!

Update: We've fixed this issue.
The download link for SAFE Launcher on https://maidsafe.net/demo_app_downloading.html#demo_app seems to work fine now 👍

Yes, working now for me. Cool.
On Wed, Feb 15, 2017 at 10:18 AM, Francis Brunelle<EMAIL_ADDRESS>
wrote:

Update: We've fixed this issue.
The download link for SAFE Launcher on https://maidsafe.net/demo_app_
downloading.html#demo_app seems to work fine now 👍
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/maidsafe/safe_app_nodejs/issues/28#issuecomment-280093084,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEY7zRBgD-_2mYLj3msDl7uLv_UtKOEIks5rc0FvgaJpZM4MBRoF
.

@mowliv, updated the website. Thanks for reporting the issue. @frabrunelle confirmed that the issue is resolved. Closing the issue for now.


Instructions to how use the Docker images from pelias repository

Hi,
The documentation section of Software Requirements says to use Docker images from the Pelias repository in here to avoid the full build from scratch, but is missing instructions on how to start all the services (in some required order) or modify certain code in the pulled images.  Unless I'm missing something.
Thanks !

So, after downloading all images we can just install Pelias Docker project and follow the steps in that repository to get it up and running ?


on Windows, write the soundfile to a temp file and play immediately using PlaySound

see https://msdn.microsoft.com/en-us/library/windows/desktop/dd743680(v=vs.85).aspx

Yes this could be easily possible! Pull request welcome!

I don't have a windows box to develop on! But I'll hack it up and also make a Mac implementation.

The file playing takes a long time for a big sample load. We might want to think about putting a progress indicator in place at some point.

I've pushed my changes to get autoplay of the wav file working. It works on OSX right now.
You may need to prepend the current directory to the out.wav string passed to PlayFile.


Delete master route on kube-down

Fix jenkins break from #5390, by deleting the route created for the master in kube-down.

cc @zmerlynn


Dub hangs up while configs validating.

What is the purpose of this line:
foreach (ref cfgs; all_configs) cfgs = CONFIG.invalid ~ cfgs;

This line adds 'invalid' config to all configs and that causes infinite loop while config validation because (I guess) dub is trying to choose a config that matches 'invalid' configs and this is impossible. But I'm not sure. In my case commenting this line let me avoid hanging, moreover hanging has stochastic nature, it's really frustrating. It would be nice if someone help me to get it clearer.

Of course I read the comment above this line (just in case). Wouldn't it enough if change it to:
foreach (ref cfgs; all_configs)
    if(!cfgs.length) cfgs = CONFIG.invalid;

My guess is that this is not an actual infinite loop, but an instance of #652. The "invalid" configuration is there to support cases where a certain package doesn't have a valid configuration available, but the dependency tree is still valid, because the dependency is optional or not required due to an upstream dependency not being included. The resolution algorithm will most probably be reformulated as a graph search algorithm (using a stack/queue), which should get rid of all but the most pathological cases that result in huge resolution times.

Yes, I guess you're right, this is a duplicate of #652. But what about adding of "invalid" configuration only if there is no valid configuration like I mentioned above? It's just a guess, I don't know the whole logic behind configuration resolution, but in my case it works very well.

Fixed by now.


Document consistent sets of dependency versions

Document consistent sets of dependency versions and provide instructions that allow users to install those specific versions rather than automatically fetching the most current ones or out-of-date ones.
For example, using:
$ conda install <package>=<version>

> install.packages("<package>", version='0.9.1')

This relates to #310 and #291.

Arose from 26/05/21 meeting.


Allow external tokenizer when splitting text

I'd like to use tiktoken or HuggingFace tokenizer when splitting text using the python text chunker.
Example usage:
from semantic_kernel.text.text_chunker import split_plaintext_lines
import tiktoken

encoding = tiktoken.get_encoding('cl100k_base')
token_counter = lambda x: len(encoding.encode(x))
lines = split_plaintext_lines(text=text, max_token_per_line=256, token_counter=token_counter)

Related Issues:
#1240
#478

Thanks for adding the PR! We'll definitely take a look. We definitely need to add more text chunking capabilities in SK

Closing since this was created several months ago. Please reopen if you still want the enhancement.


Add type definitions for webhook payloads

Overview
Adding in the type definitions of webhook payloads would be immensely helpful, either here or in your documentation somewhere. As far as I know the only payload documentation you offer is a single example payload per topic which is not great when trying to deal with all possible type nuances that can exist.
Type

[ ] New feature
[x] Changes to existing features

Motivation
As of right now my strategy is to accumulate a reasonable sample size of webhooks in my application's db and use a typegen tool based on the sample data, which does work but it's incredibly tedious to deal with. I imagine you probably have the type definitions in your codebase somewhere and it's just a matter of making it publicly available.
Area

[ ] webhooks
[ ] type definitions

Hey Kyle,
looks like its related to issue #193. I've added a pull request over the weekend to add types to the Rest & Graphql clients. I've also added a forked package to npm that runs with the types integrated already. You can install shopify-typed-node-api and import the required types directly from there.
I.e. a webhook for orders/updated could be typed like this:
import { _Order } from "shopify-typed-node-api/dist/clients/rest/dataTypes";

function handleWebhook(req, res) {
  const bodyBuffer = await getRawBody(req);
  const body = JSON.parse(bodyBuffer.toString());
  const {
    "x-shopify-hmac-sha256": hmac,
    "x-shopify-shop-domain": shop,
    "x-shopify-topic": topic,
  } = headers;

  if (!verifyWebhookHmac(hmac, bodyBuffer)) {
    res.status(401).send("Unauthorized Access");
    return;
  }

  switch (topic) {
    case "orders/updated": {
      const order = body as _Order;

      // do stuff with order and have types...

      return res.status(200).send("success");
    }
  }
}