Moved time-series stuff into separate module

Prep work for adding vertical profiles

 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.christopher.short seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@caughtshort I think there might be some git config settings needed to make your commits link to your GitHub account. The Contributor Licence Agreement assistant is not happy although we can probably ignore it, if you've signed as caughtshort
E.g. user name and email address

git config --global user.name caughtshort
git config --global user.email<EMAIL_ADDRESS>
Links to GitHub docs

https://help.github.com/en/github/using-git/setting-your-username-in-git
https://help.github.com/en/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#setting-your-commit-email-address-in-git

Also the test suite can't find the extracted code.

@caughtshort are there any planned updates for this PR? I would like to get it in as I think @stevehadd would like to add series support for CMIP6 #208

The lack of a signed CLA is the main sticking point here. Does anyone have another way to get in contact with @caughtshort?

@rhattersley he's in my team so I'll poke him about this next time I see him


Added comment on complex thrift types.

:+1:
(I know I have an outstanding issue above, but that's not directly related to your change. It would be great if you follow the issue up, but your change itself is perfectly fine.)

Actually, I think I should qualify the statement that complex thrift types aren't supported by maestro.  There's no direct support for them, but there is in the supporting libraries, and you can manually decode/encode string fields to complex types by mapping over the rows.

Fair enough

:+1:


[AMBARI-24037] Alerts label isn't clickable at the service page after turning on mm for service

What changes were proposed in this pull request?
Alerts label isn't clickable at the service page after turning on mm for service
STR:

Go to the service page
Enable mm for service
Try to click alerts(bell) icon for the current service

Expected:
Will open alerts window
Actual
Nothing happens
How was this patch tested?
UI unit tests:
21800 passing (25s)
48 pending

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/2604/
Test PASSed.


Add support for TimberPost->terms( array ) & more

This PR addresses a few things (sorry about that) but I tried to limit the reach of the code changed to only that which is relevant.  I think the commit messages give a pretty good summary, but here's the gist of it:

Add tests & support for calling the terms/get_terms methods on a TimberPost and passing an array of taxonomies to fetch terms for, rather than all of them.

It seems as though support for this was intended, but not documented, or tested for, and was not working as such.

Refactor existing tests for terms as well as tags and categories to be cleaner and more readable
Add a static named constructor for TimberTerm, which takes the same arguments as the constructor method.  Usage like TimberTerm::from('My Term Name').  This is also totally compatible with extended classes.  MyExtendedTimberTerm::from('My Term Name')
Remove usage of _get_terms property and deprecate it on TimberPost.  This cache is not only unnecessary, but could actually return the wrong results as it only caches based on the taxonomy argument, and did not take the other method arguments into consideration.

@aaemnnosttv this is great work. Thanks much for your work on this (and with tests!). I had a question on the TimberTerm::from('My Term Name') — can you provide an example of how/where you would use this in an example scenario (is this for usage in PHP or Twig or both?) thanks!

Thanks Jared!  I've really been digging Timber, so I'm happy to contribute.
Regarding the named constructor, I actually use this in the tests.  In addition to just being maybe a bit more expressive than using new, the static method makes it possible to use as a callback.  Perhaps the best example might be using it as a callback for transforming an array of terms, into TimberTerms.
// some function/method..
// get all non-empty terms for categories and tags
$terms = get_terms(['post_tag','category']);

return array_map('TimberTerm::from', $terms);

Whereas without that, you would need to use a closure or something to map over that in order to new TimberTerm..
Tests are another reason (and probably the reason I thought to add it) where you can see above, we're able to convert all of those array items to TimberTerms without using a foreach, which would unnecessarily pollute the test method with variables that were really not necessary.
It's just a little helper which can be used to help with readability, but also with reducing the amount of code needed to do certain things.  :)

Awesome, something I hadn't thought of before. Would it make sense to apply the same method to posts and users as well?

Yeah I think the same use case would apply to all of them.  I definitely thought of extending that to those as well, but as I said, I wanted to keep this PR limited ;)
I could put together another one if you're interested?

@aaemnnosttv yes please! Thanks for making it a separate PR though, one of the toughest things can be wading into code that touches too many pieces at-once.


QOS tables are not easy to find on the new documentation

Example:  https://oriondocs.rdhpcs.noaa.gov/wiki/index.php?title=Running_Jobs_on_MSU-HPC#Specifying_a_Partition
or
https://rdhpcs-common-docs.rdhpcs.noaa.gov/wiki/index.php?title=Running_and_Monitoring_Jobs#Specifying_a_Partition
In the old docs it's easy to find the tables and I can't find them in the new docs.

There are two issues here that make discovery of this information difficult:

The table is in a strange location — it is on the policy page.   I'm not sure why it was placed there other than the table was in the common docs and not on the site-specific pages on the wikis.
2   The sidebar menu has the text "Specifying a Quality of Service (QOS)" and "Changing QOS's."  With this text in the menu, searching for "quality of service" and "QOS" will show every page as a valid, good result.

We are still learning to optimize the search (SEO) and will apply items as we understand them.   We can experiment with the data-nosnippet HTML attribute to hide the menus from the Google search snippet.
However, both of the above will only do so much. The actual resolution, which should have also been done this way on the wikis, is to replace the host-specific content in the "common" areas with instructions to the user on how to get the information on the systems and place host-specific information on the host pages.
In this example, the Slurm page should indicate how a user can discover the valid QOSes on the systems (sacctmgr show qos), and then on the hera and jet pages list the QOSes with more specific information   This helps both the users who search, and others who are reading the pages.

Hi Seth,
Thank you for the quick reply.  I agree the placement is not correct and
that needs to be updated.  I've copied Forrest, David, and Raghu so we can
bring more people into this discussion as to where to place within the new
document context.
The sidebar is nice, but we will need users to be able to find this via
'search' as that's what most users do out of the gate.
*Renn Valo *NOAA Affiliate
NOAA Systems Administrator – HPC
RIVA/Cherokee
1(508)-495-2303
On Tue, Aug 20, 2024 at 12:39 PM Seth Underwood @.***>
wrote:

There are two issues here that make discovery of this information
difficult:

The table is in a strange location — it is on the policy page. I'm
not sure why it was placed there other than the table was in the common
docs and not on the site-specific pages on the wikis.
2 The sidebar menu has the text "Specifying a Quality of Service
(QOS)" and "Changing QOS's." With this text in the menu, searching for
"quality of service" and "QOS" will show every page as a valid, good result.

We are still learning to optimize the search (SEO) and will apply items as
we understand them. We can experiment with the data-nosnippet HTML
attribute
https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag#data-nosnippet-attr
to hide the menus from the Google search snippet.
However, both of the above will only do so much. The actual resolution,
which should have also been done this way on the wikis, is to replace the
host-specific content in the "common" areas with instructions to the user
on how to get the information on the systems and place host-specific
information on the host pages.
In this example, the Slurm page should indicate how a user can discover
the valid QOSes on the systems (sacctmgr show qos), and then on the hera
and jet pages list the QOSes with more specific information This helps both
the users who search, and others who are reading the pages.
—
Reply to this email directly, view it on GitHub
https://github.com/NOAA-RDHPCS/noaa-rdhpcs.github.io/issues/183#issuecomment-2299504011,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7YZFEZQTIFEHG5VKX2EJGDZSOEMPAVCNFSM6AAAAABM2FMBBOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJZGUYDIMBRGE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Forrest and User Support team request this information be transferred to the Slurm pages, and Partition information as we

PR#195 and PR#196 will update the Hera and Jet user guides to include the QOS tables, as Seth instructed.

Closing issue, Slurm information has been collected under the slurm/ location.  The Jet QOS table that was (incorrectly) part of common-docs is available in the Jet area at https://docs.rdhpcs.noaa.gov/systems/jet_user_guide.html#jet-partitions


chore: Update examples to better demonstrate questions raised through issues

Description

Remove usage of default tags in complete example since support will be removed in v19 due to a number of issues
Comment out cluster_identity_providers in complete example - deploying the example as is results in an issue where both Fargate profiles are trying to be created at the same time as the additional cluster identity provider. These operations need to be made independently
Update complete example to show that the IAM role created by node groups/profiles need to be added back into the core module in order to be added to the aws-auth configmap
Add example of additional Bottlerocket user data via bootstrap_extra_args for standalone EKS managed node group

Motivation and Context

Resolves #2289
Resolves #2290

Breaking Changes

No

How Has This Been Tested?

[ ] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[ ] I have tested and validated these changes using one or more of the provided examples/* projects

[x] I have executed pre-commit run -a on my pull request

This PR is included in version 18.31.0 :tada:


freebsd 15 support proposal.

Are there any breaking changes that you want to add to the libc crate in FreeBSD 15?

apart of the tcp_info layout change, not really.

I see, thank you for clarifying! @bors r+

:pushpin: Commit 2dc04b82a3f04abbf5199fa74767444c9f0fc924 has been approved by JohnTitor
It is now in the queue for this repository.

:hourglass: Testing commit 2dc04b82a3f04abbf5199fa74767444c9f0fc924 with merge 4cca5e1043293bf36f766beaf399a47f71531054...

:boom: Test timed out

@bors retry

:hourglass: Testing commit 2dc04b82a3f04abbf5199fa74767444c9f0fc924 with merge e077dbfe7faec63e7ea315722a596f9c062f0701...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-13, checks-cirrus-freebsd-14
Approved by: JohnTitor
Pushing e077dbfe7faec63e7ea315722a596f9c062f0701 to main...


docs/Checksum_Deprecation.md: Note that SHA-1 now blocks installation

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?

This document was out of date as of https://github.com/Homebrew/brew/pull/1451

Thanks @rwhogg!


[Feature] 🌈 Copilot换新的聊天界面了

Describe the problem related to the feature request
Copilot换新的聊天界面了
Describe the solution you'd like

Describe alternatives you've considered
No response
Additional context
No response

https://github.com/Harry-zklcdc/go-proxy-bingai/issues/308#issuecomment-1905322075

我这还是旧版

我的昨天是新的，今天变成旧的了（

已提交代码, Commit: 94614406b316fd06121e4a4e62844898f3c1c68e


Documentation for Upload() unclear

I can successfully and repeatedly authenticate and upoad small files, but as soon as I start uploading larger files (~200Mb), PyDrive returns MemoryError.
I would like to pass a resumable=true parameter but it's unclear how to do so and the PyDrive documentation provides no examples that I've found.
I've tried backup.Upload({"resumable": "true"}) and variants but get errors such as TypeError: Got an unexpected keyword argument "resumable"
(running Upload() with no parameters works fine for files of a few kb)
A simple example of passing any parameter to Upload() would be very helpful.

This was due to #27 and has been resolved with the newest version.


Purpose of Rc<Refcell>

I see most of the type returned from traits functions are Rc<Refcell>. What is the reason behind this? Shouldn't the user wrap it himself if he needs it?

I agree, this feels somehow very un-Rusty. Are they meant to be a temporary clutch for accelerating the development for starters, or is there something in the design that requires them?

I started on this something like an year back. I liked the way JDBC abstracts over lots of dbs.
I believe in the end, we want something like:
pub trait Driver: Sync + Send {
    /// Create a connection to the database. Note that connections are intended to be used
    /// in a single thread since most database connections are not thread-safe
    async fn connect<T>(&self, url: T) -> Result<impl Connection>
    where
        T: AsRef<str>;
}

pub trait Connection {
    async fn create_statement<T>(&mut self, sql: T) -> Result<impl Statement + '_>
    where
        T: AsRef<str>;
}

pub trait Statement {
    async fn execute_query(&mut self) -> Result<impl ResultSet + '_>;
}

So that we can write stuff like:
pub async fn do_stuff(driver: &impl Driver) -> Result<()> {
    let conn = driver.connect("url").await?;
    let mut stmt = conn.create_statement("select * from users").await?;
    let rs = stmt.execute_query().await?;
    // use rs here
    Ok(())
}

Now, this requires GATs, impl trait and async functions in trait methods.
For async, for now you could return a boxed future..
For impl trait, you could use associated types. (But it quickly becomes verbose)
For GAT, there is no real alternative here.

I'm all for moving away from Rc<RefCell<T>>. I used this approach because I didn't know better. Does someone want to create a PR to change this? I thought that dyn was required because there are different implementations and the type isn't always known at compile-time e.g. in the case of dynamically loaded drivers but I could be wrong.

I think that dyn is basically a hard requirement for this crate, because, as I understand it, one of the design decisions is to be able to change the DB without recompiling. However, I think that shouldn't mean that's part of the public API. I imagine there could be a public types that encapsulate the dynamicity and inner mutability.

There could be a struct Connection and each of the backend could know how to convert into that. That enables the type layout to be more freely expressed by this crate, instead of leaving the decision to the language.


kubernetes-master charm is erroring on deploy with 'allow-privileged' set to True

During a deploy with allow-privileged: true (or True) set in a bundle, the juju deploy command fails with:

upload charm cs:~containers/kubernetes-master-144 for series xenial
18:19:23 DEBUG httpbakery client.go:243 client do GET https://api.jujucharms.com/charmstore/v5/~containers/bionic/kubernetes-master-144/meta/any?include=id&include=supported-series&include=published {
18:19:23 DEBUG httpbakery client.go:245 } -> error
18:19:23 DEBUG juju.cmd.juju.application bundle.go:447 added charm cs:~containers/kubernetes-master-144
deploy application kubernetes-master on xenial using cs:~containers/kubernetes-master-144
18:19:23 DEBUG juju.cmd.juju.application bundle.go:1024 resolve "$addCharm-7" from map[string]string{"addCharm-7":"cs:~containers/kubernetes-master-144"}
18:19:23 INFO  juju.cmd.juju.application series_selector.go:113 with the series "xenial" defined by the bundle
18:19:23 DEBUG juju.api monitor.go:35 RPC connection died
ERROR cannot deploy bundle: cannot deploy application "kubernetes-master": option "allow-privileged" expected string, got true
18:19:23 DEBUG cmd supercommand.go:459 error stack:
option "allow-privileged" expected string, got true
github.com/juju/juju/api/application/client.go:154:
github.com/juju/juju/cmd/juju/application/deploy.go:171:
github.com/juju/juju/cmd/juju/application/bundle.go:568: cannot deploy application "kubernetes-master"
github.com/juju/juju/cmd/juju/application/bundle.go:382:
github.com/juju/juju/cmd/juju/application/bundle.go:122:
github.com/juju/juju/cmd/juju/application/deploy.go:720: cannot deploy bundle
github.com/juju/juju/cmd/juju/application/deploy.go:1101:

bundle section for kubernetes-master
kubernetes-master:
annotations:
gui-x: '800'
gui-y: '850'
charm: cs:~containers/kubernetes-master-144
constraints: cores=2 mem=4G root-disk=16G
num_units: 2
options:
channel: 1.11/stable
allow-privileged: true
authorization-mode: RBAC,Node,AlwaysAllow
running 'juju config kubernetes-master allow-privileged=true' after the deploy command works perfectly fine, and enabled the proper functionality.

If you change allow-privileged: true to allow-privileged: "true" in the bundle, I think this should work.
The quotes are needed because the allow-privileged config expects a string value, not a boolean value. The reason it expects a string value is to support a third value besides true or false, which is auto (the default).
When you run juju config kubernetes-master allow-privileged=true, Juju is smart enough to recognize that allow-privileged needs a string, so it treats true as a string value instead of a boolean. But when deploying from a bundle with allow-privileged: true, Juju isn't able to convert it to a string intelligently - you have to do it yourself by adding quotes. Kind of annoying.

That worked, thanks.


[enhancement] Refactor AlterCluse add isNewAlterTableClause function

What type of PR is this：

[ ] bug
[ ] feature
[x] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

[FE PR Coverage check]
:disappointed: fail : 2 / 5 (40.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/analysis/DropIndexClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/TableRenameClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/CreateIndexClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/AlterTableStmt.java
1
1
100.00%

:large_blue_circle:
com/starrocks/analysis/AlterClause.java
1
1
100.00%

run starrocks_fe_unittest

[FE PR Coverage check]
:disappointed: fail : 2 / 5 (40.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/analysis/DropIndexClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/TableRenameClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/CreateIndexClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/AlterTableStmt.java
1
1
100.00%

:large_blue_circle:
com/starrocks/analysis/AlterClause.java
1
1
100.00%

run starrocks_fe_unittest

[FE PR Coverage check]
:disappointed: fail : 2 / 5 (40.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/analysis/DropIndexClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/TableRenameClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/CreateIndexClause.java
0
1
00.00%

:large_blue_circle:
com/starrocks/analysis/AlterTableStmt.java
1
1
100.00%

:large_blue_circle:
com/starrocks/analysis/AlterClause.java
1
1
100.00%


Fix appId detail API method to be click through in the documentation

Steps to reproduce:

go to https://mesosphere.github.io/marathon/docs/rest-api.html
click on GET /v2/apps/{appId}
that leads to https://mesosphere.github.io/marathon/docs/rest-api.html#get-v2-apps-appid

But there is no heading for get-v2-apps-appid (that bug was introduced when introduced when introducing embed parameter in this commit https://github.com/mesosphere/marathon/commit/833ce402fdeae34eaff4bf3bc4329faf6cf17b17)

Can one of the admins verify this patch?

Can one of the admins verify this patch?

ok to test

@alenkacz Thanks! Can you please rebase in order to merge?

@aquamatthias rebased


Transparency of snowy leaves

Describe your issue

Mod version
BetterGrassify-1.3.1+fabric.1.21.1
Launcher
Atlauncher
Additional context
No response

This is why leaves are disabled by default, in excluded tags.


Status column needs updating along with graphic

In VS2017 the window no longer looks like above. Further, I think "Awaiting" has replaced the "Waiting" in the status column. There is also now a context menu item called "Switch to frame".

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

ID: ac1b431a-4afc-27ae-b2d9-0d1299eba257
Version Independent ID: 72c6c954-6989-4ca7-1db4-38d6ac3f3c40
Content
Content Source
Service: unspecified

Article needs a refresh

Working on this one


SPIKE - Explore what logs are available on AWS + Incubator

Overview
As an Ops member, I'd like to know what logs does Incubator currently have. Once a good understanding of what's available, we then can document it better on Incubator or Ops' wiki.
Action Items

[x] Explore

[x] ELB
[x] RDS
[x] ECR
[x] ECS
[x] Cloudwatch

[x] Record and share results

Resources/Instructions

https://github.com/hackforla/incubator/wiki/AWS-Resources

Available logs:

ALB/ELB: When enabled, logs are published to s3 as gzip files for individual web requests. Within the gzip file, log entries appear as: https 2018-07-02T22:23:00.186641Z app/my-loadbalancer/50dc6c495c0c9188  <IP_ADDRESS>:2817 <IP_ADDRESS>:80 0.086 0.048 0.037 200 200 0 57  "GET https://www.example.com:443/ HTTP/1.1" "curl/7.46.0" ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2  arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067 "Root=1-58337281-1d84f3d73c47ec4e58577259" "www.example.com" "arn:aws:acm:us-east-2:123456789012:certificate/12345678-1234-1234-1234-123456789012" 1 2018-07-02T22:22:48.364000Z "authenticate,forward" "-" "-" "<IP_ADDRESS>:80" "200" "-" "-" TID_123456
RDS: Normal logs for either MySQL or PostreSQL are exposed via RDS. They contain errors, open/closed connections, queries, etc. RDS logs can also be sent to cloudwatch.
ECR: Logging is available via cloudtrail for new image upload, security scanning results, etc
ECS: Docker logging can be configured to go into cloudwatch. Additionally, it may be possible via cloudtrail to get ECS events like failed deployments, etc

Available logs:
-ALB/ELB: When enabled, logs are published to s3 as gzip files for individual web requests. Within the gzip file, log entries appear as: https 2018-07-02T22:23:00.186641Z app/my-loadbalancer/50dc6c495c0c9188  <IP_ADDRESS>:2817 <IP_ADDRESS>:80 0.086 0.048 0.037 200 200 0 57  "GET https://www.example.com:443/ HTTP/1.1" "curl/7.46.0" ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2  arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067 "Root=1-58337281-1d84f3d73c47ec4e58577259" "www.example.com" "arn:aws:acm:us-east-2:123456789012:certificate/12345678-1234-1234-1234-123456789012" 1 2018-07-02T22:22:48.364000Z "authenticate,forward" "-" "-" "<IP_ADDRESS>:80" "200" "-" "-" TID_123456
-RDS: Normal logs for either MySQL or PostreSQL are exposed via RDS. They contain errors, open/closed connections, queries, etc. RDS logs can also be sent to cloudwatch.
-ECR: Logging is available via cloudtrail for new image upload, security scanning results, etc
-ECS: Docker logging can be configured to go into cloudwatch. Additionally, it may be possible via cloudtrail to get ECS events like failed deployments, etc

per discussion with John (Food Oasis project), there are currently no logs for troubleshooting application issues - Heroku has ? logs that can be reviewed. DevOps team need to come up with a framework for various apps to do the application logging. ECS enable log could be an option to leverage in other projects.

closing this issue as the research work is complete.


Is there an API to change DragOrientation value on the fly?

I found the DragOrientation option, seems it only works as slider init option. Can I change it after slider is created?

This option is available only while initialization.


OCW-8 #comment Fix to extract Facebook share count from the JSON resp…

…onse.

Coverage decreased (-0.09%) to 66.255% when pulling 3f1349fe0b983cecbb3d72e435180be7536d3ab9 on OCW-8 into 4caf1d2c1aa7cbbc22979e864739fb476ef730a2 on master.

Coverage decreased (-0.1%) to 66.24% when pulling 559928a57e38e53c8174e41b5ffa8f8ac6f5664e on OCW-8 into 4caf1d2c1aa7cbbc22979e864739fb476ef730a2 on master.

Coverage decreased (-0.1%) to 66.24% when pulling 559928a57e38e53c8174e41b5ffa8f8ac6f5664e on OCW-8 into 4caf1d2c1aa7cbbc22979e864739fb476ef730a2 on master.


Issue #293 - Store character attributes (m_current_attribs) in cerealized form

Added serializeToDb and serializeFromDb functions in attrib_serializers.cpp and .h
In Struct GameAccountResponseCharacterData, added a serialized version of m_current_attribs
In Character.cpp, m_current_attribs are now serialized to and from db

Very early on and untested, would expect a lot of edits.

Not that with the npcs branch the player data was coalesced into a single db column.
For the attribs, I think it should either go into char_data, or entity_data, and not into a new column

Seems like char_data would be the appropriate place, since we leverage that for NPCs as well and may utilize it for critters in the future.

Last commit is for issue #352. The plan was to create a separate PR using a branch from my fork but haven't been successful so I am playing it safe. Kinda feel bad to put fixes for 3 issues in a single PR tho :P
As usual the AuthServer crashes due to MapInstance line 689 error (was already mentioned by someone else in Discord already) so at most the build just runs (without warnings this time, or at least most of them are no longer there) as far as testing goes.

Hi eoS! Great progress! Just a minor nitpicking thing.
For clarity and accessibility within GitHub, please use a more descriptive PR name, and add those Issue numbers to your PR description. (Edit buttons are available for both up top)
Unfortunately github won't link issue numbers from titles.
Thanks in Advance!

Regarding Suggestion: Make m_max_attribs part of CharacterData too?
Is it possible for max values to be unique to each character? I was under the impression that they were server-wide set caps per level, even limiting modifiers.


workspace support

Current dependencies on/for this PR:

main

PR #26   👈

This stack of pull requests is managed by Graphite.


[debugging]

Motivation
(Write your motivation for proposed changes here.)
Have you read the Contributing Guidelines on pull requests?
(Write your answer here.)
Test Plan
(Share your test plan here. If you changed code, please provide us with clear instructions for verifying that your changes work.)
Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/libra/website, and link to your PR here.)

:umbrella: The latest upstream changes (presumably aa22ab3a5a9c767a5cb0e13f6654689e2a08a19c) made this pull request unmergeable. Please resolve the merge conflicts.


How to use require.ensure() in nuxt router?

As i used before in vue,
i write vue router like below, to load resource via layload
const Offer_Create = r => require.ensure([], () => r(require('./modules/Offer/Create.vue')), 'offer_create')
how do i take it in nuxt ?

This question is available on Nuxt.js community (#c6817)

Nuxt automatically splits routes.
Btw. require.ensure is deprecated. You an use the import() syntax.
const OfferCreate = () => import('./OfferCreate.vue')


Drag And Drop Support for Channel Order

Describe the solution you'd like
The ability to drag and drop for channels on the mapping page would make ordering channels quite a bit easier than trying to assign numbers, especially when channels get added from the XML provider.

Drag and drop is not really usable with 1000 channels and scrolling

I was more thinking for fine tuning but I understand. Thanks!


Wrong multiline parenthesis indent (JS)

From @alexanderby on November 19, 2015 9:27
When formatting JavaScript the indent of right parenthesis (that is placed on different line) is too large.
This is expected to be
function (
    arg1,
    arg2
) {
    if (
        arg1
        && arg2
    ) {
        //...
    }
}

but actually is
function (
    arg1,
    arg2
    ) {
    if (
        arg1
        && arg2
        ) {
        //...
    }
}

Copied from original issue: Microsoft/vscode#181

See also #3436.

looks like it is fixed in latest. thanks @SaschaNaz

@mhegazy @SaschaNaz I've reported this issue for VS Code. The bug appears when formatting JavaScript and still remains.

VS Code uses the TS formatter even for JS, that's why this bug is here

@alexanderby the issue has been fixed in the latest formatter, the next time VSCode picks up the update it should be fixed.

There is no issue when editing TypeScript, but JavaScript. Currently app uses TS1.6, so I've downloaded TS1.7.3 package and put it into "resources\app\extensions\typescript\server" folder. Comment issue has gone after this when formatting TypeScript, but JavaScript still have both issues.

I found resources\app\out\vs\languages\typescript\common\lib\typescriptServices.js and it says var toolsVersion="1.5".


It's not clear how to contribute to interactive tutorials

I've found a few minor problems in the Deploying an App Interactive Tutorial.
I want to fix them myself, but I can't find the code for this tutorial in this repository.
Edit this page button on the tutorial page suggest to edit deploy-interactive.md, which only has a <div class="katacoda__box" id="inline-terminal-1"> element.
The only thing I found is retired kubernetes-bootcamp repo with something resembling the interactive tutorial scenarios.
In the Contribute guide docs I couldn't find anything about editing the interactive tutorials.
Please tell me when can I edit the tutorial, and I'd fix it and add the info to the docs.

/kind feature
We should document that these live in https://github.com/katacoda-scenarios/kubernetes-bootcamp-scenarios
/language en


Communities relations

requires https://github.com/inveniosoftware/invenio-vocabularies/pull/187
closes https://github.com/inveniosoftware/invenio-communities/issues/500
closes https://github.com/inveniosoftware/invenio-communities/issues/501

:heart: Thank you for your contribution!
Description
Please describe briefly your pull request.
Checklist
Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:

[x] I'm aware of the code of conduct.
[x] I've created logical separate commits and followed the commit message format.
[x] I've added relevant test cases.
[x]I've added relevant documentation.
[x] I've marked translation strings (for relevant code).
[x] I've followed the CSS/JS and React guidelines (for relevant code).
[x] I've followed the web accessibility guidelines (for relevant code).
[x] I've followed the user interface guidelines (for relevant code).
[x] I've identified the copyright holder(s) and updated copyright headers for touched files (>15 lines contributions).
[x] I've NOT included third-party code (copy/pasted source code or new dependencies).

Third-party code
If you've added third-party code (copy/pasted or new dependencies), please reach out to an architect.
Reminder
By using GitHub, you have already agreed to the GitHub’s Terms of Service including that:

You license your contribution under the same terms as the current repository’s license.
You agree that you have the right to license your contribution under the current repository’s license.

Demo video of community creation/edition
https://user-images.githubusercontent.com/6756943/166641194-f47ee617-bb98-4576-ab4a-96b8d845c562.mov
Then in DB/ES data are stored correctly


added missing ASL licenses

added ASL license in files (*.java. *.drl) where it was missing
did a mvn clean install -Dfull executing the tests
builds successful

Feel free to just commit changes like this directly mbiarnes, no need for a separate PR.


Add deletion protection to ALB

This is a newer recommendation in the AWS Foundational Security Best Practices https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp-controls.html#elb-6-remediation
We're already doing it for databases, so we can copy the pattern from there.

Resolved in 7dce53daf36d02ad753c8c3c41ae0f91c24acb75


Instead of returning a KeyError at_pointer returns the value of the valid root

Hello,
Step to reproduce:
>>> import simdjson
>>> parser = simdjson.Parser()
>>> t = '{"foo": "bar"}'
>>> d = parser.parse(t)
>>> d.at_pointer("/foo")
'bar'
>>> d.at_pointer("/bar")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'No such key'
>>> d.at_pointer("/foo/foo")
'bar'

I expect that d.at_pointer("/foo/foo") returns a KeyError to be consistent with d.at_pointer("/bar").
Best,
Hadrien

Hmm that's odd. The spec at https://tools.ietf.org/html/rfc6901 leaves it to the implementation to handle "A pointer that references a nonexistent value".
Need to confirm how simdjson handles this in master (libpy_simdjson is on the most recent 5.0 release.).

Off master, simdjson throws an error. On 5.0 it exhibits the behavior you described. This will be fixed in libpy_simdjson when simdjson publishes a new version and we update it here.


A problem about rotate_point

I think MTR should transform all objects to center_objects coordinate, but I find that rotate_points_along_z use -center_heading. What does the minus heading mean?

It normalizes the heading to the center object's coordinate. For example, if you consider the center object itself as the object to be transformed, then its transformed heading should be zero.


fix: add hns network id to endpoint struct for pushing to cns in stateless

Reason for Change:

Previously did not add hns network id to endpoint struct (only added to endpointInfo), and so when pushing data to cns, we did not have an hns network info id for deletion later.
Issue Fixed:

Requirements:

[X] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[X] relevant PR labels added

Notes:

/azp run Azure Container Networking PR


Show breadcrumbs in peek view

Would be great if we could see the breadcrumbs in the peek view title when doing Find All References. Otherwise I am scrolling around to figure out which class/method the reference is in.

vs

@roblourens Is this related: It would also be nice if the peek view actually only shows the same style as breadcrumb. Currently breadcrumb is path/file/more whereas peek is file path.
I think path/file/more is better suited overall to align the style i.e. that file should come after path.

Big plus one for this. The absence of breadcrumbs in the peek view removes half of its usefulness for me, since I often have to scroll up in order to understand where I am.

Very love it. This makes it easier to read the code context without having to jump to that file.

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!

Agreed that sticky scroll takes up too much vertical space, as opposed to adding additional breadcrumbs to the title bar in the peek view, which has a lot more empty (horizontal) space.
Also, the sticky scroll is visually noisier and harder to comprehend at a glance than breadcrumbs.
Please reconsider this feature. Thank you.


[Bug]: language_id_score_filter affect the speed of other operators

Before Reporting 报告之前

[X] I have pulled the latest code of main branch to run again and the bug still existed. 我已经拉取了主分支上最新的代码，重新运行之后，问题仍不能解决。

[X] I have read the README carefully and no error occurred during the installation process. (Otherwise, we recommend that you can ask a question using the Question template) 我已经仔细阅读了 README 上的操作指引，并且在安装过程中没有错误发生。（否则，我们建议您使用Question模板向我们进行提问）

Search before reporting 先搜索，再报告

[X] I have searched the Data-Juicer issues and found no similar bugs. 我已经在 issue列表 中搜索但是没有发现类似的bug报告。

OS 系统
ubuntu
Installation Method 安装方式
from source
Data-Juicer Version Data-Juicer版本
v0.2.0
Python Version Python版本
3.9
Describe the bug 描述这个bug

如果process里有基于fasttext的language_id_score_filter算子时，会影响其它算子的运行速度，速度明显变慢
To Reproduce 如何复现
python tools/process_data.py --config configs/demo/process.yaml
Configs 配置信息
# Process config example for dataset

# global parameters
project_name: 'demo-process'
dataset_path: './demos/data/demo-dataset.jsonl'  # path to your dataset directory or file
np: 48  # number of subprocess to process your dataset

text_keys: 'text'

export_path: './outputs/demo-process/demo-processed.jsonl'

# process schedule
# a list of several process operators with their arguments
process:
  - chinese_convert_mapper:                                 # convert Chinese between Traditional Chinese, Simplified Chinese and Japanese Kanji.
      mode: 's2t'                                             # choose the mode to convert Chinese: ['s2t', 't2s', 's2tw', 'tw2s', 's2hk', 'hk2s', 's2twp', 'tw2sp', 't2tw', 'tw2t', 'hk2t', 't2hk', 't2jp', 'jp2t']
  - clean_email_mapper:                                     # remove emails from text.
  - clean_html_mapper:                                      # remove html formats form text.
  - clean_ip_mapper:                                        # remove ip addresses from text.
  - clean_links_mapper:                                     # remove web links from text.
  - clean_copyright_mapper:                                 # remove copyright comments.
  - punctuation_normalization_mapper:                       # normalize unicode punctuations to English punctuations.
  - remove_bibliography_mapper:                             # remove bibliography from Latex text.
  - remove_comments_mapper:
  - remove_repeat_sentences_mapper:                         # remove repeat sentences in text samples.
      lowercase: false                                        # whether to convert sample text to lower case
      ignore_special_character: true                          # whether to ignore special characters when judging repeated sentences. Special characters are all characters except Chinese characters, letters and numbers
      min_repeat_sentence_length: 2                           # sentences shorter than this length will not be deduplicated. If ignore_special_character is set to True, then special characters are not included in this length
  - remove_specific_chars_mapper:                           # remove characters specified by users
      chars_to_remove: '◆●■►▼▲▴∆▻▷❖♡□'
  - alphanumeric_filter:                                    # filter text with alphabet/numeric ratio out of specific range.
      tokenization: false                                     # whether to count the ratio of alphanumeric to the total number of tokens.
      min_ratio: 0.0                                          # the min ratio of filter range
      max_ratio: 0.9
  - average_line_length_filter:                             # filter text with the average length of lines out of specific range.
      min_len: 10                                             # the min length of filter range
      max_len: 10000                                          # the max length of filter range
  - character_repetition_filter:                            # filter text with the character repetition ratio out of specific range
      rep_len: 10                                             # repetition length for char-level n-gram
      min_ratio: 0.0                                          # the min ratio of filter range
      max_ratio: 0.5
  - language_id_score_filter:
      lang: 'zh'

Logs 报错日志
No response
Screenshots 截图
No response
Additional 额外信息
No response

Data-Juicer的运行是有cache机制的，如果输入的dataset相同且前序的算子相同，则不需要实际运行这些算子二十直接返回cache。
你应该是先运行了带language_id_score_filter算子的脚本，然后注释掉了最后一步language_id_score_filter，因此之前的那些其他算子在之前的运行中已经被计算过了。从你给出的截图上看，其他算子可能是直接根据之前的cache结果返回了，因此速度更快。

ok


Feature request: better support for argumentless CLI boolean flags

Currently, you can declare a model like this:
class Settings(BaseSettings):
    dry_run: bool = False
    model_config = SettingsConfigDict(
        cli_parse_args=True,
        alias_generator=AliasGenerator(
            validation_alias=lambda s: AliasChoices(s, to_snake(s).replace("_", "-"))
        ),
    )

and end up with an application you can run in dry-run mode by running myapp --dry-run=true. But this is not exactly what is usually expected of CLI applications; usually, boolean flags are argumentless (--dry-run, --force, etc.) and their presence implies the associated value is true. Sometimes they have an inverse like --no-dry-run which implies the opposite.
I don't think pydantic-settings currently supports arguments like this. It would be very useful if it did :)

Thanks @sersorrel for this feature request.
@kschwab Do you think we can support this in pydantic-settings?

@sersorrel thanks for the request.
@hramezani, yes, we can support this. My thoughts are to add a cli_implicit_flags config that will convert optional bool fields into flags. We can then add CliExplicitFlag and CliImplicitFlag annotations to provide control at a more granular level. e.g.:

class Cfg(BaseSettings, cli_parse_args=True, cli_implicit_flags=True):
    req_flag: bool
    """--req_flag {True,False}"""

    implicit_flag: bool = False
    """--implicit_flag, --no-implicit_flag"""

    # Flags are implicit by default, so must override explicit flags with annotation
    explicit_flag: CliExplicitFlag[bool] = False
    """--explicit_flag {True,False}"""

class Cfg(BaseSettings, cli_parse_args=True, cli_implicit_flags=False):
    req_flag: bool
    """--req_flag {True,False}"""

    # Flags are explicit by default, so must override implicit flags with annotation
    implicit_flag: CliImplicitFlag[bool] = False
    """--implicit_flag, --no-implicit_flag"""

    explicit_flag: bool = False
    """--explicit_flag {True,False}"""

If the above seems reasonable, I'll move forward. The only question I have is what the default should be for cli_implicit_flags? I lean towards having it disabled by default (the current behavior) to keep it aligned with env vars, but am interested in your thoughts.

Thanks @kschwab for the proposal.

If the above seems reasonable, I'll move forward. The only question I have is what the default should be for cli_implicit_flags? I lean towards having it disabled by default (the current behavior) to keep it aligned with env vars, but am interested in your thoughts.

Yes, LGTM. the default should be cli_implicit_flags=False because this won't introduce a breaking change.

Final implementation is slightly modified from above proposal. CLI implicit flags will also convert required fields for python >= 3.9:
class Cfg(BaseSettings, cli_parse_args=True, cli_implicit_flags=True):
    req_implicit_flag: bool
    """--req_implicit_flag, --no-req_implicit_flag (required)"""

    # Flags are implicit by default, so must override explicit flags with annotation
    req_explicit_flag: CliExplicitFlag[bool]
    """--req_explicit_flag bool (required)"""

    opt_implicit_flag: bool = False
    """--opt_implicit_flag, --no-opt_implicit_flag (default: False)"""

    # Flags are implicit by default, so must override explicit flags with annotation
    opt_explicit_flag: CliExplicitFlag[bool] = False
    """--opt_explicit_flag bool (default: False)"""

class Cfg(BaseSettings, cli_parse_args=True, cli_implicit_flags=False):
    # Flags are explicit by default, so must override implicit flags with annotation
    req_implicit_flag: CliImplicitFlag[bool]
    """--req_implicit_flag, --no-req_implicit_flag (required)"""

    req_explicit_flag: bool
    """--req_explicit_flag bool (required)"""

    # Flags are explicit by default, so must override implicit flags with annotation
    opt_implicit_flag: CliImplicitFlag[bool] = False
    """--opt_implicit_flag, --no-opt_implicit_flag (default: False)"""

    opt_explicit_flag: CliExplicitFlag[bool] = False
    """--opt_explicit_flag bool (default: False)"""

For python < 3.9, the --no-flag option will not be supported due to underlying argparse support, and implicit flags can only be applied to optional bool fields. Therefore, python 3.8 will look like:
class Cfg(BaseSettings, cli_parse_args=True, cli_implicit_flags=True):
    req_flag: bool
    """--req_flag bool (required)"""

    implicit_flag: bool = False
    """--implicit_flag (default: False)"""

    # Flags are implicit by default, so must override explicit flags with annotation
    explicit_flag: CliExplicitFlag[bool] = False
    """--explicit_flag bool (default: False)"""

class Cfg(BaseSettings, cli_parse_args=True, cli_implicit_flags=False):
    req_flag: bool
    """--req_flag bool"""

    # Flags are explicit by default, so must override implicit flags with annotation
    implicit_flag: CliImplicitFlag[bool] = False
    """--implicit_flag (default: False)"""

    explicit_flag: bool = False
    """--explicit_flag bool (default: False)"""


Endpoint documentation

All endpoints in the API server should be documented. This can be done in the https://github.com/cdnjs/static-website repo ready for when the new site & API are rolled out.

All documented: https://cdnjs.dev/api


No instance of push gets created

Expected Behaviour
To have an instance of Push set on $rootScope that would be available in my pushSubscribe factory with access to the Push.subscribe and Push.unsubscribe methods
Actual Behaviour
No Push instance gets set on $rootScope after the app loads from ionic run Android or from building the app in Xcode after ionic build ios.
None of the console.log()s in $ionicPlatform.ready(function(){} print anything to console.
Not getting any errors in console
Reproduce Scenario (including but not limited to)
Steps to Reproduce

Add debugger in pushSubscribe factory
Add new chat room which triggers $$added on user's chat rooms $firebaseArray

   Pta.factory('pushSubscribe', [
      '$firebaseArray',
      '$rootScope',
      function ($firebaseArray, $rootScope) {
          return $firebaseArray.$extend({
          $$added: function(room){
          // Room topic is the $id of the chat room
          debugger;
          $rootScope.Push.subscribe(room.key);
      },
          $$removed: function(room){
          $rootScope.Push.unsubscribe(room.key);
       }
     });
   }]);

Platform and Version (eg. Android 5.0 or iOS 9.2.1)
Android: 6.1.0 also tried with 6.0.0
ios: 4.3.0

(Android) What device vendor (e.g. Samsung, HTC, Sony...)
Cordova CLI version and cordova platform version
cordova --version: 6.4.0
cordova platform version: 6.4.0

Plugin version
cordova plugin version | grep phonegap-plugin-push: 1.9.0 Also tried with installing from git url

Sample Push Data Payload
$scope.sendMessage = function() {
        // Get the users auth jwt to verify them on the node server
        firebase.auth().currentUser.getToken(true)
        .then(function(userToken){
            $http({
                method: 'POST',
                url:'MY_HEROKU_HOSTED_NODE_SERVER_URL',// using node-apn and node-gcm
                data:{
                    reg_id: $scope.pushRegId,
                    token: userToken,
                    message: $scope.IM.textMessage,
                    sender_name: $scope.user.name,
                    topic: '/topics/' + $state.params.roomId,
                    state: 'app.room',
                    roomId: $state.params.roomId,
                    sender_imgURL: $scope.user.pic,
                    chatters: chatters,
                    platform:  $scope.platform
                }
            })
            .then(function(res){
                Chats.send($scope.user, $scope.IM.textMessage);
                $scope.IM.textMessage = "";
            })
            .catch(function(err){
                debugger;
            });
        });
    };

Sample Code that illustrates the problem
$ionicPlatform.ready(function(){
    $rootScope.Push = PushNotification.init({
            android: {
                senderID: "MY_SENDER_ID"
            },
            ios: {
                alert: "true",
                badge: "true",
                sound: "true"
            }
        });

        $rootScope.Push.on('registration', function(data) {
            console.log("registration event: " + registrationId);
            var oldRegId = localStorage.get('registrationId');
            if (oldRegId !== registrationId) {
              // Save new registration ID
              $localstorage.set('registrationId', registrationId);
              // Post registrationId to your app server as the value has changed
            }
        });

        $rootScope.Push.on('notification', function(data){
              // Make sure the user isn't getting notified about their own message
              if(!data.wasTapped && data.sender_imgUrl !== userService.getUser().pic){
                   //Notification was received in foreground. Check if the user is already in the room
                  if(!$state.is(data.state, { roomId: data.roomId })){
                     var queue = document.getElementById('queue');
                     if(!queue){ // This is the first queued chatter
                        //My code for displaying queued chatters in foreground
                     }
                     if($rootScope.queuedChatters.length > 0){
                        for (var i = $rootScope.queuedChatters.length - 1; i >= 0; i--) {
                            value = $rootScope.queuedChatters[i];
                            // If it isn't the same person in the same room sending another message, add them
                            if(value.roomId !== data.roomId && value.sender_imgUrl !== data.sender_imgUrl && i === 0){
                            $rootScope.queuedChatters.push(data);
                        }
                     }
                   } else {
                      $rootScope.queuedChatters.push(data);
                   }
                  $rootScope.$apply();
                }
             } else {
                 //Notification was received on device tray and tapped by the user.
                $localstorage.setObject('pushNotification', data);
             }
         });

        $rootScope.Push.on('error', function(e) {
           console.log("Push error event: ", e);
        });
   });

Personal advice: don't polute the $rootScope with things like that. The Push class/object has close to nothing to do with view state management, and thus it shouldn't end up in any scope per se. That's usually the role of  a singleton service on angular.
Could you switch
$ionicPlatform.ready(function(){

with
$ionicPlatform.ready(function(){
    console.log("I'm a device and I'm ready!", PushNotification, $rootScope);

and see what prints?

That prints and $rootScope and pushNotification contain the same as when I check them in my pushSubscribe factory. But I still don't understand how I can access the topic subscribe and unsubscribe methods.

And I'm expecting $rootScope.Push  && $rootScope.Push instanceof PushNotification to be true and the end of the deviceReady event. Can you confirm that?
If the answer to the above is true, then the issue is with angular or with where you put that factory code of yours. Moving all push related code to a service as I suggested would probably solve it if that's indeed the case.

I put console.log('$rootScope.Push: ', $rootScope.Push);
and console.log('PushNotification: ', PushNotification); at the end of my $ionicPlatform.ready closure but nothing gets printed.

Nothing as in "" or as in "$rootScope.Push: "\n"PushNotification: "?

Well it was nothing as in "". But I moved the registration to the top of $ionicPlatform.ready(function() { and It seems something in my code was failing silently and preventing the registration from happening. Now the registration goes through and I have;

But it seems still no subscribe or unsubscribe methods

Thanks for the help @fredgalvao. I'm going to close this as it seems even though the success method doesn't show on the object returned from my $rootScope.Push it is in fact there. As long as I pass a success and error callback after my topic string everything works.


Hide "Nothing to install" message on startup

When starting up neovim and there are no packages for paq to install, paq will print a "Nothing to install" message on startup. Would there be a way to hide this message? I'd like it to be shown if there are things to install, but print nothing otherwise.

You might be running paq.install() or paq.sync() at startup.
You could put that code inside a conditional so it doesn't always run, or you could run paq.update(), which won't try to install things (so it never shows that message).

I do run paq.install() at startup. Is there a straightforward way of determining if there are actually new packages to install?

Currently there is not a easy way to get that. But we could do one of two things:

having a 'statusline' component like lazy.nvim.
expose a paq method (something like paq.query) to be able to call the filters table directly. Obviously the returning table will be deepcopys to not mess up the internal state of paq.

Personally I like the second approach because is more in paq's spirit of doing things.

Hey @Supreeeme,
you can now do this with the new paq.query method:
vim.api.nvim_create_autocmd("VimEnter", {
	once = true,
	callback = function()
            local pkgs_count = #require("paq").query("to_install")
            if pkgs_count < 1 then return end
	    vim.notify(string.format("There are %d to install", pkgs_count))
	end
})

Works like a charm, thanks!


ctr image export not working

Description
sudo ctr image export image.tar docker.io/library/hello-world:latest
ctr: export failed: content digest sha256:1e44d8bca6fb0464794555e5ccd3a32e2a4f6e44a20605e4e82605189904f44d: not found

Steps to reproduce the issue:

Pull image
Attempt to export it

Describe the results you received:
Error shown above.
Describe the results you expected:
Tar with image.
Output of containerd --version:
containerd github.com/containerd/containerd 1.2.6-0ubuntu1~18.04.1

I just tried this and it worked for me me but I'm running on master.  Maybe try re-pulling the image?

@joedborg you can try to pull image with --all-platforms. the image has multiple platforms and you need to download all platforms.

Thanks @fuweid, that worked.  Not sure if this is a bug or my mistake (as in, should CTR give better feedback)?

@joedborg it is not a bug and not your mistake. it just needs to know what is platform. I think we can show the warning message to let the user know about this. :)

@fuweid why is it an obligation to download all platforms if it is not a multi-platform image?  we use the flag to make a choice right ?
In the case of a multi-platform image why should we specify a flag to download it that should be made in the code right ? :)
if we have choice -> flag
if we haven't choice -> no need flag

HI @fahedouch
containerd does provide the flag to choice for the platform. We cannot pull all the platforms data for one image because it is time-consuming job and consuming more disk space.
Therefore, ctr always downloads default platform.
In order to make the export image friendly, export action also exports data for default platform. It works in master branch. for @joedborg case, not found one, it won't happen again. Otherwise, you want to export all-platforms' data but you only have default platform. :p

Hi @joedborg @fahedouch
I will close this issue. please feel free to reopen it if you still have question about this. Thanks

HI @fahedouch
containerd does provide the flag to choice for the platform. We cannot pull all the platforms data for one image because it is time-consuming job and consuming more disk space.
Therefore, ctr always downloads default platform.
In order to make the export image friendly, export action also exports data for default platform. It works in master branch. for @joedborg case, not found one, it won't happen again. Otherwise, you want to export all-platforms' data but you only have default platform. :p

Hi @fuweid , Can you elaborate a bit more on why missing platform will trigger this error? And why in this case it won't happen again?

/reopen
for the additional question. We are seeing similar symptoms

❯ crictl --version
crictl version 1.20.0-24-g53ad8bb7

❯ ctr -n k8s.io images ls -q | xargs ctr -n k8s.io --debug  image export --all-platforms images.tar
ctr: content digest sha256:932ec9e10d241e8a5c820457b6e57a340c04baa46fd33c0cdd1876f79dc4bde1: not found

pull with "--all-platforms"

/reopen

@zhucan Were all images pulled using --all-platforms? This usually happens when a image(s) is missing a specific platform.

It's my fault, if use the crictl to pull images, it wiil cause the issue, but use ctr to pull images, it's normal


Fix usage of old classnames

Reviewer: @jarednova
Issue
The code is still relying on the old classnames without namespaces.
Solution
Changing oldclassnames to new namespaces names.
Impact
None.
Usage
No changes.
Considerations
I'm quite sure I still missed some.
Testing
No changes. Everything is still passing.

Coverage decreased (-0.2%) to 88.071% when pulling 997b846702905a9b99edd121c9e60949cbea103a on mrgrain:fix-usage-of-old-classnames into 2bcacbe50c90c7936da61d29238e3b52910a3ff9 on timber:master.

Coverage increased (+0.06%) to 88.284% when pulling 997b846702905a9b99edd121c9e60949cbea103a on mrgrain:fix-usage-of-old-classnames into 2bcacbe50c90c7936da61d29238e3b52910a3ff9 on timber:master.

Thanks @mrgrain, merged!


agent: retry instrumentation on errors

Errors retransforming a class should not prevent Jazzer from starting. These classes are assumed to be not interesting nor important for the fuzzing run and can be safely ignored.

Resolves a part of #648.

Is the vararg retransformation really that much faster than just doing a for loop with a single class here?
But i must confess the binary search way is quite clever.

I didn't measure it, but using a simple loop (as I did in the beginning) seemed to take reallllly long.

Just checked the openjdk code. This is really not just convenient API stuff. The varargs classes are called in jni code as array parameter.
That is non jit land, and so your approach seems to be the most sensible one.


navigation & swiftUI

Hi guys! Faced with such a question, how can I implement screen navigation control in swiftUI . I think I need to insert the pattern into the SceneDelegate.swift.Thank You!

You can create it use NavigationView, almost every thing in SwiftUI is View
struct ListView : View {
    var body : come View {
         NavigationView {
              List(0..<5){_ in
                    NavigationLink(destination: DetailView(rowDict: dict)) {
                        CustomRow(rowDict: dict)
                    }
              }
         }
    }
}

In sceneDelegate , use UIHostingViewController to show your page
let window = UIWindow(windowScene: windowScene) window.rootViewController = UIHostingController(rootView: ListView())

Closing due to inactivity. There will likely be more discussions about SwiftUI in the future.


Biome

add Biome as linter
React with 👍 to upvote this ticket.

@magne4000
If nobody is working, can I take over this on my end?

@Kenzo-Wada go ahead :)


⚠ EntVenture has degraded performance

In 9245fe0, EntVenture (https://entventure.org) experienced degraded performance:

HTTP code: 200
Response time: 14638 ms

Resolved: EntVenture performance has improved in 198783a.


Prophase - NJ - OBR 2.1 and ORC 2.1 Error Messages

Problem statement
A number of instances where ORC-2.1/OBR-2.1 are missing.
What you need to know
File ID: 4934896
Message(s) within the file "CDC_PRIME_covid-19-6e07a9eb-6123-46df-a594-f9ca8ea91dec-20220628134055.hl7" were in error on route (2) ELR-Validate 2.5.1
20220627104518
20220627104518
20220627104518
20220627104518
20220627104519
20220627104519
20220627104521
20220627104521
20220627104522
20220627104522
20220627104522
20220627104522

File ID: 4934899
Message(s) within the file "CDC_PRIME_covid-19-69c00e1d-7612-48df-8d49-3a6e88999852-20220628134054.hl7" were in error on route (2) ELR-Validate 2.5.1
20220627104526
20220627104526
20220627104526
20220627104526
20220627104526
20220627104526
20220627104527
20220627104527
20220627104527
20220627104527
20220627104527
20220627104527

File ID: 4934895
Message(s) within the file "CDC_PRIME_covid-19-cc8cd0ba-19f0-4bb2-90d2-36aca90432f6-20220628134038.hl7" were in error on route (2) ELR-Validate 2.5.1
20220621230904
20220621230904

File ID: 4934889
Message(s) within the file "CDC_PRIME_covid-19-9f809459-fa6c-496e-b1f2-97886a54fe9a-20220628134038.hl7" were in error on route (2) ELR-Validate 2.5.1
20220621230905
20220621230905

Update:
Removed the following message_ids from this ticket as they were related to ORC23. I will reach out to Simple Report so they can resend them.

message_id
0fa6aea2-3193-4fdb-b87c-74d5c49f7294
2d545211-d793-4f10-b97f-e54707510bb4
f806f01f-49d5-4071-934d-2d61a771e237
2d545211-d793-4f10-b97f-e54707510bb4
f806f01f-49d5-4071-934d-2d61a771e237
9ac13488-18cb-49d7-868f-eeca4056463e
f56e3ced-69c5-4fa3-b803-20ff5d847cfd

Update:
After a thorough investigation of the data and sender, it was noted that PhoPhase is still in testing phase. @oslynn will reach out to ProPhase and let them know to change the processing code to T instead of P. Also, @oslynn will give feed back to them on fields that need to be populated (ORC2/OBR2). At the same time, Ott will mention that MSH-10 needs to be a unique message id, as well as MSH-11 needs to be code T.
@sarahnw

2022-08-16 Emaile to Anthony (healthcareintegration/ProPhase)
Dear: Anthony,
We are getting notification from NJ that you sent messages to their production server.  However, they need to be sending to their staging/test server.
Follow are correction that need to be done on your messages.  Please correct your messages and resend them.
1.) Value of OBR-2 needs to be the same as OBR-3.
2.) Value of ORC-2 needs to be the same as ORC-3
3.) Value of MSH-10 needs to be a unique alphanumeric (please don't use date or time)
4.) Value of MSH-11 needs to be 'T'
Seeing the notification from NJ means that your organization already connected to NJ.  I will close the other  ticket and continue to
help you getting your messages to validate with NJ.
Very respectfully,
-Ott Sathngam
CDC SW ENG


Add option to disable floating chat.

I would like to have the option to revert the fullscreen landscape chat back to pushing over the stream image like it used to.

Still not working for me


uucore: add common splice-write functionality

Splice is a Linux-specific syscall that allows direct data copying from one file descriptor to another without user-space buffer. This can be used by several utilities to perform optimized copy under Linux and Android.

huh, i just realized that std::io::copy already uses splice when available, as documented by Rust:

On Linux (including Android), this function uses copy_file_range(2), sendfile(2) or splice(2) syscalls to move data directly between file descriptors if possible.

it is, however, subject to change. should we keep the reimplementation?

nope, not yet. that's sounds interesting to do, i will see which one performs better

it seems like the reimplementation using splice wins here, at least on my linux machine
i did some tests on install with hyperfine to write from /dev/zero to a file:
dd if=/dev/zero of=/dev/stdout bs=1M count=1000 | ./install /dev/stdin "output_file"

Reimplementation, 100 runs:

Command
Mean [s]
Min [s]
Max [s]
Relative

bash ./test_reimp.sh
1.324 ± 0.500
0.828
3.253
1.00

using io::copy, 100 runs:

Command
Mean [s]
Min [s]
Max [s]
Relative

bash ./test_iocopy.sh
1.560 ± 0.467
1.173
3.427
1.00

you should use hyperfine  for benchmarking :)

Oh yeah i did, or.. i'm supposed to just pass the commands to hyperfine directly?

tried more
reimplementation, 1G chunk, /dev/zero to file (100 runs):

Command
Mean [s]
Min [s]
Max [s]
Relative

/bin/dd if=/dev/zero of=/dev/stdout bs=1G count=1 | ./install /dev/stdin "output_file"
1.413 ± 0.550
0.842
3.417
1.00

io::copy, 1G chunks, /dev/zero to file (100 runs)

Command
Mean [s]
Min [s]
Max [s]
Relative

/bin/dd if=/dev/zero of=/dev/stdout bs=1G count=1 | ./install-copy /dev/stdin "output_file"
1.663 ± 0.452
1.198
3.619
1.00

reimplementation, 1G chunk, file to file (100 runs):

Command
Mean [s]
Min [s]
Max [s]
Relative

/bin/dd if=test of=/dev/stdout bs=1G count=1 | ./install /dev/stdin "output"
1.146 ± 0.291
0.819
2.394
1.00

io::copy, 1G chunk size, file to file (100 runs):

Command
Mean [s]
Min [s]
Max [s]
Relative

/bin/dd if=test of=/dev/stdout bs=1G count=1 | ./install-copy /dev/stdin "output"
1.634 ± 0.527
1.173
4.430
1.00

i took a look at the implementation of io::copy, seems like they used 0x7ffff000 (2,147,479,552 bytes) as the chunk size which is already the maximum.
set that to my splice and..

Command
Mean [s]
Min [s]
Max [s]
Relative

/bin/dd if=test of=/dev/stdout bs=1G count=1 | ./install /dev/stdin "output"
1.207 ± 0.465
0.809
3.685
1.00

it's a biiit slower. But still faster than using io::copy.
i traced the syscalls made for both and both seem to be using splice similarly. i have no idea why our splice copy is faster, i may wanna dig more.

could you please properly rebase your patches? the diff is showing unrelated changes
thanks

yeah yeah idk why i messed up the branch

i've made (local) changes to cp, cat, install, and yes to use the module. however, i had problems with cp because the function that called the splice write actually returns Error from std::io, but the splice write doesn't really return

thanks


typo: plookup -> plonkup, fix clippy

Description

Fixed typos: Plookup -> Plonkup
Fixed clippy warning

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[x] Targeted PR against correct branch (main)
[x] ~Linked to GitHub issue with discussion and accepted design OR have an explanation in the PR that describes this work.~
[x] ~Wrote unit tests~
[x] ~Updated relevant documentation in the code~
[ ] Added a relevant changelog entry to the Pending section in CHANGELOG.md
[ ] Re-reviewed Files changed in the GitHub PR explorer

Do we want to replace notation Plookup with Plonkup? I thought Plonkup means Plonk + Plookup, and all things that I named as Plookup-related stuff are those related to Plookup, the rest are (Turbo)Plonk related.

ah, I see... I was mistaken, sorry!
Plookup make sense then.


Problems with installing addon

Description
On a fresh statamic 5.7.2 install I get error messages when trying to install the campaign monitor addon.
first attempt $ composer require statamic-rad-pack/campaign-monitor gets this error message:

second attempt $ composer require statamic-rad-pack/campaign-monitor get this error message:

Steps to reproduce
$ statamic new test
$ composer require statamic-rad-pack/campaign-monitor

Environment
Environment
Application Name: Statamic
Laravel Version: 11.10.0
PHP Version: 8.3.7
Composer Version: 2.7.7
Environment: local
Debug Mode: ENABLED
URL: cm.test
Maintenance Mode: OFF
Cache
Config: NOT CACHED
Events: NOT CACHED
Routes: NOT CACHED
Views: NOT CACHED
Drivers
Broadcasting: log
Cache: statamic
Database: sqlite
Logs: stack / single
Mail: log
Queue: sync
Session: file
Statamic
Addons: 2
Sites: 1
Stache Watcher: Enabled
Static Caching: Disabled
Version: 5.7.2 Solo
Statamic Addons
edalzell/forma: 3.0.1
statamic-rad-pack/campaign-monitor: 2.0.0

Ah the release action failed - thanks for letting me know.
I've pushed out 2.0.1 which should fix this!

Thank you for looking into this so quickly. Unfortunately, I still get the same error when I try to install it in a new Statamic installation.

I was being silly - 2.0.2 should ACTUALLY fix it!

Thanks!


Added 1 website to the list

Hello I'm a noob!
I don't see any "porn" related lists on your "contact one of our hosts sources".
But even if there was, I wouldn't know how to contact them!
Also, I noticed that when you modify a large file, the raw.githubusercontent.com website does NOT show the new changes! It just loads the old file on the browser, but if you download the file, it's fine and the changes are there, does this happen to everybody else? I don't think it's my browser cache because I tried a different browser and also deleted my cache!

Thank you @Saya47!  Good find.
The file you edited is generative.  So its contents are re-created on each release.
That means your change is good, but it's in the wrong file.
We're mostly an aggregator of hosts files from active and reputable curators of hosts files, and we package these amalgamated hosts files in various ways.
Ping @sinfonietta, will you list this domain and its www subdomain?

@Sinfonietta:
<IP_ADDRESS> javla.tv
<IP_ADDRESS> www.javla.tv
👍

Another day.....another TROLL 🤔

Thanks @Saya47 I apologize for the delay.  Unacceptable.
Merging!

@Saya47 sorry this commit was to a generative file, which is a comment I made on October 31st. 🙄 I need a holiday.
Ping @sinfonietta...


Remove reference docs from master

[ ] add make rules for building the docs

this allows the docs to be regenerated at tags/releases (versioning)
enables the creation of grpc-xxx-docs debian packages

[ ] remove the reference docs on master; the generated docs will no longer need to be checked in, and so we should only have them on the gh-pages branch which github publishes

Note that C# docs is generated on Windows with sandcastle tool. Thus, having a make rule to regenerate  for C# is unrealistic.

There's a shell script (tools/doxygen/run_doxygen.sh) - is this sufficient?

I think at least for now we have a sufficient story for regenerating the docs.


Refactoring of Quality Profiles due to changes in Sonar Java Analyzer v6.0

With the 6.0 version of the Sonar Java Analyzer, the repository key for Sonar rules changed from "squid" to "java". We will need to refactor those keys in our quality profile declaration.
Also rule S3340 was taken out, so that should either be dropped from the xml or filtered out during the profile creation.
Rule S1188 was split into S1188 and S5612, so we will have to think about whether we need this new S5612 and include it in the xml.
More information here:

Release notes of Java analyzer v6.0
Thread asking about getting information during server startup (i.e. which version of the Java analyzer is active on the server)

Deprecated -> Replacement
S2258, S2278  ->          S5547
S2277         ->          S5542

See PR #56

There was an answer from the SonarQube team for this issue:
They support basic HTML without style information in their rule description. There is currently no plan to add styling.
For the full answer, see the topic referenced in the original issue text.

Further rules that have been deprecated and need to be removed / replaced:

S3027
S2391
S1148

@lmarniazman can you clarify the status of this issue?
IMHO it has already been fixed with PR #56. Thereforee, the milestone should be 2020.08.001 and the issue should bee closed. Correct?

Closing as agreed with @lmarniazman


Input field - small size

Input field for mobile sizes and internal systems (like Flyt) where there is a demand for more items on a smaller space.

Figma reference:
https://www.figma.com/file/Wh8Gfnesn25shH31sKyIaT/Jøkul-bibliotek?node-id=331%3A1143


How to get the total using offset Pagination?

I am using the offset pagination
invoicesByOffset: {
      type: InvoiceConnection,
      args: connectionArgs,
      sqlPaginate: true,
      orderBy: {
        INVOICE_ID: 'desc'
      },
      resolve: async (parent, args, context, resolveInfo) => {
           return joinMonster(resolveInfo, context, sql => dbCall(sql, knex, context), options)
      }

I also have below in the Invoice Type
const connectionConfig = { nodeType: Invoice }
if (PAGINATE === 'offset') {
  connectionConfig.connectionFields = {
    total: { type: GraphQLInt }
  }
}

I tried below to get the count but did not work. Can total be only retrieved programmatically?
{
   invoicesByOffset (first:2) {
    pageInfo {
        hasNextPage
        startCursor
        endCursor
      }
      edges {
        cursor
        node {
      	total
    		invoice_id
    		invoice_num
        invoice_amount
        allLines {
          line_number
        }
        }
      }
    }
}

This line
if (PAGINATE === 'offset') {
  connectionConfig.connectionFields = {
    total: { type: GraphQLInt }
  }
}

Adds the total field to the InvoiceConnection. So you should ask for the total field on the Connection type, like so:
{
  invoicesByOffset (first:2) {
    total
    pageInfo {
        hasNextPage
        startCursor
        endCursor
      }
      edges {
        cursor
        node {
            invoice_id
    	    invoice_num
            invoice_amount
            allLines {
              line_number
            }
         }
      }
    }
}

It gives me error
      "message": "Cannot query field \"total\" on type \"InvoiceConnection\".",

Here is the debug
join-monster
  join-monster SQL
  join-monster  SELECT
  "a"."INVOICE_ID" AS "b",
  "a"."$total" AS "c",
  "a"."INVOICE_NUM" AS "d",
  "a"."INVOICE_AMOUNT" AS "e",
  NULLIF(CONCAT("f"."INVOICE_ID", "f"."LINE_NUMBER"), '') AS "f__g",
  "f"."LINE_NUMBER" AS "f__h"
FROM (
  SELECT "a".*, count(*) OVER () AS "$total"
  FROM AP_INVOICES_ALL "a"
  WHERE 1 = 1
  ORDER BY "a"."INVOICE_ID" DESC
  OFFSET 0 ROWS FETCH NEXT 3 ROWS ONLY
) "a"
LEFT JOIN ap_invoice_lines_all "f" ON "a".INVOICE_ID = "f".INVOICE_ID
ORDER BY "a"."INVOICE_ID" DESC +14ms
  join-monster
  join-monster SHAPE_DEFINITION
  join-monster  [ { INVOICE_ID: 'b',
    '$total': 'c',
    invoice_id: 'b',
    invoice_num: 'd',
    invoice_amount: 'e',
    allLines: [ { 'INV#LIN': 'f__g', line_number: 'f__h' } ] } ] +3ms
the sql isSELECT
  "a"."INVOICE_ID" AS "b",
  "a"."$total" AS "c",
  "a"."INVOICE_NUM" AS "d",
  "a"."INVOICE_AMOUNT" AS "e",
  NULLIF(CONCAT("f"."INVOICE_ID", "f"."LINE_NUMBER"), '') AS "f__g",
  "f"."LINE_NUMBER" AS "f__h"
FROM (
  SELECT "a".*, count(*) OVER () AS "$total"
  FROM AP_INVOICES_ALL "a"
  WHERE 1 = 1
  ORDER BY "a"."INVOICE_ID" DESC
  OFFSET 0 ROWS FETCH NEXT 3 ROWS ONLY
) "a"
LEFT JOIN ap_invoice_lines_all "f" ON "a".INVOICE_ID = "f".INVOICE_ID
ORDER BY "a"."INVOICE_ID" DESC

Then perhaps PAGINATE is not true?

It is set to true
invoicesByOffset: {
      type: InvoiceConnection,
      args: connectionArgs,
      sqlPaginate: true,
      // this time use "offset pagination", an implementation based on LIMIT/OFFSET
      orderBy: {
        INVOICE_ID: 'desc'
      },
      resolve: async (parent, args, context, resolveInfo) => {
      return joinMonster(resolveInfo, context, sql => dbCall(sql, knex, context), options)
      }
    },

Not sure how that snippet is relevant. Nothing in there suggests what the value of PAGINATE is, which in defined by const { PAGINATE } = process.env. Did you set that in your environment?

I thought as per the http://join-monster.readthedocs.io/en/latest/pagination/, it says "Tell Join Monster you want to use this method by adding two properties to the field. Set sqlPaginate to true. Set orderBy to tell it how to sort." So I have set sqlPaginate: true.

It worked once I started node with this env variable. PAGINATE=offset npm start.


⚠ Bofrost.at has degraded performance

In 37ec9cf, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2172 ms

Resolved: Bofrost.at performance has improved in e93e593 after 41 minutes.


Fix for "lazy loading not working untill scroll" - Always listen when we set a new image source

First off, great directive.
A lot of users are reporting that the lazy loading logic does not work for images already in the viewport, and that they have to force a scroll to get them to load. #27 #24
The reason for this is probably because they are using routing such as ngRoute or ui-router. What is happening is that there is a "listening trap" occurring. When new images sources are being instantiated, we aren't triggering a listen for the new images and "isElementInView" is never reached until we scroll (or trigger window resize) This is because listening is already running without adding the new image to the array.
This PR always starts listening when a new image is added and fixes the problem, however if anyone has a better solution i'd love to hear it.

the issue still exists !!

@abunour22 do you mean after checking this branch?


[Discussion] Service Bus - New Version - Message Structure

The intent of this issue is to solicit feedback from the community in advance of the GA of the next version of the Service Bus Track 2 library (which will follow several Preview releases).
As a reference, the .NET Azure SDK guidelines can be found here: https://azure.github.io/azure-sdk/dotnet_introduction.html
In the previous versions of the Service Bus library, there was a single type for both sending and receiving messages. There are a couple downsides to this to go with the obvious upside of its simplicity:

System level properties would appear on the message that a user is constructing for sending. Although these properties are read-only, it adds some cognitive overhead to reasoning about the type.
When receiving a message, any of the settable properties can still be set. However, setting these properties doesn't actually do anything even after settling the message. For instance a user might think that doing something like the below might actually change the messageId, which it wouldn't. This concern is more pronounced with our proposed addition of overloads for settlement methods taking a message (it could be argued if the settlement only accepts a lock token, then no one would think that changing any of the other properties would affect the settlement).

var message = await receiver.ReceiveAsync();
message.MessageId = "newMessageId";
// in the new version, we are offering overloads for settlement methods
// that take a message in addition to the ones that take a lock token
await receiver.AbandonAsync(message);

In order to address these two issues, we are proposing having two separate types for messages:

A ServiceBusMessage which is what a user would create for sending.
A ServiceBusReceivedMessage which is what a user would get back when receiving a message.

Intially, we thought that ServiceBusReceivedMessage could derive from ServiceBusMessage, but the issue we ran into there was needing to somehow still make the received message properties read-only (we could do runtime validation or use "new" keyword), in addition to wanting to make it super clear to users that re-sending a message that has system properties set on it, will not end up having those same system properties set once it is processed by the service (these system properties would be thrown out before sending).
So our updated proposal is to not have ServiceBusReceivedMessage derive from ServiceBusMessage. This allows us to keep ServiceBusReceivedMessage immutable. It also means we don't have to worry about a user sending a received message. In order to support re-sending a received message we offer a static factory method.
foreach (ServiceBusReceivedMessage msg in receivedMessages)
{
    ServiceBusMessage sendableMessage = ServiceBusMessage.CreateFrom(receivedMessage);
    await sender.SendAsync(sendableMessage);
}

The downside to breaking the hierarchy is that code that could be written to process a message in some way that should be agnostic to whether the message was sent or received, would now have to be duplicated somewhat. We would like to see what the community thinks about this tradeoff.

Just for clarity in the example - it'd be good to change msg to receivedMessage

Another option is to have a base class that both ServiceBusMessage and ServiceBusReceivedMessage derived from, so at least the common properties can still be accessed.
We would just never accept the base class as parameters to these methods (ie, only the leaf classes get used for parameters)

Another option is to have a base class that both ServiceBusMessage and ServiceBusReceivedMessage derived from, so at least the common properties can still be accessed.
We would just never accept the base class as parameters to these methods (ie, only the leaf classes get used for parameters)

Yes, if we needed to we could add this in the future, but would prefer to avoid it if possible.

See https://github.com/Azure/azure-sdk-for-net/issues/10829


Fix VSCode not showing errors in code

[x] Regenerate .eslintrc.json

There is a possibility that eslint affects react's error displaying. Mentioned in /web/readme.md.


Release links are lowercased

https://github.com/BtbN/FFmpeg-Builds has Releases link https://github.com/btbn/ffmpeg-builds/releases instead of https://github.com/BtbN/FFmpeg-Builds/releases
All other tabs respect letter case, releases-tab feature should respect it too. Sidebar Releases block which is removed by this feature also respects letter case.

This is because we normalize the capitalization in the function getRepoURL. Maybe we should review its usage and see if it can reliably get the correct the capitalization elsewhere, at least when we use it to generate links (as opposed to comparisons and cache keys)

What's the harm in having it lower cased? The link still works as expected for me and I likely wouldn't have even noticed.

@busches generally I agree, this is not an actual issue, but the solution seems easy enough. Even if we forget to preserve the capitalization sometimes, we can still try.


Persistence of mapped remote work item

After the remote work item is persisted in the temporary table called 'TrackerItem'
Convert the remote item into a local work item.
Check if the work item exists. Use the remote_item_id in the json to check for existence of work item.
If present, update it, else, create a new one.

Fixes https://github.com/almighty/almighty-core/issues/170

Current coverage is 25.26% (diff: 0.00%)

Merging #264 into master will decrease coverage by 0.23%

@@             master       #264   diff @@
==========================================
  Files            33         33
  Lines          1200       1211    +11
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            306        306
- Misses          839        850    +11
  Partials         55         55

Powered by Codecov. Last update 2721fb6...03a73d2

@sbose78 Could you resolve the conflicts created by #222 and increment the migration version?

thanks @aslakknutsen for pointing out -

I've rebased - that has the brought the version to 2. There are no migrations in this PR, so it remains at 2.
I've taken care of the 2 conflicts.

There are no migrations in this PR, so it remains at 2.

@sbose78 Ah, you're right. We removed that. Silly me :)


Update docs to note about single-line-Base64 for k8s certs from KeyVault

The usage of these values in the template needs the value to be base64 encoded (which az keyvault secret set does support) and all on a single line (which it does not) otherwise it is not valid YAML and cloud-init will fail to process it.
It might be possible to use the [base64()] function in the template instead of this, but for now updating the docs is better than making everyone figure it out for themselves.

@ashb,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


Configure AppVeyor

Configure a development environment and indicate build status of current source in README.md (to be created)?

Configured, but need to fix #16. We may also want to partially include YAML file in repository (without publishing profile).


Link does not resolve

This link does not provide the page stated.
https://support.microsoft.com/office/change-participant-settings-for-a-teams-meeting-53261366-dbd5-45f9-aae9-a70e6354f88e
Thank you!

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

ID: 92fcb1f6-5cc2-f6bd-cfa9-11d811f1dbf1
Version Independent ID: 9a571e6d-8cb3-9ff8-a5c2-62deab146264
Content: Admin quick start - Meetings and live events in Microsoft Teams - Microsoft Teams
Content Source: Teams/quick-start-meetings-live-events.md
Service: msteams
GitHub Login: @LolaJacobsen
Microsoft Alias: lolaj

@Sdean1234 thank you for submitting feedback.
I think the best way forward is if you open a service ticket in your tenant so this can get resolved ASAP. Based on the outcome let me know if it is something that can be called out in the docs.
Please follow this link to contact support for business products:https://docs.microsoft.com/office365/admin/contact-support-for-business-products
Please keep us posted here on the resolution so we can feed whatever information you discover into the content.

@Sdean1234  Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

@Sdean1234 Thank you for submitting feedback. We understand that this issue has been resolved.
Please feel free to re-open this issue if there is a specific area of the docs that we can improve or make better. Thank you.


First-class random access API for KnnVectorValues

addresses https://github.com/apache/lucene/issues/13778
Key things in this PR:

Introduces abstract KnnVectorValues from which ByteVectorValues and FloatVectorValues derive;
Folds RandomAccessVectorValues into KnnVectorValues thus eliminating some casts.
RandomAccessVectorValues.Floats becomes FloatVectorValues and RandomAccessVectorValues.Bytes becomes ByteVectorValues. RandomAccessQuantizedByteVectorValues folded into QuantizedByteVectorValues.
IndexInput getSlice() moved to a new HasIndexSlice interface.
Introduces VectorEncoding KnnVectorValues.getEncoding() to enable type-specific branches in a few places where we are dealing with abstract KnnVectorValues (tests only IIRC). Also used that to provide a default getVectorByteLength().
KnnVectorValues no longer extends  DocIdSetIterator; rather it provides a tightly-coupled iterator(). This enables refactoring common iteration patterns that were repeated many times in the code base. This new iterator, DocIndexIterator provides an additional method index() analogous to IndexedDISI.

Some of the methods on KnnVectorValues have default impls that throw UnsupportedOperationException enabling subclasses to provide partial implementations and relying on testing to catch missing required methods. I'd like feedback on this. Should we provide implementations we never use, just to make these classes complete? That didn't make sense to me. But the previous alternative of attempting to provide strict adherence to declarative contracts was becoming in my view, overly restrictive and leading to hard-to-maintain code. Some of these readers would only ever be used iteratively. Random access is required for search, but not used when  merging the values themselves, and when we merge we do search, but using a temporary file so that searching is always done over a file-based value. Random access also gets used during merging when the index is sorted, again this is provided by specialized readers, so not every reader needs to implement random access. But the API maintenance is greatly simplified if we allow partial implementation. Anyway that is the idea I am trying out here. Can we live with a little less API purity and gain some simplicity and less boilerplate?
Notes for reviewers:
There is a lot of code change here, but much of it is repetitive. I recommend starting with KnnVectorValues and checking its DocIndexIterator inner class. The rest of the changes are basically consequences of introducing those abstrations in place of the Random*Values we removed.

another concern I have is how this would impact ongoing work to enable multiple vectors per doc/field. There would almost certainly be conflicts with that PR on the surface, but I hope this could actually simplify things in that the new DocIndexIterator class could be enhanced / extended to provide access to a series of values (maybe a list or array?) instead of (or in addition to?) a single one, possibly centralizing the required changes (since we have many fewer iterator implementations after this change).

but I hope this could actually simplify things

That is my intuition as well.

Am guessing correctly that you're targeting 10.0 for this change?

Thanks for the quick review! I will get started on addressing. As for timeline for this change, it would definitely be convenient to get in to 10.0 release. I think you had said 9/22 would be a feature freeze date; it seems we could possibly meet that timeline. I will be traveling starting tomorrow for a week, but I should be able to put in some quality time on the plane LOL

think you had said 9/22 would be a feature freeze date

I was thinking of doing it next week, but we can backport this PR even though the branch has been cut if it looks ready/safe.

OK there seem to be some test failures ... I did a complete run, but randomized testing always seems to ferret out something interesting!

Regarding the rename of fromOrdToDoc to all I think it was not helpful and plan to revert or maybe come up with some other name. The problem is we also have createDenseIterator which is also all. Essentially we have Sparse and Dense all-iterators. Maybe instead of fromOrdToDoc we can say createSparseIterator?

FWIW I started playing with removing copy() by replacing it with a factory method for a dictionary: https://github.com/msokolov/lucene/commit/ae7aca32a690a4b21a3da793258ce17560b551e7. Not sure how far I'll go. :)

I also just started trying to replace copy() with the approach of adding vectorValue(int ord, float[] outValue) although this does add a copy operation in some cases where previously we would expose internal storage so I'm not sure it's great

I iterated a bit on my branch, so that there is no more call site for FloatVectorValues#copy: https://github.com/msokolov/lucene/compare/knn-vector-random...jpountz:lucene:knn-vector-random?expand=1. The API looks better to me this way, but I'm keen on getting feedback before pursuing as this is quite a tedious refactoring.

FWIW I tried removing copy() and using caller-supplied storage in vectorValue. In many ways this looks nicer, but it leads to substantial slowdown in indexing/merging because of the additional copy required, so I think it's not really viable. We could provide both vectorValue(int) and vectorValue(int, float[]) and avoid copy() that way. Maybe that's best

ooh I just saw the Dictionary branch - that looks like a nice approach, I don't think I really understood what you were proposing before. One Q I have is can we remove copy()? Do we need to deprecate it first -- and if so, could we deprecate in 9x branch? Or perhaps it is too late for that

One Q I have is can we remove copy()? Do we need to deprecate it first -- and if so, could we deprecate in 9x branch?

You are already removing RandomAccessVectorValues, which is the thing that used copy(), so, I am not sure what there is to deprecate 😂

I'll post one more iteration here addressing the concerns about dangerous default impls that adds back impls of copy() and cost(). I also added a test-and-throw ensuring that the vectorValues impls that require forward-iteration enforce it. We can fully implement random access later without breaking any APIs.
I also think we should go ahead with Adrien's Dictionary idea, but do this in two steps because there is a lot going on here already.

The dictionary idea is OK, but I still don't see how it removes copy(). Besides the caching of values, copy gives us multi-threaded safety by copying the underlying index readers. Otherwise we are using the same reader between threads. For concurrent merging of graphs, this is important.
I agree, any further refactoring should be done in another PR.

I think the idea w/Dictionary is that callers, instead of calling copy().vectorValue(int ord) would call dictionary().vectorValue(int ord). So then the scratch vector storage (if needed) would be in the Dictionary not in the VectorValues, and thus not shared by multiple users of the same values instance.  In some sense it's not very different, but in the sense that the Dictionary has a much more limited API than the source it came from, it is different.

Exactly. I tried to model it similarly to what doc values do, where SortedDocValues#termsEnum() returns a dictionary with a different backing IndexInput clone on every call.

hm interesting there was an EOFException in there - I'll dig

OK, I found an off-by-one error plus a problem with lazy iterator creation that slipped in when we got rid of createIterator(). It makes me a little nervous these didn't show up in earlier testing. I'm now running with tests.iter=20

I do not understand what happened here - somehow github is checking out different code than I pushed?? Will try pushing again??

OK, I think this is ready after a few minor issues have been addressed. I opened https://github.com/apache/lucene/issues/13831 to track replacing copy() with dictionary()

Should there be a migrate entry added with this change?

Should there be a migrate entry added with this change?

oh thanks, yes, and a CHANGES entry. I opened https://github.com/apache/lucene/pull/13833 if you want to review


Fix/protocol test flakyness

Description

Activate ts compilation for tests
Fix ts errors
Make error output more understandable

Tested
ran:

yarn test 2 times
yarn test epochrewards 10 times

Related issues
Wanted to fix the eventually occurring error:
AssertionError: expected 0.5 and got 0.500000007

ci/circleci: end-to-end-geth-governance-test is fixed in https://github.com/celo-org/celo-monorepo/pull/2037


added function

added a function to do a thing

@phicks22 it's helpful to make your PR titles and descriptions informative of what your function actually does :)

Everything's fixed!

Great! Go ahead and merge


[GHAR] Send stderr to stdout for ssh -t $JUMPHOST cmd

Summary
Without this the output is not going to $OUTPUT_TEE
Test Plan
Successful run here https://github.com/libra/libra/runs/502331174?check_suite_focus=true

@bors-libra r+

:pushpin: Commit f26e30c has been approved by sausagee

:hourglass: Testing commit f26e30ce7a7edf3908e2ef0eb52c97533e89820d with merge e508ae1403243089d6012da8792b64cb98449f26...

@bors-libra r=sausagee

:pushpin: Commit 432c877 has been approved by sausagee

:hourglass: Testing commit 432c877ae1f12b644dcc1d23976277e0826683ad with merge 8b523b171cc0306e1151e9fd41d49f647a493934...

@bors-libra r=sausagee

:pushpin: Commit ffc9259 has been approved by sausagee

:hourglass: Testing commit ffc9259acfcc76a6bbc5f9966e4ee6fef785a6c3 with merge a259e2121e5dda151971e8826bbaf1eabf2346aa...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: sausagee
Pushing a259e2121e5dda151971e8826bbaf1eabf2346aa to master...


New Record submits taking a long time to complete and not following submit rules

Hi Norman!
Something is going awry with form submits to complete new records.
Upon hitting submit on a form in a modal pop-up page I can see the record showing up on the parent page, but the form itself just spins and takes an inordinate amount of time to submit. When it finally does, it ignores the "return to parent page" submit rule and reloads the modal page as a regular page.
Tried shooting a video, but it was too big.

Here's a screencap of the console:

thanks in advance!

Rolling back to 0.11.14 does not seem to help.

Hi Micah,
Thanks for reporting this.    I will try to reproduce the bug here.
Norm

Can you try it please?
We're at KTL v 0.12.2.  Refresh your pages.
Close issue if ok.
Norm

Looks great, perfect! Thank you so much!

Hi Micah,
There's no way for me to reach you, so I can let you know about the important KTL updates.
If you agree to send me an email to<EMAIL_ADDRESS>it would be appreciated, as I'm building a KTL users mailing list.  Don't worry, I only send very important emails, whenever that's required.
You should also consider subscribing to the KTL Changelog discussion.
For now, I need to make sure you've seen the important server migration to AWS.
See here for the details and what you need to do: https://github.com/cortexrd/Knack-Toolkit-Library/discussions/47#discussioncomment-6232520
Normand


Don't allow riders to unassign themselves within N hours of the delivery

Right now you could unassign yourself from a task a minute before a delivery is scheduled. This will be an issue for dispatchers as people may just click that button last minute.
Within a certain time-period of the delivery start (to be determined in conversation with staff), riders should not be able to unassign themselves from the delivery. Instead they should be told to contact dispatch (currently via text message) to do so.

we can't prevent riders from unassign themselves
open a modal to confirm that they want to unassign themselves and ask them to text the dispatch to let them know
on mobile show an action button to "text dispatch"

We're going to do day of as the cut off

Closed in #375


fix(documentation): Floating label class is added on input even when input has no floating label

@imagoiq where exactly does this happen? I can't seem to reproduce on https://design-system.post.ch

Only in the last story, here: https://design-system.post.ch/?path=/docs/2df77c32-5e33-402e-bd2e-54d54271ce19--docs#validation