Usage of custom expressions in drift files

Hey, still a big fan of your library!
we are currently working on migrating an app to the newest drift version, coming from 1.x.
This works fine after upgrading for most queries, but we get an error when using a custom expression within the SELECT statement. The error while generating is Null check operator used on a null value.
We are mainly doing this to reuse the expression (and some code) in multiple queries and drift files.
Is it not possible anymore to use custom expression in SELECT statements?
If not, are there better alternatives than calling the custom functions directly in drift files? Doing that shows a warning ( Function calcStatus could not be found), but the generated code looks okay.
Example
Simplified example of our queries and how it worked before upgrading and the full error that occurs now:
Query:
exampleQuery as Example:
    SELECT CAST($status AS INT) AS status FROM examples;

Generated code:
  Selectable<Example> exampleQuery(
      Expression status) {
    final generatedstatus = $write(status, hasMultipleTables: true);
    return customSelect(
        'SELECT CAST(${generatedstatus.sql} AS INT) AS status',
        variables: [
          ...generatedstatus.introducedVariables,
        ],
        readsFrom: {
          examples,
          ...generatedstatus.watchedTables,
        }).map((QueryRow row) {
      return Example
        status: row.read<int>('status'),
      );
    });
  }
}

Caller:
  Selectable<Example> getExample(
    int param,
  ) {
    return exampleQuery(CustomExpression(
      "calcStatus($param)",
    ));
  }

calcStatus is a custom function added to sql by calling database.createFunction(functionName: "calcStatus", ...)
The full error:
Error:
Null check operator used on a null value
package:drift_dev/src/writer/queries/utils.dart 29:60           FoundElementType.dartType.<fn>
package:drift_dev/src/analysis/results/dart.dart 45:10          new AnnotatedDartCode.build
package:drift_dev/src/writer/queries/utils.dart 10:32           FoundElementType.dartType
package:drift_dev/src/writer/queries/query_writer.dart 400:40   QueryWriter._writeParameters.typeFor
package:drift_dev/src/writer/queries/query_writer.dart 432:20   QueryWriter._writeParameters
package:drift_dev/src/writer/queries/query_writer.dart 300:5    QueryWriter._writeSelectStatementCreator
package:drift_dev/src/writer/queries/query_writer.dart 82:5     QueryWriter._writeSelect
package:drift_dev/src/writer/queries/query_writer.dart 71:7     QueryWriter.write
package:drift_dev/src/writer/drift_accessor_writer.dart 45:39   AccessorWriter.write
package:drift_dev/src/backends/build/drift_builder.dart 446:49  _DriftBuildRun._generateMonolithic
package:drift_dev/src/backends/build/drift_builder.dart 184:7   _DriftBuildRun.run
package:drift_dev/src/backends/build/drift_builder.dart 109:5   DriftBuilder.build

This is still supposed to work :) The problem is the cast expression, which means that we don't know what type $status is supposed to have. So we can't generate an Expression<int>-typed parameter. But instead of crashing, we should just generate Expression without type parameters instead.

I've fixed the problem in 53b5afcda7005565b3c46f0df65fea44730d0ec0. You could try using that version of drift_dev to see if you run into any other issues after upgrading, I'll release the fix to pub.dev later today.

drift_dev version 2.22.1 has just been published to pub.dev and contains this fix.


Delete .DS_Store

deleted the .DS_store since it causes issues with merging. also will add a .gitignore file so git will ignore the .DS_store from now on. This won't effect the project functionality.


Complete the offline renderer

The --render-offline didn't make the 2.0 release, because it doesn't render the same content as GitHub.
The functionality is there. The CLI option is added back again in the fix-render-offline branch, where work can continue.

Just a small update / thinking out loud.
Now that Grip has tests (#150) which includes a Markdown file containing all the features of GitHub Flavored Markdown and its GitHub API output, ensuring the correctness of an offline renderer implementation should be easier.
Once it's complete, it can become the default (although the styles and assets should still come from GitHub). The GitHub API can still be used to access Markdown features that Grip's offline renderer doesn't implement right away.

I just received a "github API rate limit reached" error randomly: it's my first time running grip for the day and I wanted to view a single document, but I'm at a busy tech campus where 100+ people are using Github on a routine basis.
I hadn't even realized that Grip didn't render offline. I'm confused as to why I would use Grip at all, if it's no more efficient than viewing the Markdown document in the original repo. Seems like a high priority.

@mileserickson I understand your frustration.
The reason it works this way is that from the beginning, correctness of rendering was chosen over offline availability. It's absolutely a limitation, but with the recent test improvements in #148 and 2c37cc455ad34a0b4a05482d31f7f7877ee58c59, it'll be easier to make sure correctness is preserved in an offline renderer.

I'm confused as to why I would use Grip at all, if it's no more efficient than viewing the Markdown document in the original repo.

Grip solves the problem of viewing Markdown before committing to the repo. Offline mode solves the additional problem of viewing without an internet connection. (That's still necessary for viewing the Markdown document in the original repo, btw).
I'm planning on addressing this at some point, unless someone else jumps in. However, I have fewer large windows of time for big changes these days. Being aware of that actually influenced the original decision. (Nobody likes waiting for a busy maintainer to change and deploy code every time GitHub tweaks or updates their styles.)
In the meantime, could you try the workaround? That'll prevent others on your network from using up your own rate limit. Here's how:

Generate a Personal Access Token

Copy the token

Create a ~/.grip/settings.py file:
$ cd ~
$ mkdir .grip
$ cd .grip
$ touch settings.py

Add the token to your new settings.py file:
PASSWORD = 'YOUR-ACCESS-TOKEN'

Eventually this auth experience will be also improved (see #82).
Thanks for trying out Grip and for being patient. Let me know if I can help in any other way.

The solution above worked for me.

Is it still the plan to implement offline renders? I don't need a perfect render, just something usable for reading markdown books.

@astrodad It is. For me personally, I probably won't start until late summer or in the fall.
Thanks for checking in!

Great. I'll take a look at the code but my Python is as good as my mastery of the Force.

Any updates on this matter? :blush:

What is holding up the offline renderer?

I just hit the rate limit, and followed the instructions above to set up a personal access token, which worked great. True offline access would be great, but this is a fine workaround. Am I correct in thinking that this would be the superior solution to supplying --user and --pass on the command line? If so, it seems that grip/templates/limit.html should be updated.
If you'd like, I can create a separate issue. Also, I can take this on and issue a PR when ready.

FWIW, I wonder if the initial offline renderer could be documented as not-exact.  That is, for the sake of getting offline rendering off the ground, just state that the offline renderer won't be perfect.  My guess is that many of the people needing that support don't care that it isn't exact, they will be happy to just have offline rendering that is close.
Then, over time, the offline renderer could be brought up to par.

It's going to be hard to find a render that does things exactly offline like GitHub unless you want to use their Markdown parser...which I think is Redcarpet?  Maybe I'm wrong.
You can get githubish though with Python Markdown.  I have a branch over here where I enabled offline mode: https://github.com/facelessuser/grip.  It's using my dev branch of extensions here: https://github.com/facelessuser/pymdown-extensions/tree/dev.  These extensions don't aim for 1:1 exactness for Github (nor do I think I would ever go that far due to inherent differences in parsers), but much of it is inspired by Github.  It handles emojis (uses a literal index from their Gemoji repo), githubish emphasis, tasklists, auto-linking links and emails etc.  It's more than workable for  a test offline rendering.  Just saying there are closish things.
Not saying you should use anything from here, just letting you know some options that are available.
Anyways, this is a nice project that I've started using on my Github readmes and such.

First of all, thanks for grip. I just discovered it and now I use this script to use the offline renderer:
#!/usr/bin/python3
from grip import serve
serve(render_offline=True)

I use python 3.6. To make this script work I have to comment out 4 lines from line 122 in ~/.local/lib/python3.6/site-packages/grip/renderers.py
        #if markdown is None:
            #import markdown
        #if UrlizeExtension is None:
            #from .mdx_urlize import UrlizeExtension

Is this normal?
The most obvious rendering problem is that with lists there must be a preceding empty line. This also results in TOCs without indentation. Any idea for a quick fix?

It is a limitation (or I should say according to spec) of the Python Markdown library which is used to render the HTML from Markdown. There is no easy way fix/change.  You would have to override the default extensions to rework then in a way that is closer to GFM.
To be honest closer is all I think you could ever get with Python Markdown.  You can achieve GitHub-ish results, but you will never get 1:1 results.  For 1:1 results in Python, you would have to port GFM directly to Python.

@facelessuser thanks for the assessment. Then I think it will be better to change https://github.com/jonschlinkert/markdown-toc to produce a Python Markdown compatible TOC output.

@facelessuser

To be honest closer is all I think you could ever get with Python Markdown. You can achieve GitHub-ish results, but you will never get 1:1 results. For 1:1 results in Python, you would have to port GFM directly to Python.

I agree. I did a little bit of searching an found a question on SO about GFM in Python with an accepted answer that states the following:

GitHub uses Redcarpet which is really a Ruby binding built by github for Sundown.
There's a binding for Sundown in Python called Misaka. If you want to have something closer to the renderer github uses but in python you might start there.

So in case anyone has the time, perhaps it would be fruitful for them to look into Misaka? The official repo for Misaka is on GitHub; https://github.com/FSX/misaka.
The GitHub repo description of Misaka reads "A Python binding for Hoedown". Hoedown, in turn (also on GitHub) is described in the README as "a revived fork of Sundown".
Misaka is published on PyPi, so it can be installed simply by issuing pip install misaka, provided that one has Hoedown installed.

If anyone decides to go the Misaka route, note also one of the comments on the accepted answer in the SO thread:

This is how I made it work. If someone else is planning to use misaka, please beware of this

I use python 3.6. To make this script work I have to comment out 4 lines from line 122 in ~/.local/lib/python3.6/site-packages/grip/renderers.py
    #if markdown is None:
        #import markdown
    #if UrlizeExtension is None:
        #from .mdx_urlize import UrlizeExtension

Is this normal?

I have the same problem with python 2.7

@davestewart The API rate limit bit me repeatedly - especially when trying to 'live edit' a markdown file - so I wrote a markdown converter that also works offline. It's not pixel-perfect compared to grip, but it comes close.
It's called marge and you can install it via snap, ppa, deb, or tarball. Code is on gitlab. Be aware that it's a rather fresh project, there might still be occasional hiccups.
@joeyespo Feel free to snatch code from me for grip's offline-mode. If you can settle for less than 100% conformity with online-grip then I can help you with the implementation. Please also let me know if you would like me to remove this shameless plug.

@OleMussmann - I created a ticket on GitLab.

Subscribing for interest in this feature.
As far as an MVP of offline rendering goes, my usage of this program is to export README.md to README.html as a precursor to using README.html as an "overview" for the generated documentation for a project.  (i.e. groovydoc accepts an HTML document to be merged into the index.html for generated documentation).  Pixel-perfect rendering and syntax highlighting isn't required, just a basic conversion of markdown into HTML.

@ianfixes — for HTML documentation, I strongly encourage you to check out Markdeep. In addition to standard Markup, it supports diagrams, mathematical notation, and a whole host of very useful additions.
For an example, the Ray Tracing in One Weekend series is written entirely in Markdeep: https://raytracing.github.io/. Not only do you have a much larger palette of documentation features, you also have complete freedom to style as necessary with standard CSS.

That seems interesting, but anything beyond what Github would be rendering on their site is wasted in my particular use case.
I ended up using GitHub's own ruby gem called redcarpet:
require 'redcarpet'

puts "Reading README.md"
input = File.read("README.md")

puts "Initializing GFM -> HTML converter"
renderer = Redcarpet::Render::HTML.new(
  no_images: true,
#  no_styles: true,
)
markdown = Redcarpet::Markdown.new(
  Redcarpet::Render::HTML,
  no_intra_emphasis: true,
  autolink: true,
  tables: true,
  fenced_code_blocks: true,
  lax_spacing: true,
)

puts "Rendering markdown to HTML in #{OVERVIEW_FILE}"
intro = "via [README.md](https://github.com/my/repo):\n"
output = markdown.render(intro + input)
File.write(OVERVIEW_FILE, output)

Any update on this? :)

Is there any reason the API-returned data isn't simply cached?  I don't see why it needs to be loaded for every single page render.

Is it still the plan to implement offline renders? I don't need a perfect render, just something usable for reading markdown books.

@astrodad Try using something like Typora, it gives you a preview of how it will look like. I just use Grip in conjunction with Typora because they really work well together with Typora being the editor and Grip being the viewer/exporter.

I can confirm that Typora is a bloody brilliany MD editor:

https://typora.io/

Their GitHub theme needs a bit of work (it's not exact) but is pretty close.
You can also set up your own theme (I couldn't be bothered TBH)

In case anyone is looking to implement this, GitHub's renderer is available at https://github.com/github/cmark-gfm and there are various Python bindings. You'll have to figure out the right combination of flags, something like cmark-gfm -e table -e autolink --github-pre-lang. You'll also need to get the CSS correct. But perhaps this is enough to get someone started.

Is there any reason the API-returned data isn't simply cached? I don't see why it needs to be loaded for every single page render.

I personally think this would be easy-ish to implement and won't break too many things, will it? The cache can be refreshed when it gets older than an hour or a day maybe. And it can also be forcefully refreshed if the user wishes to do so.

Personally I'd argue for never updating the cache unless the user requests it, but yeah your thoughts match mine.

Ended up with uninstalling grip and using glow

I have been using grip for markdown preview, conversion, and PDF saving on macOS for years. So thanks.
However, lately, I've started running into GitHub API limits. I found this quite interrupting of my flow, so I looked into other options. I learned that Atom has a nice Markdown preview package built in now (available by default, and on GitHub here).
So, my current approach is to build my GitHub-flavored Markdown document in Atom with the preview function running, then to do a 'final' run with grip and save as PDF from my browser window (e.g. Safari).
I also tried glow (mentioned above). It is cool but not as nice looking and doesn't really seem to work well for my purposes, so I can't recommend it.
 I could get the shiny app to run but I could not get it to correctly display my markdown, so I cannot recommend it.
Hope this helps someone. ~J

Thanks to @justincbagley for elaborating on his experience in trying several other options and kindly sharing with the community.
Unfortunately, it looks like grip is abandoned. The last commit is three years ago.  Sadly this happens to more than one open source projects I have been using and liking. Maybe it's time to move on. If someone is interested in taking the maintenance job and make a fork, all discussions can be transferred there. Transferring the project to jazzband is yet another option.

It's a sheame, this is a really neat package when combined with vim-grip

I just use pandoc now. Get the style sheet for github, and use it with vim/zathura. Bind f5 to rebuild the document
-------- Original message --------From: Zeioth @.> Date: 12/17/21  10:16  (GMT-05:00) To: joeyespo/grip @.> Cc: Fred Frey @.>, Manual @.> Subject: Re: [joeyespo/grip] Complete the offline renderer (#35)
It's a shame, this is a really neat package when combined with vim-grip
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

In the end I took this strategy on vim-grip:
nnoremap <C-n> :GripStart<CR>:sleep 1<CR>:GripStop<CR>

This runs grip to render the document in the browser, and then stops grip. This way even 60 requests is enough. My main problem was that grip is real-time and I was running into the rate limit after a couple minutes.

I ended up using GitHub's own ruby gem called redcarpet

That's actually an underrated comment. Accompanied with the right CSS this comes pretty close to the original. Only if there was a way how we could extracts all the necessary CSS from GitHub. Luckily there is already a project doing exactly that: https://github.com/sindresorhus/github-markdown-css.
So inspired by this I hacked together a script which pretty much replaces grip for me: https://gist.github.com/bitti/016ea088f1e9dfc7120eb5f8c937c2da. Even though it's a hack I think it works pretty well, as long as you don't also need syntax highlighting (which I suppose would be much more work, maybe by integrating PrettyLights or starry-nights?).

The --render-offline didn't make the 2.0 release, because it doesn't render the same content as GitHub.

If it's close enough for 95% of cases maybe ship it with a warning?

How to Contribute to Open Source
Open source runs on non-code contributions
Revitalizing stalled open source projects
Avoiding common pitfalls when first contributing to open source - Tips and tricks for getting started
5 Ways to Get Started in Open Source
How to contribute to open source
How to contribute to Codeberg.org

Update
I have investigated the feasibility, not sure if it will be the best approach but I think for an mvp I can make it work.
I built a small python script that runs node as a subprocess in a separate thread. The nodejs script uses https://github.com/markdown-it/markdown-it to render the markdown file and outputs a output.html file which seems to render the file offline successfully.
I use [vscode-github-markdown-preview-style](https://github.com/mjbvz/vscode-github-markdown-preview-style) extension to render .md files on vs-code and upon going through the code base, I discovered that they have a very good css github theme that I built locally and added to the render.
Now this is more like hot wiring and would probably be best to just use a nodejs server directly but as a proof of concept it seems enough.
Will dive deeper, design and implement this properly soon so that I can open a PR and get insights from those who are interested.
Results
output.html


Consider making Map.unmodifiable() and Set.unmodifiable() check & if valid mark those maps/sets as immutable

The Map.unmodifiable() and Set.unmodifiable() calls already do an O(n) allocation and element copy. We could consider adding a check there whether all underlying elements are immutable and then mark the resulting objects as immutable. (analogous to List.unmodifiable() - as in https://github.com/dart-lang/sdk/commit/896e535fe92e96e0b78f64f1587a58b3411c3680)

Map and Set might not always do a copy if we implement a linear retagging optimization.
We miss on the opportunity to optimize List.unmodifiabled([ ..something.. ])) by avoiding the copy and directly calling makeListFixedLength and  makeFixedListUnmodifiable.
Similar optimizations would be very profitable for Map and Set, since they could avoid re-hashing.
In a large code-base about a third of calls to List.unmodifiable have a list literal as an argument.
Looking at a sample of these, they are just used to protect data from modification in the local isolate. There is no need for deep immutability detection. I suggest that we design an API that does deep immutable tagging rather than adding unnecessary expense and inflexibility to this common use case. We could start with considering adding List.immutable which fails if the structure is not deeply immutable.

We can only avoid the linear copy if we can proof that "ownership" of the array was given to List.unmodifiable() and nobody else has a reference to it.
As you point out, the main case where this is possible is where the caller allocates such a list. But then we do have an allocation & initializing stores right there. The stores may also need write barriers, which already load the tags of the objects, so checking for an extra bit doesn't seem that bad.

Similar optimizations would be very profitable for Map and Set, since they could avoid re-hashing.

They can avoid rehashing in either case, can't they?
In general performance of the <collection>.unmodifiable() implementations are currently very slow in general due to a number of factors. I think we should start working on that first. Filed https://github.com/dart-lang/sdk/issues/51341. Once the actual performance bottlenecks are addressed, we can start measuring whether an immutability check adds meaningful overhead (it does not do so atm).
Note that we do not make any promises about this behavior anywhere - as such we are at liberty to change it if we deem this suitable.

We could start with considering adding List.immutable which fails if the structure is not deeply immutable.

Would dart2js be willing to implement such an API?

Since it's not consistent across collections and the change for List.unmodifiable did show some regressions, I'll revert it.
Though I'm still very interested in trying this again with a more optimized version, across {List,Set,Map}.unmodifiable(), record constructors, classes with all-final fields and seeing how much it would regress them if we optimize it (also taking static types into consideration).

Wouldn't it be possible to simplify and speed-up this by limiting ourselves to the literal construction?
Then, if a key or value object coming from (operation on) an iterable comes marked as
unmodifiable, we're set (use reference). Otherwise object is copied to "ours" memory.
    Map.unmodifiable(<K, V>{for (var v in iterable) key(v): value(v)});

Here compiler knows we're building an immutable piece of data. No reference scanning involved.
(just a thought)

Here compiler knows we're building an immutable piece of data. No reference scanning involved.

That depends on what key(v) and value(v) returns. It may return an object with non-final fields, so it's a mutable object. Sharing the outer data structure by-pointer, will share everything transitively, therefore giving access to shared mutable state.
The language doesn't have any concept of immutability right now. We do have the const sub-language, but it's not expressive enough for this purpose.


aappinfo

foreground app

package name
build number and version
more?

rename aerase to aappwipe?

adb shell dumpsys package my.package | grep versionName


initial translate to Thai language

Thank you @merxer!  Could you please remove the English lessons and rebase your branch?  Thanks

Completed to change default English to Thai
Thanks

@merxer it looks like this needs to be rebased before it can merge

Hi @merxer, any chance you can rebase so we can merge your changes in and announced the start of the Thai translations?

rebase completed,

Hi Sean,
Sorry for late reply, completed to rebase
:)
Thanks
On 17 July 2016 at 03:41, Sean Callan<EMAIL_ADDRESS>wrote:

Hi @merxer https://github.com/merxer, any chance you can rebase so we
can merge your changes in and announced the start of the Thai translations?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/doomspork/elixir-school/pull/421#issuecomment-233150019,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AO2cQAo5yeQ8t-TGgzge7QF7AWbDcpp0ks5qWUIOgaJpZM4IpMTY
.

@merxer could we open a new PR from your master branch?  The rebase seemed to add a lot more commits to your PR

Dear Sean,
NO, I need to start new translate and then open new PR to you
BRs,
Thawatchai S.
On 25 July 2016 at 21:11, Sean Callan<EMAIL_ADDRESS>wrote:

@merxer https://github.com/merxer could we open a new PR from your
master branch? The rebase seemed to add a lot more commits to your PR
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/doomspork/elixir-school/pull/421#issuecomment-234964171,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AO2cQHT4QYgOIOaEO3hOXMzMRZTSK_G1ks5qZMP6gaJpZM4IpMTY
.


[BUG] My Instagram account got locked

HI I've tried to run a simple program that will just look at cristiano ronaldo following count but when I ran the program it just locked my instagram account
`def check_user_follower():
try:
cl = Client()
cl.login("x","x")
user_id = cl.user_id_from_username("cristiano")
Follower = cl.user_followers(user_id)
print(Follower)
except Exception as e:
print(e)
`
Traceback###
ChallengeResolve: Unknown step_name "submit_phone" for "akintilo_steeven" in challenge resolver: {'step_name': 'submit_phone', 'step_data': {'phone_number': 'None'}, 'flow_render_type': 3, 'bloks_action': 'com.instagram.challenge.navigation.take_challenge', 'cni':<PHONE_NUMBER>7016490, 'challenge_context': '{"step_name": "submit_phone", "cni":<PHONE_NUMBER>7016490, "is_stateless": false, "challenge_type_enum": "SMS", "present_as_modal": false}', 'challenge_type_enum_str': 'SMS', 'status': 'ok'}

@steevenakintilo you have not set up the settings.json which keeps a session, you have probably been banned because every time you run that code it will log in EVERY time. Also looks like you haven't attached a phone which may be required now?

Hi @official-antique how do I set up the settings.json file??? what do I need to put inside?

Line 27-32 is what you're looking for, it'll use the created session after an initial login: instapy2_base.py


Why does GPT-4 perform worse than GPT-3.5 which is on the official site.

Please don't mind that the text looks like it has been pasted, I have deliberately translated it into the right comfortable language.
Just wondering why this happens all of a sudden you know.
Putin is 70. I hope this question did not offend anyone.
It's just not the first time I noticed it, only in my own experiments with the API GPT.

Put todays date in system prompt and try again (chatgpt website puts todays date in the system prompt).


Please consider fixing issues detected by repository checker

Notification from ioBroker Check and Service Bot
Dear adapter developer,
I'm the ioBroker Check and Service Bot. I'm an automated tool processing routine tasks for the ioBroker infrastructure. I have recently checked the repository for your adapter viessmann for common errors and appropiate suggestions to keep this adapter up to date.
This check is based the current head revisions (master / main  branch) of the adapter repository
Please see the result of the check below.
ioBroker.viessmann
   -
:thumbsup: No errors found
WARNINGS:

[x] :eyes: [W173] Potential sensitive data "password" not listed at "protectedNative" in io-package.json
[x] :eyes: [W174] Potential sensitive data "password" not listed at "encryptedNative" in io-package.json

SUGGESTIONS:

[ ] :pushpin: [S139] Please evaluate whether adapter can be modified to support compact mode
[ ] :pushpin: [S522] Please consider migrating to admin 5 UI (jsonConfig).

Please review issues reported and consider fixing them as soon as appropiate.
Warnings reported by repository checker should be reviewed. While some warnings can be ignored due to good reasons or a dedicated decision of the developer, most warnings should be fixed as soon as appropiate.
Suggestions reported by repository checker should be reviewed. Suggestions can be ignored due to a decision of the developer but they are reported as a hint to use a configuration which might get required in future or at least is used be most adapters. Suggestions are always optional to follow.
You may start a new check or force the creation of a new issue at any time by adding the following comment to this issue:
@iobroker-bot recheck
or
@iobroker-bot recreate
Please note that I (and the server at GitHub) have always plenty of work to do. So it may last up to 30 minutes until you see a reaction. I will drop a comment here as soon as I start processing.
Feel free to contact me (@iobroker-bot) if you have any questions or feel that an issue is incorrectly flagged.
And THANKS A LOT for maintaining this adapter from me and all users.
Let's work together for the best user experience.
your
ioBroker Check and Service Bot
@mcm1957 for evidence
Last update at Fri, 18 Oct 2024 06:22:23 GMT based on commit 94d8c54419708f61610174bae8e047271fc0175e
ioBroker.repochecker 3.1.3

The Warning problems are done since a while!
Compact mode is too unsafe for this adapter.
JSON UI is currently not an option for me.


[Utility] Fisherman Protocol - Charts & Diagrams

Objective
Create sequence diagrams and flow charts for the fisherman protocol.
Origin Document
The fisherman protocol is the core of the V1 Pocket Network. As described in the V1 Pocket Network Utility Fisherman Protocol Specification, there are a lot of moving parts here.
Goals

[ ] Make the spec clearer so that it is easier for others (new tea members or external contributors) to understand
[ ] Preparatory work / clarification that can be used to define the interface of the "fisherman protocol module" in a follow up task
[ ] Preparatory work / clarification that can be used to implement an isolated "fisherman protocol module" that can be developed and tested in isolation using mocks of dependencies

Deliverables

[ ] A sequence diagram showing the types of requests and flow of data throughout a fisherman's lifecycle using mermaid flow charts. Note that more than one may be necessary. For an example, see what we have in the persistence module architecture doc.

[ ] A flow chart showing which components and modules are involved in the fisherman protocol using mermaid flow charts

[ ] Follow up tasks of things that need to be design and implemented (e.g. fast sync design, slow sync implementation, etc...)

Non-goals

Defining or updating the codified interface to be used by the fisherman protocol
Implementing any part of the fisherman protocol (i.e. no code)
Modifying the fisherman protocol

Creator: @Olshansk
Co-Owners: @andrewnguyen22

closed in favor of https://github.com/pokt-network/pocket-network-protocol/issues/12

@jessicadaugherty Just FYI that per this change, some of our work (related to specs) will be tracked in the other repository (https://github.com/pokt-network/pocket-network-protocol/issues/12) and therefore not show up in the V1 dashboard: https://github.com/pokt-network/pocket/projects

@jessicadaugherty Just FYI that per this change, some of our work (related to specs) will be tracked in the other repository (https://github.com/pokt-network/pocket-network-protocol/issues/12) and therefore not show up in the V1 dashboard: https://github.com/pokt-network/pocket/projects


Scopes are shown in hover on a function

Testing #15359
See the following snippet
var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function (req, res, next) {
  let object = someFunction();
  res.render('index', { title: 'Express' });
});

function someFunction() {
  return [1, 2, 3];
}

module.exports = router;

When I have a break point on the following line
 let object = someFunction();
If I hover on someFunction() I see following hover which is having scope details. I am not sure if it makes sense to show scopes there

I don't want to exclude any properties that come from the runtime. The [[...]] props are special things that aren't JS props but sometimes have vital information. And they show up in chrome devtools.


Documentation on installation

Trying to install on a non GCE cluster, I get an error right off the bat:
$> make install
make: gcloud: Command not found
make: gcloud: Command not found
go run vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go all
vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go:25:2: cannot find package "sigs.k8s.io/controller-tools/pkg/crd/generator" in any of:
        /usr/src/sigs.k8s.io/controller-tools/pkg/crd/generator (from $GOROOT)
        /home/user/go/src/sigs.k8s.io/controller-tools/pkg/crd/generator (from $GOPATH)
vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go:26:2: cannot find package "sigs.k8s.io/controller-tools/pkg/generate/rbac" in any of:
        /usr/src/sigs.k8s.io/controller-tools/pkg/generate/rbac (from $GOROOT)
        /home/user/go/src/sigs.k8s.io/controller-tools/pkg/generate/rbac (from $GOPATH)
make: *** [Makefile:47: manifests] Error 1

If I try with NOTGCP, I get a different error:
make install NOTGCP=true
go run vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go all
vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go:25:2: cannot find package "sigs.k8s.io/controller-tools/pkg/crd/generator" in any of:
        /usr/src/sigs.k8s.io/controller-tools/pkg/crd/generator (from $GOROOT)
        /home/user/go/src/sigs.k8s.io/controller-tools/pkg/crd/generator (from $GOPATH)
vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go:26:2: cannot find package "sigs.k8s.io/controller-tools/pkg/generate/rbac" in any of:
        /usr/src/sigs.k8s.io/controller-tools/pkg/generate/rbac (from $GOROOT)
        /home/user/go/src/sigs.k8s.io/controller-tools/pkg/generate/rbac (from $GOPATH)
make: *** [Makefile:47: manifests] Error 1`

I am probably doing something wrong. I tried installing those packages, but only see this in the corresponding directory:
ls src/sigs.k8s.io/controller-tools/pkg
total 40K
drwxrwxr-x. 10 user user 4.0K Aug 13 20:18 .
drwxrwxr-x.  6 user user 4.0K Aug 13 20:18 ..
drwxrwxr-x.  4 user user 4.0K Aug 13 20:18 crd
drwxrwxr-x.  3 user user 4.0K Aug 13 20:18 deepcopy
drwxrwxr-x.  3 user user 4.0K Aug 13 20:18 genall
drwxrwxr-x.  3 user user 4.0K Aug 13 20:18 loader
drwxrwxr-x.  2 user user 4.0K Aug 13 20:18 markers
drwxrwxr-x.  3 user user 4.0K Aug 13 20:18 rbac
drwxrwxr-x.  2 user user 4.0K Aug 13 20:18 typescaffold
drwxrwxr-x.  2 user user 4.0K Aug 13 20:18 webhook

Probably user error, but maybe this would benefit from better documentation.


Error Fetching Data!

Error Fetching Data!: Please wait a minute before trying again. The plugin was working great for me for several months, its now currently stuck doing this. I haven't made any changes to the sheet or API that I am aware of that would cause this. I have not tried changing the API key. Do you have any suggestions? I really love this plugin its been a treat to be able to use, so thankyou for making it available!

Its probably your google sheet.  Look at the example I have on the readMe page and make a copy of it for your use.


dotnet-sdk_8.0: 8.0.0-preview.5.23302.2 -> 8.0.0-rc.1.23421.29

Description of changes

https://github.com/dotnet/core/blob/main/release-notes/8.0/preview/8.0.0-rc.1.md
Support for win-arm was dropped in this RC version: https://github.com/dotnet/runtime/discussions/71042 https://github.com/dotnet/aspnetcore/issues/50791
I've updated update.sh to reflect these changes and only install win-arm packages on versions older than .NET 8.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 256440 run on x86_64-linux 1

3 packages built:

dotnet-aspnetcore_8 (dotnetCorePackages.aspnetcore_8_0)
dotnet-runtime_8 (dotnetCorePackages.runtime_8_0)
dotnet-sdk_8 (dotnetCorePackages.sdk_8_0)

duplicate of #254991


Fix ListView issues

This should fix RHCLOUD-23287 and RHCLOUD-23286

Added a default value for emptyStateDescription ListView prop
Fixed infinite loop when no filters passed to ListView

/approve

@florkbr can we get ACK on this one? It'll close all other list view issues.

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.03 :tada:

Comparison is base (1b0781f) 40.02% compared to head (6a869f6) 40.05%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #226      +/-   ##
==========================================
+ Coverage   40.02%   40.05%   +0.03%
==========================================
  Files          69       69
  Lines        1684     1685       +1
  Branches      361      362       +1
==========================================
+ Hits          674      675       +1
  Misses        976      976
  Partials       34       34

Impacted Files
Coverage Δ

...es/lib-utils/src/components/list-view/ListView.tsx
82.05% <100.00%> (+0.23%)
:arrow_up:

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


Update record.py with count spell error

 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.


procps-ng 3.3.13 source changed?

Issue description
Building procps-ng from current master gives:
trying https://gitlab.com/procps-ng/procps/repository/archive.tar.gz?ref=v3.3.13
unpacking source archive /dev/shm/nix-build-source.drv-0/archive.tar.gz?ref=v3.3.13
fixed-output derivation produced path '/nix/store/djgz5mj4sw2d8wba3jh3zwk6kns5ravy-source' with sha256 hash '0l2xfm3vr8qpzvdnkcvmfj1rdw6lxx840zw9vp0z9f008y5fc31g' instead of the expected hash '0r3h9adhqi5fi62lx65z839fww35lfh2isnknhkaw71xndjpzr0q'

Just updating the sha256 in the fetch leads to a patch error later on, so it seems like the source must have changed.
Steps to reproduce
nix-build -A procps-ng
Technical details

system: "x86_64-linux"
host os: Linux 3.10.0-693.5.2.el7.x86_64, CentOS Linux, 7 (Core)
multi-user?: no
sandbox: yes (not really -- not sure why nix-info thinks otherwise)
version: nix-env (Nix) 2.0

I too get 0l2xfm3vr8qpzvdnkcvmfj1rdw6lxx840zw9vp0z9f008y5fc31g.

/cc maintainer @typetetris

(I did the update to 3.3.13, so I am also somewhat responsible O:))
Curiously:

When forcing a refetch, I too get the new hash.
Noticing 3.3.14 is available (including patches we were applying ourselves), I bumped the version... but the hash is still the same--the new one (0l2xfm3vr8qpzvdnkcvmfj1rdw6lxx840zw9vp0z9f008y5fc31g)!!

Perhaps fetchFromGitLab is broken, at least for this repository??
FWIW their website offers the following as the download URL:
https://gitlab.com/procps-ng/procps/-/archive/v3.3.14/procps-v3.3.14.tar.bz2
(compared to what we're using: https://gitlab.com/procps-ng/procps/repository/archive.tar.gz?ref=v3.3.13)
Hmm....

Update:
Here's our definition for fetchFromGitLab:
  # gitlab example
  fetchFromGitLab = {
    owner, repo, rev, name ? "source",
    ... # For hash agility
  }@args: fetchzip ({
    inherit name;
    url = "https://gitlab.com/${owner}/${repo}/repository/archive.tar.gz?ref=${rev}";
    meta.homepage = "https://gitlab.com/${owner}/${repo}/";
  } // removeAttrs args [ "owner" "repo" "rev" ]) // { inherit rev; };

Interesting bits are:

ref=${rev}
procps-ng sets ref (as it should, since version tags are not revisions!) which AFAICT our fetchFromGitLab .. happily ignores? :(

ref=${rev} looks weird.
I just set  rev = "2fc2427ed374f96a5079e4b8b4a6d36192c873ac"; to pin the commit, and got the hash 0l2xfm3vr8qpzvdnkcvmfj1rdw6lxx840zw9vp0z9f008y5fc31g as well.

If fetchFromGitLab is broken let's fix that, instead of working around this.

fetchFromGitLab is broken, you can just try different (even nonsense) values for the ref URL parameter and you will always get an archive for HEAD of master branch. I will dig up the documentation of gitlab on how to fetch archives for specific commits.

Few related-maybe issues upstream, investigating...

https://gitlab.com/gitlab-org/gitlab-ce/issues/31530
https://gitlab.com/gitlab-org/gitlab-ce/issues/19843#note_53310965

And apparently ~5 days ago there is this comment that suggests the "new" URL format as I stumbled across as part of the PR moving to the next version:
https://gitlab.com/gitlab-org/gitlab-ce/issues/38830#note_68374704

Extracting the URL from a working button in there UI https://gitlab.com/procps-ng/procps/-/archive/v3.3.14/procps-v3.3.14.tar.bz2 seems to work .... That is the format mentioned in the issues @dtzWill found, but it doesn't seem to be properly documented. Should we still use that?


chore: golf some term/rw proofs using linear_combination

!bench

I won't approve this yet, as it's still labelled WIP - but from a cursory look, these golfs look great!


[1360] Add modular reservations calendar

Resolves #1360

Add Calendarable controller concern to generate HTML, JSON, and iCalendar representations of all the reservations for a given resource
Add calendarable routing concern and clean up config/routes.rb
Add Reservation#end_date to find the last day for a reservation, status-dependent (with model specs)
Add the associated controller specs as a shared example as well as feature specs for equipment models
Add calendars for categories, equipment models, and equipment items
Fix routing issue with jQuery-UI-Bootstrap assets

This is a big one, so I'd appreciate it if everyone took a look over the next week or so so we can catch any and all bugs. Thanks!

Trying to get the JS tests working - had to modify Travis.yml to run specs with an X-server for capybara-webkit.

Just checked out the branch and ran it locally. It looks really beautiful. I like how it can gives you a good sense of how many items are being checked out over a busy week or a not so busy one. The color coding is amazing too, so that you can see which ones have been returned/completed, and which ones haven't been.
One thing that bothered me a little though was the specified start and end date range. Since the calendar itself goes month by month and it's possible to scroll past the range of dates (albeit a bit rare since the default range is +- 6 months), it could potentially lead to some confusion. Perhaps, it would be possible to limit the changes to a monthly change, Ex. January 2015 to February 2016, which would align a bit more closely with the design imo.
Another suggestion that came to mind was that perhaps we could use javascript to disable the scroll buttons (or grey out days on the calendar) when we were outside of the range, to reduce confusion.

Another minor thing, the text on the button for "today" on the calendar isn't capitalized, but I couldn't find it in the code.

Thanks @AlanLiu96, that really means a lot! You made a great point about the date range (and it was my least-favorite aspect of this feature) - I'm thinking we might be able to have FullCalendar re-issue requests for a new JSON response each time you change months (and maybe we'd bracket the range with a week at either end to ensure we don't miss anything). I'm switching this back to "Working" and will try to make that happen (and fix the typo you found). I'll re-comment when it's ready for review again.

Turns out that FullCalendar does this by default, so I just had to tweak some param handling to get everything to work.
I also updated the views so that there's a res_calendar partial that can be added to any page (as long as a prepare_calendar_vars is added to the controller action) - for an example see the equipment item show page (make sure you have a reservation checked out to that item). I finally tweaked the query methods to include overdue reservations even if they don't overlap with the current calendar date range.
Finally, I was able to capitalize the "Today" button on the calendar :smile:. Review away!

Had to deal with a merge conflict and squash an errant commit - now it's really ready!

Awesome! I like it much better now, its so much more clear without those other date ranges. I think that in the future, it would also be helpful for each user to have a similar calendar, but that can probably wait until a later time. I took a look through the code and it all seems fine to me.

It's actually almost trivial, I'll add the Calendarable concern to the UsersController and we can at least add a link for the calendar to the profile. Thanks for the review!

Just realized I accidentally left in jquery_datatables_rails in the Gemfile (I think) - I'll double check and fix if necessary.

This button should probably say "Today"

A few possible additions:

Reservation status in the calendar item ("Name - Status" instead of just the name)
Different colors for calendar items that overlap days
Equipment Model name in the calendar item for categories and users calendars
Nitpicky but I think that the highlight on today in the calendar could be a bit more obvious

@esoterik are you sure you used the latest branch? I had already updated the "today" button to be capitalized...

To address your other comments:

Done (added  + " (#{res.human_status.humanize.downcase})" after the reserver name)
Do you mean if we have two like reservations that overlap? Having an array of colors for each status might work but then we lose our color coding (admittedly, we don't have a legend but I can add one).
Great call, I'll have to add some hackery to make this controller dependent.
Done

Also added a legend :smile:.

To address 2 -- I meant for overlapping reservations, regardless of status

Hmm, maybe we don't need a textual status if we have a legend? It seems redundant now
Also, the reserver name doesn't show in the category calendar.

I agree that writing the status in is redundant now that we've added a legend, so I'll take that out.
In terms of the reserver showing up in the category calendar, I can't see an easy way to implement that in a customizable way. Right now we simply pass a symbol of the method to be called on each reservation that will have the name of the event (e.g. reserver or equipment_model), but I don't see how I could add both. I'm comfortable leaving it as-is (with the equipment model name), if they click on the event they'll see all of the information.
Still not 100% sure what you meant by the overlapping thing, something like the following? What was the problem?

Oh, yeah, I forgot to clarify that. Basically I was just suggesting that no reservation on the same day should have the same color on the calendar, but I didn't realize that the color changed with status when I suggested that, so I'm not sure if it would be an improvement now.

Got it; given a) the difficulty of identifying overlapping reservations and the limited number of colors I think we want, plus the color-status association, I think we're better off leaving it as is - people will figure it out. If there's nothing else, am I good to merge this in?

(I just rebased on the latest master and re-pushed, there were no conflicts so I assume the build will happily pass)

Had to rebase to resolve a merge conflict, added the documentation as discussed. @esoterik can you take a look again?

okay, this looks good to go!


GH Action Failures - check vcs permalinks

The check vcs permalinks GitHub action is failing against the main branch.  This check should be remediated or disabled to avoid false failures on all contributor PRs.
See https://github.com/aws-ia/standards-terraform/pull/22/checks?check_run_id=5855384013 for https://github.com/aws-ia/standards-terraform/pull/22 or https://github.com/aws-ia/standards-terraform/pull/20/checks?check_run_id=5789503848 for https://github.com/aws-ia/standards-terraform/pull/20

Closing this since it was resolved in the mega PR addressing a bunch of broken things, but not referenced.  https://github.com/aws-ia/standards-terraform/pull/29


Embeds in Ephemeral Messages soon to be supported

Mentioned here ephemeral embeds are soon to be supported so you may want to keep this in mind as this library checks for embeds in an ephemeral message and throws an error.

Thanks for the heads up! This should be patched in 1c73244. I'll push a release out soon as well :+1:


Bug Abuse for Level Up

Problem
Some people have found multiple near wallet leveling methods to take advantage.
They serially turn on/off Two-Factor Authentication.
Expected Behavior
It gives 130 points.
If you score 1, you'll likely avoid abuse.
Steps to reproduce

@betrin00 can you provide additional details, this doesn't provide much information about what the bug is and what is Level Up?  Is this a DApp?

https://www.linkpicture.com/q/12313.jpg


When cloning a node template UI says it is editing

Version: Master 2.2 (2/19/19)
What kind of request is this (question/bug/enhancement/feature request):
Bug
Steps to reproduce (least amount of steps as possible):

Create a node template
Clone it

Result:
You will see in the UI it says you are Editing (null) template

The clone actually does seem to work but in the UI it is confusing that it says editing. The form submission button should probably be a clone button too.

Version: Master 2.2 (2/25/19)
Encountered issue. The clone node template modal now has a fixed title, but cloning is not working as expected.

I noticed when I clone now my old data is not shown. Rather default data is shown and so my data is not preserved and I am not really cloning anything I am just making a new template with defaults.
@westlywright ^^ New issue for this or re-open this issue to address the problem?

Version: Master 2.2 (2/26/19)
Confirmed issue. The modal now says "Clone node template from: (nodeTemplate)

When I clone my data is there now. You can see my custom region and droplet size that are not default from the source node template:

Successfully save the clone and ensure HTTP/API looks correct.
Successfully utilize the clone template and ensure is working correctly (correct nodeTemplateId used in nodepool POST)


any screenshot for this ui?

would you mind to provide any screenshot for this ui?

(Note: top-left logo is a customized from the default logo)

Keep opening to add "Admin UI" document in our homepage.

Close the old issue. Please reopen or file new one if you need.


Don't know what is this?

Repro steps:

Action: appService.Deploy
Error type: Error
Error Message: Deployment to "my-test-project" failed. See output channel for more details.
Version: 0.13.0
OS: win32
VS Code Version: 1.33.1

Call Stack
Object.<anonymous> (dist/extension.bundle.js:1:473283)
Generator.next (<anonymous>)
o (dist/extension.bundle.js:1:471302)
process._tickCallback (internal/process/next_tick.js:68:7)

Hi @intakhab
Could you please list repro steps for your issue?  Useful information would also be the type of project you are deploying, whether or not this is a new web app, and if it has a Linux or Windows runtime.
Thanks!


Saving/Restoring history and persistant storage

It looks to me like History instances can be serialized and unserialized  to parcels/bundles but not to String, which is surprising because IMO saving/restoring History to persistant storage should be a pretty common need (say, you want users to be able to find the app in the same state it was before a power down/a previous session)
In addition of StateParceler, Paths could optionaly implement
public interface StateToString {
String wrap(Object instance);
Object unwrap(String sring);
}
which would allow the implementation of 2 utillity methods to serialize/deserialize from String
Also, Gson should already be able to serialize/deserialize simple paths...but those utility methods aren't implemented in the GsonParceler
mmmhhh iterate the History and serialize each entry as an Object...and deserialize a list of Object into an History with a builder

This seems hypothetical and a bit out of scope. Please reopen if you have a concrete need for this capability.


docs: improve component event doc

What is it?

[ ] Feature / enhancement
[ ] Bug
[x] Docs / tests

Ship it!


Create preliminary API documentation

This is a multi-faceted task, as it also allows us to familiarize ourselves with the github wiki. We have a decent starting point now, with an API list with a list of data structures needed for the API calls listed here. Elaborate and expand on these, try to describe the rationale behind their design and what they must contain. Connected to #10 .
@ruc-RAWDATA-striketeam/everybody

Has created a preliminary API, but it will be constantly modified.
"It always seems impossible until its done." - Nelson Mandela


DEPRECATION: Usage of the Ember Global is deprecated.

https://github.com/simplabs/ember-test-selectors/blob/v5.1.0/vendor/ember-test-selectors/patch-component.js#L6 is using the Ember global, which is deprecated now.
We might want to consider dropping support for this automatic attribute binding, since it is no longer necessary with Angle Bracket Component Syntax.

the same codepath seems to also trigger another deprecation warning:

DEPRECATION: Reopening the Ember.Component super class itself is deprecated. Consider alternatives such as installing event listeners on the document or add the customizations to specific subclasses.


Replace string version comparison with package.version.parse

Hi, thank you for your contribution.
The CI is still running but if the lint fails, you probably need to run isort to sort imports to pass the lint. We have some kind of format checking.

I ran isort by using the settings in setup.cfg, the tool changed one import, but I'm not sure if it's now correct. First time I use isort.

The feature is also integrated into some modern editors such as pycharm and vscode. You can also sort them in the editor directly.

Hi @Juggernaut93！First of all, we want to express our gratitude for your significant PR in the MMEditing project. Your contribution is highly appreciated, and we are grateful for your efforts in helping improve this open-source project during your personal time. We believe that many developers will benefit from your PR.
We would also like to invite you to join our Special Interest Group (SIG) private channel on Discord, where you can share your experiences, ideas, and build connections with like-minded peers. To join the SIG channel, simply message moderator— OpenMMLab on Discord or briefly share your open-source contributions in the #introductions channel and we will assist you. Look forward to seeing you there! Join us ：https://discord.gg/UjgXkPWNqA
If you have WeChat account，welcome to join our community on WeChat. You can add our assistant ：openmmlabwx. Please add "mmsig + Github ID" as a remark when adding friends：）
Thank you again for your contribution❤ @Juggernaut93


feat(autoware_mpc_lateral_controller): set steering rate limits and steering limit in predicted trajectory calculation

Description
There is an issue where the predicted trajectory generated based on the MPC solution would become unstable when the speed decreased. The method of setting the maximum speed to 1 kph can be reproduced by executing the following command.
ros2 topic pub /planning/scenario_planning/max_velocity tier4_planning_msgs/msg/VelocityLimit "{stamp: now, max_velocity: 0.2777777910232544, use_constraints: true, constraints: {min_acceleration: -1.0, max_jerk: 1.0, min_jerk: -1.0}, sender: 'api'}" --once

visualized topic in the video is /control/trajectory_follower/lateral/predicted_trajectory
https://github.com/user-attachments/assets/90177a24-3cca-4b99-af39-27907e5c7795
When examining the values of each trajectory point in function calculatePredictedTrajectoryInWorldCoordinate while generating unstable paths, it was found that the steer angle and steer_rate values exceeded the vehicle's constraints.
By considering these constraints during calculation, it was confirmed that the generation of unstable paths could be prevented as shown in the following video.
https://github.com/user-attachments/assets/fdb1ed63-e1d6-4de1-ada7-5c1edb612c5f
How was this PR tested?
run planning_simulator and confirmed problem is solved.

[x] PASS TIERIV INTERNAL SCENARIOS

Notes for reviewers
I believe it is necessary to improve the following integration method derived from the discretized system of equations:
    dstate(0) = velocity * std::cos(yaw);
    dstate(1) = velocity * std::sin(yaw);
    dstate(2) = velocity * std::tan(steer) / m_wheelbase;
    dstate(3) = -(steer - desired_steer) / m_steer_tau;

In this case, it is likely that similar issues are occurring in the internal model calculations of the MPC as well. Therefore, I think it is necessary to implement improvements in conjunction with those calculations. I'm planning to investigate and address this in a separate PR.
Interface changes
None.
Effects on system behavior
None.

addressed the issue with this PR


Deprecate persistgraphql

This deprecates the persistgraphql package in favor of apollo-link-persisted-queries and apollo-cli. Both of those packages encompass what persistgraphql was originally intended to do, including extracting queries and assigning hashes to queries.
If you depend on features in persistgraphql that are not covered by the other two packages, please open an issue on either of the other packages, since this repository will be archived.

I looked at the packages that you linked but I don't understand how to generate the queries from these packages.
Do you have an example that shows how to use them to generate a persisted query list from the code with these packages ?

We have to add an apollo.config.js file and run
apollo client:extract


[5.5] Fix arg cleanup for objc continuations

Current SILGen for objc continuations, can end the lifetime of args
before await_async_continuation.
This PR fixes it by extending the lifetime of the args until await_async_continuation
by creating copies. And then inserts manual cleanup with fix_lifetime + destroy
Fixes rdar://78982371

@swift-ci test


word2vec: fix build

Motivation for this change
The package was marked broken, it turned out it was just lacking two dependencies.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Notify maintainers
cc @NikolaMandic

@jonringer fixed

@GrahamcOfBorg build python37Packages.word2vec python38Packages.word2vec

darwin failure unrelated


 All body documentation on this package is empty.
https://mxnet.apache.org/api/python/docs/api/metric/index.html
To Reproduce
Open public documentation page at https://mxnet.apache.org/api/python/docs/api/metric/index.html

It's due to an API change in upcoming MXNet 2. For now you can refer to the documentation of 1.6 release https://mxnet.apache.org/versions/1.6/api/python/docs/api/metric/index.html


Add markdown-codeblock extension

Description
Markdown Codeblock
Wraps your code in a Markdown code block.
This works well when chatting with AI, as it provides more context for the code block.
Recommended Hotkey
⌘;
How to Use

copy the code you want to wrap in a codeblock and run the command
select the language you want to use for the codeblock and press enter

Example
I have the following code in my clipboard:
package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}

I run the command and select go as the language for the codeblock:
and the codeblock is inserted in the markdown file:
```go
package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}
```

Credits
Thanks for icons from vscode-material-icon-theme
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi 👋
The first time I opened the extension, I ended up in this view

Try uninstalling your extension and installing it again. Could you look into this? The first time you search, it loads the list as expected😊
Would it be possible to support just selecting text too, or doesn't that make any sense?

Hi thanks for checking this out, of course I'll take a look right now and push a fix.
about the selecting text, let me make sure I got it right, you want instead of copy, just select select, text open this command, select laguage hit enter and it will wrap it in a codeblock? is this your intention? if yes, yeah it makes sense and I can support this as well.

@pernielsentikaer fixed bug and added your suggestion :) clicking ⌘+⏎ it will take the selected text instead of the clipboard text

Is this ready for another review or not yet?

Is this ready for another review or not yet?

yes it does


ol.source.VectorTile's tileLoadFunction cannot set features on tile

See https://groups.google.com/d/msgid/ol3-dev/9f7fda7d-98e6-403c-be94-df9295b46d0e%40googlegroups.com?utm_medium=email&utm_source=footer.
To fix this. ol.VectorTile#setFeatures needs to be made exportable.

Actually it's setProjection that's missing. With that in place, one could provide a custom tileLoadFunction like
tileLoadFunction: function(tile, url) {
  tile.setLoader(function() {
    var xhr = new XMLHttpRequest();
    xhr.open('GET', url);
    xhr.onload = function() {
      var json = JSON.parse(xhr.responseText);
      var format = tile.getFormat();
      tile.setFeatures(format.readFeatures(json));
      tile.setProjection(format.readProjection(json));
    }
    xhr.send();
  });

},


Add "upgrade only" option for converge

Before proceeding

[X] I didn't find a similar issue

Problem
subj
Solution (if you have one)
No response
Additional information
No response

@CRASH-Tech Hi!
I've just refreshed your case described in the TG chat. It sound like:

There are multiple kubernetes clusters.
First version of an application deployed manually into certain cluster.
Then we set up an argocd application with some werf integration, which calls 'werf converge' to just upgrade the application.

And to exclude configuration errors in such case it would be convenient to tell werf to fail if no deployed application found — 'upgrade only' option for 'werf converge'.
I think we could add such option.

Created a draft for --require-deployed option (by analogy with existing --require-build-images option): https://github.com/werf/werf/pull/5713

@CRASH-Tech Hi!
I have to say that unfortunately we've decided to reject current pull request and this feature completely.
The reasons are:

From the beginning of werf project we use "declarative" mode for converge/deploy command: this command should converge kubernetes cluster to the state when "application exists and running", and it doesn't matter existed application release before command execution or not, no external factor affects converge behaviour. In werf 1.1 and 1.2 that use helm 2 or 3 it implies usage of upgrade --install command without options. The same logic with werf dismiss: application release should not exist after command execution.
There is a new deploy engine (called nelm) in the final stage of development right now. And we are on a way to completely switch to this engine instead of helm 3 in the 1.2 version. And this new engine not supposed to work in a "upgrade only" or "upgrade --install" modes, it is designed to always work in a "application exists and running after deploy" mode, and we are currently see no reason in implementing these old undesired helm modes.

So if we merge this pull request then we have to implement this feature for a new deploy engine also, but it is currently undesireable due to (2).
As for your case, when you need to prevent deployment into the fresh environment due to lost or broken kubeconfig there is another workaround: just check helm release existance with werf helm status RELEASE -n NAMESPACE before calling werf converge.


Add Terraform R2 Backend

Add Terraform R2 Backend Example
Summary
Add Terraform R2 Backend Example. Include process for creating R2 Bucket and API Tokens.
content/terraform/_partials/_create-r2-buckets.md
content/terraform/advanced-topics/remote-backend.md

Hi @angelampcosta and @dcpena, would you mind reviewing the Logpull and R2 content?

Can we have this merged?

Closed by https://github.com/cloudflare/cloudflare-docs/pull/16790


Converting Logging deserialized enum types to StringEnumValue

There was only one for logging.
Fixes https://github.com/GoogleCloudPlatform/google-cloud-java/issues/1832 .

LGTM once tests pass

Coverage decreased (-0.003%) to 80.84% when pulling 16dcaa1bcc3b9ddb66d03f6d8f18502227101303 on garrettjonesgoogle:alt into 2fd93d9b2614185934c42741532bff5777f9d93d on GoogleCloudPlatform:master.


examples: Add tcpconnect as a libbpfgo example

$ make -C selftest/tcpconnect
$ make -C selftest/tcpconnect run
will build:

tcpconnect-static
tcpconnect-dynamic
tcpconnect-go-static
tcpconnect-go-dynamic

as an example on how to use libbpfgo (or libbpf) to probe kernel
function "tcp_connection" and get data from it. It will also use
this example as a selftest for a simple TCP connect().

This is the old https://github.com/aquasecurity/libbpfgo/pull/38 which I accidentally lost after a force push in my local repository. I'm bringing it back now.
@grantseltzer thanks for reviewing this, it was missing a Readme.MD file only.

@grantseltzer thanks. I believe those are fixed for Fedora now.


fix: container-runtime full_link 404

fix: https://github.com/kubernetes/website/issues/28284
The corresponding content has not been translated, link to English content first.

/lgtm

Hi @HongjiangHuang .
In the future, for changes that involve multiple languages, we recommend that you open a pull request for each localization.
/cc @kubernetes/sig-docs-fr-reviews @kubernetes/sig-docs-ru-reviews @kubernetes/sig-docs-it-reviews

OK, Thanks for your remind.

/lgtm
for the Italian localisation

OK, Thanks for your remind. @sftim


fix a regression in swift run signal handling

motivation: swift run should handle signals correctly, recent refactoring broke it
changes: move the exec wrapper back to SwiftRunTool and rename it so its harder to regress

@swift-ci smoke test

😱

Missing import?
[1352/1392] Compiling Commands SwiftRunTool.swift
/home/build-user/swiftpm/Sources/Commands/SwiftRunTool.swift:289:9: error: cannot find 'signal' in scope
        signal(SIGINT, SIG_DFL)
        ^~~~~~
/home/build-user/swiftpm/Sources/Commands/SwiftRunTool.swift:289:16: error: cannot find 'SIGINT' in scope
        signal(SIGINT, SIG_DFL)
               ^~~~~~
/home/build-user/swiftpm/Sources/Commands/SwiftRunTool.swift:289:24: error: cannot find 'SIG_DFL' in scope
        signal(SIGINT, SIG_DFL)
                       ^~~~~~~

@swift-ci smoke test

Oh wow, so that's what happened.  I would not have guessed this...  thanks for the fix!


[PE-D][Tester C] General formatting of content in PersonCard

There are many lines in PersonCard containing different information. For instance, some are related to grades and some are related to attendances. However, there are no spaces between the lines which could give the user a hard time in picking out relevant information.
One possible improvement would be to insert blank lines such that lines containing relevant information are grouped. See the image attached below:

Here the red lines are potential places for an empty line. Another method might be to use a UI element similar to that of Tags to group the information accordingly.

Labels: severity.VeryLow type.FeatureFlaw
original: Xczheng0105/ped#1

This is a UI-related issue.
It is currently in feature freeze so we are not going to do it.


Change position of terminal from bottom to right

[x] I have reset Atom to defaults prior to submitting report.

Description

Is there a way to change the position of terminal from bottom to right as at the bottom the teriminal gets in the view of the code.
Versions

> atom --version
Atom    : 1.48.0
Electron: 5.0.13
Chrome  : 73.0.3683.121
Node    : 12.0.0

> apm --version
apm  2.5.0
npm  6.14.5
node 10.20.1 x64
atom 1.48.0
python 2.7.18rc1
git 2.25.1

OS name and version: Ubuntu 20.04
Platformio-ide-terminal version:2.9.0
Additional Information

Not this project its no longer developed
You want https://github.com/bus-stop/terminus and https://github.com/bus-stop/terminus/issues/64


Not applicable to some(?) Initium Media articles

An awesome article unlocking tool, but a bug was recently discovered in the process of using it, not sure if it was a problem with the tool or the Initium Media website. Or maybe there's something wrong with my personal preference settings.
When I used the tool to unlock Article 1, only the first three paragraphs of the article were displayed, while the rest of the article was not successfully unlocked (See the Telegraph Version of Article #1 for reference).
However, when I use the tool to unlock Article 2, the tool can achieve a complete full-text unlock.
Article 1: How Hong Kong Indie Press in Difficulty
Article 2: Hong Kong COVID Health Code and RNR

Article 1 (Telegraph Reference): Link

This add-on depends on the content generated by Telegram bot Article reader|Статей читалка. If an article hasn’t been unlocked with the bot or the bot failed to obtain the text, the add-on won’t work on the article. You can also use Article reader|Статей читалка on Telegram to unlock articles, so that other users will be able to view the article with the add-on ☺


README: Update branch references in badge URLs

The default branch name is now 'main' (see #289), so the Coveralls badge URLs need to reference that branch name.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 64.777%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1394

Relevant Lines:
2152

💛  - Coveralls


Installation on Debian (Stretch)

I am attempting to install the kata packages on Debian Stretch.  This is an upgrade from clear-containers which worked well using the Ubuntu_17.10 repo
However, the katacontainers packages for Ubuntu_17.10 fail to install on Debian due to a too high version required for package librdb1
Example output for apt install kata-runtime kata-proxy kata-shim:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 kata-runtime : Depends: qemu-lite (>= 2.11.0-44) but 2.7.1+git.d4a337fe91-11 is to be installed
                Depends: qemu-vanilla (>= 2.11-42) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

and apt install qemu-lite:
. . .

The following packages have unmet dependencies:
 qemu-lite : Depends: librbd1 (>= 12.0.3) but 10.2.5-7.2 is to be installed

There is no version of Debian (even in experimental) that has support for librdb1 >=12.0.3 at the moment, see https://packages.debian.org/search?searchon=names&keywords=librbd1
The main packages dependent on librdb1 are the ceph packages (at least on my system), for example, if I run:  aptitude -s purge librbd1
  librbd1{p}
0 packages upgraded, 0 newly installed, 1 to remove and 9 not upgraded.
Need to get 0 B of archives. After unpacking 8,514 kB will be freed.
The following packages have unmet dependencies:
 ceph-common : Depends: librbd1 (= 10.2.5-7.2) but it is not going to be installed
 libvirt-daemon-system : Depends: librbd1 (>= 9.2.0) but it is not going to be installed
 python-rbd : Depends: librbd1 (= 10.2.5-7.2) but it is not going to be installed
 libvirt-daemon : Depends: librbd1 (>= 9.2.0) but it is not going to be installed
The following actions will resolve these dependencies:

      Remove the following packages:
1)      ceph [10.2.5-7.2 (now, stable, unstable)]
2)      ceph-base [10.2.5-7.2 (now, stable, unstable)]
3)      ceph-common [10.2.5-7.2 (now, stable, unstable)]
4)      ceph-mon [10.2.5-7.2 (now, stable, unstable)]
5)      ceph-osd [10.2.5-7.2 (now, stable, unstable)]
6)      cockpit-machines [166-1~bpo9+1 (now, stretch-backports)]
7)      libvirt-daemon [3.0.0-4+deb9u3 (now, stable)]
8)      libvirt-daemon-system [3.0.0-4+deb9u3 (now, stable)]
9)      python-rbd [10.2.5-7.2 (now, stable, unstable)]

      Leave the following dependencies unresolved:
10)     ceph-base recommends librbd1
11)     python-libvirt recommends libvirt-daemon
12)     python3-libvirt recommends libvirt-daemon

So there may be some difficulties in just including librdb1 2.11.0-44 in the katacontainers repo. Probably the cleanest solution for Debian would be if it's possible to build the packages against librdb1 10.2.5-7.2.
Ideally, it would be great if there was a katacontainers Debian repo, I'd be happy to test packages from that repo.

/cc @devimc, @jcvenegas.

It looks like the simplest way to resolve this is to install the newer version of librdb1 from Debian unstable
apt install -t unstable librdb1


Test typed_model utilities

Describe changes
I implemented/fixed _ to achieve _.
Pre-requisites
Please ensure you have done the following:

[ ] I have read the CONTRIBUTING.md document.
[ ] If my change requires a change to docs, I have updated the documentation accordingly.
[ ] If I have added an integration, I have updated the integrations table and the corresponding website section.
[ ] I have added tests to cover my changes.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Other (add details above)

What does the BaseTypedModel do exactly? Still not sure I fully get it. Perhaps it could be useful for #1151

@fa9r Not really sure. @stefannica added it for something he was writing.


Schemas not installed by PIP

Configuration:
windows: 10
anaconda navigator: 1.9.12
python: 3.8
pip: 20.1.1
xgbxml: 0.0.2
-Advisory >> No such file or directory: 'C:\Users\admin\anaconda3\envs\Test\lib\site-packages\xgbxml\schemas\GreenBuildingXML_Ver0.37.xsd'
-Corrective action >> Manually copied schemas from xgbxml github repo to the directory.

Now solved in version 0.0.3.
Please upgrade to latest version using pip if needed.
Solved by adding the following lines to setup.cfg
[options.package_data]
* = *.xsd


[redisdb] Check existence of total_commands_processed

What does this PR do?

Motivation

Additional Notes
Investigation
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] Changelog entries must be created for modifications to shipped code
[ ] Add the qa/skip-qa label if the PR doesn't need to be tested during QA.

Thanks!

/merge

/merge


DO NOT MERGE: Multithreaded javascript

In this PR we are introducing the enableMultithreadedJavascript feature flag which allows to execute javascript code from arbitrary threads.
Consider the following example:
new java.lang.Thread(new java.lang.Runnable({
    run() {
        const mainLooper = android.os.Looper.getMainLooper();
        const currentLooper = android.os.Looper.myLooper();
        const isMainThread = currentLooper === mainLooper;
        console.log(isMainThread); // should print false
    }
})).start();

We have identified 3 tasks to implement the feature:

[x] Introduce v8::Locker objects to ensure re-entrancy of the V8 isolates
[x] Thread-safe JNI
[x] Runtime.currentRuntime should not rely on ThreadLocal storage only. When running on a background thread it should retrieve the runtime from the currently entered V8 isolate.

whats the progress on this here?
Looks like a nice Feature..

This PR was created as a POC to demonstrate the technical feasibility of this concept. Enabling it would break existing plugins and we are not planning on doing that at the moment. You may try it out in your application and report if you are experiencing any issues or performance improvements.

@darind  @NathanaelA  Seeing this is not enabled by default. Could we merge it ? A user would have to know what he is doing as it would mean enabling in the package.json.

@farfromrefug - It looks like it is enabled by default; but we could merge it and then set the flag to disabled by default.
However, before I merge it I need to get the automated tests all working again so that I can make sure that even with this flag disabled that everything still works.
Getting the testing all working properly is high on my list to try and get working, but I do have a couple other android issues that also need to be tracked down, so it depends on how quickly I can get these issues tracked down and fixed will decide how quickly this gets merged.  :grinning:
I personally want to see this in NS 7, and enabled by default -- but we might have to settle for merged in NS7, but disabled by default...

@NathanaelA agree about tests! About enabled by default in 7.0 i would be careful, we would need to test it in multiple and different production apps . As Darin said plugins would need to handle that correctly.

It can be on by default for 8.x that should give plugin authors some time to update their plugins


Prepare for separate graph module

Create pluginmanager pkg containing definitions.
Create graph as a separate package so it can be made as a module if required.

Changes reverted manually.


Incorrect encoding of (pagination) query parameters

I believe this is is incorrect:
    /**
     * @param mixed $cursor
     */
    public static function getPaginationQueryString($cursor, int $size): string
    {
        return urlencode("page[cursor]=$cursor") . "&" . urlencode("page[size]=$size");
    }

The above method called with foobar and 10 results in: page%5Bcursor%5D%3Dfoobar&page%5Bsize%5D%3D10.
As you can see it also encodes the =. I think using http_build_query (doc) might be the solution instead? Do you agree?
Source: https://github.com/woohoolabs/yin/blob/master/src/JsonApi/Request/Pagination/CursorBasedPagination.php#L61

Thanks for the report! I added the referenced commit to fix the issue. Please confirm that it works for you, and I'll release it in v 4.2.0.

I finally took the time to go through all of the unreleased changes :) (sorry for taking so long):

#98: Support for validating top-level members in requests

I added this to my middleware and noticed my GET requests breaking... fixed by also checking the request method is either one of POST, PUT, PATCH or DELETE.

#96: Support for providing a custom schema path to ResponseValidator

Nice! I got to delete my custom extension of the class... I was doing exactly the same. Should have made a PR instead :P

#100: Error in createResourceIdInvalidException

Yup, this works.

#97: Incorrect encoding of (pagination) query parameters

Yup, works as well.
So I can't wait for the 4.2.0 release :)

I finally took the time to go through all of the unreleased changes :) (sorry for taking so long):

#98: Support for validating top-level members in requests

I added this to my middleware and noticed my GET requests breaking... fixed by also checking the request method is either one of POST, PUT, PATCH or DELETE.

#96: Support for providing a custom schema path to ResponseValidator

Nice! I got to delete my custom extension of the class... I was doing exactly the same. Should have made a PR instead :P

#100: Error in createResourceIdInvalidException

Yup, this works.

#97: Incorrect encoding of (pagination) query parameters

Yup, works as well.
So I can't wait for the 4.2.0 release :)

I added this to my middleware and noticed my GET requests breaking... fixed by also checking the request method is either one of POST, PUT, PATCH or DELETE.

Thanks for the idea, I certainly forgot about checking the method. However, I went with checking for the methods that shouldn't have a body (get, head, delete) so that validation isn't performed in such cases.

I added this to my middleware and noticed my GET requests breaking... fixed by also checking the request method is either one of POST, PUT, PATCH or DELETE.

Thanks for the idea, I certainly forgot about checking the method. However, I went with checking for the methods that shouldn't have a body (get, head, delete) so that validation isn't performed in such cases.

Problems is there are more (less popular?) methods that exist... for example Symfony uses the following list:
    public const METHOD_HEAD = 'HEAD';
    public const METHOD_GET = 'GET';
    public const METHOD_POST = 'POST';
    public const METHOD_PUT = 'PUT';
    public const METHOD_PATCH = 'PATCH';
    public const METHOD_DELETE = 'DELETE';
    public const METHOD_PURGE = 'PURGE';
    public const METHOD_OPTIONS = 'OPTIONS';
    public const METHOD_TRACE = 'TRACE';
    public const METHOD_CONNECT = 'CONNECT';

Source: https://github.com/symfony/http-foundation/blob/5.x/Request.php#L55-L64
That's why I chose to whitelist instead of blacklist because I know I want to the check for those methods.

Problems is there are more (less popular?) methods that exist... for example Symfony uses the following list:
    public const METHOD_HEAD = 'HEAD';
    public const METHOD_GET = 'GET';
    public const METHOD_POST = 'POST';
    public const METHOD_PUT = 'PUT';
    public const METHOD_PATCH = 'PATCH';
    public const METHOD_DELETE = 'DELETE';
    public const METHOD_PURGE = 'PURGE';
    public const METHOD_OPTIONS = 'OPTIONS';
    public const METHOD_TRACE = 'TRACE';
    public const METHOD_CONNECT = 'CONNECT';

Source: https://github.com/symfony/http-foundation/blob/5.x/Request.php#L55-L64
That's why I chose to whitelist instead of blacklist because I know I want to the check for those methods.

Ah, in the meanwhile I posted another comment, but in the linked issue (deleted since then), so I re-post it here:

Hmm, perhaps a more conformant implementation would be to check if there is a body in the request at all. This would ensure that GET et al. requests still work, while it wouldn't make it impossible to receive post requests without a body (which are not necessarily JSON:API documents).

Ah, in the meanwhile I posted another comment, but in the linked issue (deleted since then), so I re-post it here:

Hmm, perhaps a more conformant implementation would be to check if there is a body in the request at all. This would ensure that GET et al. requests still work, while it wouldn't make it impossible to receive post requests without a body (which are not necessarily JSON:API documents).

At first that was what I wanted to do, but there was no hasBody() and was not really sure if that was the way to go anyways.

At first that was what I wanted to do, but there was no hasBody() and was not really sure if that was the way to go anyways.


⚠ Digital Ocean - https://status.digitalocean.com/ has degraded performance

In 63b1801, Digital Ocean - https://status.digitalocean.com/ (https://status.digitalocean.com/api/v2/status.json) experienced degraded performance:

HTTP code: 200
Response time: 102 ms

Resolved: Digital Ocean - https://status.digitalocean.com/ performance has improved in 89b9cea.


Server side

How about the server side? So that you can watch the log of network requests from users on production not only in real-time but at any time. I am even willing to pay for such a service.

There are no plans to add a server-side component. It'll be costly and it's not my area of expertise.


Upgrade PyXiaomiGateway library

Description:
https://github.com/Danielhiversen/PyXiaomiGateway/commits/master
Checklist:

[ ] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

If the code communicates with devices, web services, or third-party tools:

[x] New dependencies have been added to the REQUIREMENTS variable ([example][ex-requir]).
[x] New dependencies are only imported inside functions that use them ([example][ex-import]).
[x] New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[x] New files were added to .coveragerc.

This looks like a bugfix, should it be tagged for 0.89.0?


Guide/Error-Handling issue

Hey,
While making sample app, I tried to use the error middleware described here.
The first section featured a response using
app.use(function (err, req, res, next) {
      console.error(err.stack)
      res.status(500).send('Something broke!')
})

When I tried to use this middleware in 4.16.2 version, I got Unexpected 'S' as a result.
After changing the send method to use an object, everything works well.
app.use(function (err, req, res, next) {
      console.error(err.stack)
      res.status(500).send({ message: 'Something broke!' })
})

Maybe this is already a known migration or something, Just reporting anyway
Thanks!

I didn't test this myself (yet), but if this is indeed correct, then we also need to change http://expressjs.com/en/4x/api.html#res.status, which say that res.status() is "...a chainable alias of Node’s  response.statusCode." but that doesn't seem right since that's a property not a method.
Should this instead link to https://nodejs.org/api/http.html#http_response_writehead_statuscode_statusmessage_headers ?

I'm testing this in express 4.17.1 and 4.16.2 and cannot replicate.   Closing this issue for now.  If there is really an issue here, it should be raised against  https://github.com/expressjs/express anyways.

It sounds like the error is in the client side and not the server-side. For example, res.status(500).send('Something broke!') would result in the eventual response entity to be Something broke! while res.status(500).send({ message: 'Something broke!' }) would result in {"message":"Something broke!"}.
The difference between them is the later is valid JSON while the former is not. Since the client-side error posted is an error from attempting to parse the response entity as JSON, that is just a configuration outside of Express itself, and you just need to be sure that the server sends what the client expects.


overflows when stored into 'Int'

When run on ipad ios 9.2 I got these errors:
swifter-master/Sources/String+SHA1.swift:31:25: Integer literal '3285377520' overflows when stored into 'Int'
/swifter-master/Sources/String+SHA1.swift:29:25: Integer literal '2562383102' overflows when stored into 'Int'
/swifter-master/Sources/String+SHA1.swift:28:25: Integer literal '4023233417' overflows when stored into 'Int'

@bigcoder thanks for the report :) it looks like you helped me a lot with solving the problem.
The issue is solved by https://github.com/glock45/swifter/commit/b070d440adf0e8d81a927ffa221c047b526350d4


Webpack bundling error (references closed issue #6)

Webpack bundling does not work (see closed issue #6)
In that issue there is a remark "I introduced an alternative library version osc.browser.js (#20) which can be used in Webpack builds (read this Wiki for further information)."
This wiki page
https://github.com/adzialocha/osc-js/wiki/Webpack-Bundling
does not exist, and I wasn't able to find osc.browser.js or information how to get this to work.

Yeah, could have stated more clearly. It is the error from #6.
ERROR in ./~/osc-js/lib/osc.js
Module not found: Error: Can't resolve 'dgram' in '/Users/m/root/topics/28_aframe/components/00_angle_loc
al/aframe-osc-component/node_modules/osc-js/lib'
 @ ./~/osc-js/lib/osc.js 935:49-65 1034:51-67
 @ ./index.js

Adding
node: {
  dgram: 'empty',
},

compiles.


Merge ms

Codecov Report

Merging #258 into master will decrease coverage by 0.02%.
The diff coverage is 49.75%.

@@            Coverage Diff             @@
##           master     #258      +/-   ##
==========================================
- Coverage   66.96%   66.94%   -0.03%
==========================================
  Files         563      568       +5
  Lines       42557    42893     +336
  Branches     4340     4372      +32
==========================================
+ Hits        28497    28713     +216
- Misses      12965    13081     +116
- Partials     1095     1099       +4

Impacted Files
Coverage Δ

lib/python/treadmill/runtime/linux/image/native.py
72.41% <ø> (ø)
:arrow_up:

...hon/treadmill/tests/runtime/docker/runtime_test.py
93.37% <ø> (ø)
:arrow_up:

...treadmill/tests/runtime/linux/image/native_test.py
97.88% <ø> (ø)
:arrow_up:

lib/python/treadmill/runtime/docker/runtime.py
69.33% <ø> (ø)
:arrow_up:

lib/python/treadmill/bootstrap/node/__init__.py
84.61% <ø> (ø)
:arrow_up:

lib/python/treadmill/tickets/locker.py
61.22% <ø> (-0.4%)
:arrow_down:

lib/python/treadmill/tickets/receiver.py
0% <0%> (ø)

lib/python/treadmill/sproc/tickets.py
0% <0%> (ø)
:arrow_up:

lib/python/treadmill/cli/__init__.py
57.2% <0%> (-0.48%)
:arrow_down:

lib/python/treadmill/warpgate/policy_server.py
0% <0%> (ø)
:arrow_up:

... and 35 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d637d36...7c9fead. Read the comment docs.


Created Harmburger Icon and the Drop Down Menu

created the hamburger icon  in the navigation component
renamed components to start with capital letters or camel case , as required of standard
a todo was added to transition to x , later

Another great addition @genie360s! Thank you!


feature to "flatten" a prefix group with only one binding

it would be nice to have a setting to enable "flattening" a prefix group if it only has one element
if <Leader>g only has one subitem <Leader>gg (or even <Leader>ggg) for <Plug>somecmd
instead of displaying
g ➜ +prefix

and needing to navigate through to see the binding, which-key could display
ggg ➜ <Plug>somecmd

as of writing this is one of the top 10 requested features
i hope it doesn't get closed


Dev test for Fractions: Intro 1.0.0-dev.17

@amanda-phet, @ariel-phet, @kathy-phet, fractions-intro/1.0.0-dev.17 is ready for dev testing. There is a hard deadline of January 31st (it's a Google sim). Document issues in https://github.com/phetsims/fractions-common/issues and link to this issue.
Assigning @ariel-phet for prioritization.

General Dev Test

What to Test

Click every single button.
If there is sound, make sure it works.
Make sure you can't lose anything.
Play with the sim normally.
Try to break the sim.

General Dev Test Platforms

[ ] Latest macOS, Chrome and Safari
[ ] Latest iOS, Safari
[ ] Windows 10, all browsers
[ ] Latest Chrome OS, Chrome

Link(s)

Simulation

FAQs for QA Members

There are multiple tests in this issue... Which test should I do first?
Test in order! Test the first thing first, the second thing second, and so on.

How should I format my issue?

We typically assign the developer who opened the issue in the QA repository.

My question isn't in here... What should I do?
You should:

Consult the QA Book.
Google it.
Ask Katie.
Ask a developer.
Google it again.
Cry.

@KatieWoe current top priority
I know @phet-steele has interest in dev testing these sims so also assigning him

Minute
MB

0
49.5

1
69.1

2
69.5

3
68.7

4
71.5

5
74.9

6
79

7
76.8

8
79.1

9
77.6

10
74.6


Remove apb/client.go Client struct and related refactoring.

Arose out of #222 discussion.
Client struct in apb/client.go simply aggregates references to the various clients, which doesn't provide much value. It should be removed along with the NewClient constructor.
Additionally, pushing all the client related logic into the clients pkg brings into question whether apb/client.go is really an appropriate name for the file. Given the work being done (actually executing apb methods), consider a better name RunApb(method, params).

Fixed by PR #238