wrong url for drivers

Microsoft JDBC Driver 4.0+ for SQL Server link points to the Microsoft OLE DB Driver for SQL Server url and vice versa.

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

ID: 93dc3f31-08df-0ca2-2793-e8abe4de193a
Version Independent ID: cebd12d7-aedc-f24f-79d3-c2361aa535ec
Content: Driver and client connectivity support for availability groups - SQL Server Always On
Content Source: docs/database-engine/availability-groups/windows/always-on-client-connectivity-sql-server.md
Product: sql
Technology: high-availability
GitHub Login: @MashaMSFT
Microsoft Alias: mathoma

@JanosBerke -- thank you for bringing this to our attention.  I am looking into the article.

Thank you for your feedback.  I have updated the documentation and it should be live by tomorrow.


1.2

Requesting testing be done for merge of payment feature addition, new admin settings page, and version 1.2.

Major Changes:

Added Stripe Payment option
Settings page redesigned

Minor Feature Tweaks:

Mouseover notifications keeps them from disappearing
When Hints are requested, hint tab will become active after redirect
Added DateTime picker for dates in settings

Testing complete.  Merging for 1.2.


Always have the tools up to date.

I think it is possible with this command to have the latest tools all the time.
I am in 31 and I can't use your docker anymore, it's a shame.

CMDLINE_TOOLS_VERSION="$(curl https://developer.android.com/studio/index.html#command-tools | sed -n 's/.commandlinetools-linux-(.)_latest.zip.*/\1/p' | uniq)"

Done in version 21. Thanks.


[Impeller] [Vulkan] Graphical artifacts while rendering images

This video showing graphical artifacts while painting images was observed while running on the Impeller backend in profile mode against https://github.com/flutter/engine/commit/e57b5bac4244d09f9a4404d52c534a9c820d5915.  The Vulkan renderer was in use:
E/flutter (12817): [ERROR:flutter/shell/platform/android/android_context_vulkan_impeller.cc(48)] Using the Impeller rendering backend (Vulkan).

I tried getting GPU info from https://vulkan.gpuinfo.org/download.php, but it wouldn't install on my TV:
adb: failed to install /Users/tvolkert/Downloads/vulkancapsviewer_3.32_arm.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]

According to javax.microedition.khronos.opengles.GL10#glGetString(GL_RENDERER) (called here - basically I create a GLSurfaceView in order to then ask it info about itself), the GPU is a https://developer.arm.com/Processors/Mali-G52
In case it helps, these artifacts were also observed when I captured this systrace: https://drive.google.com/file/d/1bagpcY5wYprqMPmfTUJXeTAVuctbxHAv/view

FYI, this still reproduces against cb26a01a40e98d867ae9b45cf13ae9e11d085a68


use version operators for specifying ruby version in Gemfile

Related to the original PR, we are adding the requested meta data to the Gemfile. So far we have a proposed RUBY VERSION  that would store the meta information of the Ruby.
You'll be able to support version operators on the version of Ruby you'd like to support.
For example, if you wanted the latest patch release from Ruby 2.2.
$ cat Gemfile
ruby "~> 2.2.0"

This way the Ruby version selected could always be the latest stable. Especially useful for deployments on production environments that are constantly supporting the latest security release of Ruby (eg: Heroku and PWS).

@panthomakos we redid the pull request to merge your PR, so the commit history is maintained.

Bundled with took me three tries to make backwards compatible. To be honest, I feel like, if this is a road we want to go down, it should target the 2.0 branch, as I'm very nervous about changing the lock file for 1.x

Please share what those issues were. If I can work around those problems, there are a series of use cases that this feature help us solve. Would a g-hangout be easier to discuss this?
We've only changed the lock file because the original PR have comments from @indirect. We care more about the version operators for the ruby directive in the Gemfile.

I think it's possible to take the same approach we took in BUNDLED WITH, and lead with three spaces so old Bundlers will just ignore the line.
Keep in mind, though, that using this feature will require everyone on a team and all production boxes to have a version of Bundler that supports this.

@indirect thanks for the input. We'll add the needed spacing to keep backwards compatible.
We'll investigate if we might be able to add integration tests for backwards compatibility too. That way if any future changes are made, it will blow up for someone in the test suite. I emphasize, maybe we can do this. :-)

This looks good! One thing I'm not sure about is how you upgrade your locked Ruby version once it's in your lockfile... what if you're locked to 2.2.3 and the Gemfile changes to say "~> 2.3.0"?

Hey @indirect, here are our thoughts on how that behavior would work. Let us know if something looks off. Thanks!
Given I am a Ruby developer,
and my Ruby version is 1.8.7,
when I put `ruby '~> 2.1'` in my Gemfile
and I run `bundle` in my project folder
then I get an error [or warning].

Given I am a Ruby developer,
and my Ruby version is 2.1.3p100,
when I put `ruby '~> 2.1'` in my Gemfile
and I run `bundle` in my project folder
then my Gemfile.lock will have Ruby version '2.1.3p100'.

Given I am a Ruby developer,
and my Ruby version is 2.1.3p100,
when I put `ruby '~> 2.1'` in my Gemfile
and I run `bundle` in my project folder
and I switch my Ruby version to 2.1.4p222
and I run `bundle` in my project folder
then my Gemfile.lock will have Ruby version '2.1.3p100'
and an error [or warning] is displayed.

Given I am a Ruby developer,
and my Ruby version is 2.1.3p100,
when I put `ruby '~> 2.1'` in my Gemfile
and I run `bundle` in my project folder
and I switch my Ruby version to 2.1.4p222
and I run `bundle ruby-update` in my project folder
then my Gemfile.lock will have Ruby version '2.1.4p222'.

Given I am a Ruby developer,
and my Ruby version is 2.1.3p100,
when I put `ruby '~> 2.1.0'` in my Gemfile
and I run `bundle` in my project folder
and I switch my Ruby version to 2.2.2p505
and I run `bundle ruby-update` in my project folder
then my Gemfile.lock will have Ruby version '2.1.3p100'
and an error [or warning] is displayed.

Given I am a Ruby developer,
and my Ruby version is 2.1.3p100,
when I put `ruby '~> 2.1.0'` in my Gemfile
and I run `bundle` in my project folder
and I switch my Ruby version to 1.8.7p55
and I put `ruby '~> 1.8.0'`
and I run `bundle ruby-update` in my project folder
then my Gemfile.lock will have Ruby version '1.8.7p55'.

@jtarchie @mavenraven that looks reasonable. I think I would prefer that the user run bundle update --ruby or bundle update ruby, and I'm happy to accept this pull once it implements either of those options.

Hey @indirect, we've updated the PR with tests and implementation that cover the above use cases. We also added coverage that uses bundle update --ruby to update your locked Ruby version. Please let us know if there is anything else that needs to be done. Thanks!

@indirect is there anything else you'd need in this pull request?

+1 This would be very helpful. It's not easy to figure out what versions of the ruby buildpack support a specific Ruby version, and manually specifying the the Github url in our manifest has a tendency to break. I would much prefer specifying my Ruby version and not knowing the buildpack details.

@kayline this won't change the Ruby buildpack—Heroku's buildpack does not generally upgrade to new Bundler versions.

@homu r+

:pushpin: Commit b4a52c3 has been approved by indirect

@indirect was @homu supposed to run the tests on that call @homu r+? Looking at previous pull requests, it looks like that was a pretty instantaneous operation. Just making sure. :-)

:hourglass: Testing commit b4a52c3 with merge 75ae375...

@indirect the build for @homu looks like it failed only against RGV=master. An artifact that it is looking for is not being spit out correctly.
It doesn't directly effect this pull request, but we can update the tests.

@jtarchie rubygems master was just released about an hour ago as rubygems 2.5, so I would definitely like the tests to pass there. thanks!

@indirect, just to clarify though, it is not our tests that are failing. So other PRs are going to have the same problem. Maybe someone else beat us to it! :-)

Hi. Sorry for off-topic, but I noticed that this PR lasted in the Homu queue for a long time. It seems that the test results were somehow not delivered to Homu, making Homu wait indefinitely.
So, I believe this PR should be retryed. Sorry for the inconvenience!
I think it would be a good idea to add timeout to Homu, to prevent situations like this in the future.

@homu retry
@barosl a timeout (or maybe even actively hitting the github API to check on build status after the timeout?) sounds great

@indirect It sounds even better! Thanks for the idea.

@barosl is there an easier way to look up the @homu queue on travis? It takes a while to hunt down the details.

@jtarchie You mean, other than this one? This is the only interface that can be used at the moment. I have no idea if integrating this queue with the Travis website is possible, though.

@barosl and @indirect, I don't think @homu retried.

@jtarchie Ah yes, there's currently a problem related to the interaction between Travis and GitHub. #4063 has a little more detail. Sorry for the disturbance!

@barosl and @indirect, I'm not clear how to help resolve the @homu issues on this pull request. It doesn't appear anything retried.

Yeah, it looks like @homu retried correctly here.  It appears that the failure is related to the most recent RubyGems changes in 2.5.0 and master. Wouldn't this be failing on bundler master right now, too?
rspec ./spec/bundler/friendly_errors_spec.rb:17 # Bundler friendly errors with invalid YAML in .gemrc reports a relevant friendly error message

Looks like a rebase would take care of it. Will do.

Hey @indirect @segiddins, we have re-merged our changes upstream. Can you kick off @homu when you get a chance please? Thanks!

@homu retry

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

Hey @segiddins @indirect @jtarchie @homu We've added the changes that @segiddins suggested, and remerged into master. Can you retry home when you get a chance please? Thank you!

Hey @indirect, @segiddins can you please take a look at our changes when you get a chance? I'm afraid that they're going to fall out of date again.
cc @jtarchie @flavorjones

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

Don't worry about rebasing again, I believe @indirect said he'd handle getting this merged.

thanks @segiddins! Let me know if you need anything @indirect.

Merged this in the branch 4064, and will fast forward master once the build passes.

Merged, will be released as part of 1.12. :tada:

hurray!

:+1:

Thanks for the help @indirect and @segiddins

Hey @indirect, any idea when 1.12 is going to be released??

@blackjid The Bundler v1.12.x series has been released with this functionality, with v1.12.3 as the latest patch.

thanks @RochesterinNYC !


build(deps): Updated vergen to v8

Description:
Updates vergen build dependency in swc_core to v8. This reduces the amount of dependency duplication. In my case in particular, it allows me to remove syn v1 from my repository.
BREAKING CHANGE: None
Related issue (if exists): None

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

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


Re-add filter step in the processing of the streams

Filters have been removed in the following commit: https://github.com/knightcrawler-stremio/knightcrawler/commit/ab17ef81be610005049d6ccc8c2a1417d18626b2#diff-748ff5015b225e4bd801eb1c6b5c60d239f46d8a96f85e24acc83b7ade8dadddL30
This commit re-adds them, so the user can filter by quality and size.
I haven't tested it yet, because i don't have a setup with enough torrents to test it.

I could test it now and can confirm that it works!

Awesome, this fixes the most popular complaint from my perspective! :)


Variations: Problem with Fluent

Hi,
After extending ProductVariations, Attributes and Attribute_Types with Fluent the Catalog throws an error and also creating a new variation at a ProductPage stops working.
 WHERE ("SilverShop_Variation"."ProductID" = ?) ORDER BY "SilverShop_Variation"."InternalItemID" ASC LIMIT 1 HY000-3065: Expression #1 of ORDER BY clause is not in SELECT list, references column 'cromab2bdb.SilverShop_Variation.InternalItemID' which is not in SELECT list; this is incompatible with DISTINCT
GET /admin/catalog/
Line 64 in /var/www/html/vendor/silverstripe/framework/src/ORM/Connect/DBConnector.php

For reference: Found this when searching for the same problem. This query can be fixed by configuring sql_mode
SilverStripe\ORM\Connect\MySQLDatabase:
  sql_mode: ANSI_QUOTES

But in my case I just needed to translate AttributeType and AttributeValue, which didn't need this fix.
See also: https://github.com/tractorcow-farm/silverstripe-fluent/issues/257


Public feedback and new api version

Add jobRouterAdministration.ts
New swagger with new api version
Update samples and api version number
Remove requests.ts

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-communication-job-router


Recipe output not visible in TTA crafting

What you were trying to do
Craft stuff in Throughout The Ages with the g crafting menu
What actually happened
While the recipes were listed the product (right side) was invisible, making it more than a little tricky to actually know what you're crafting.
Example: 2 rough stones (drops from dirt blocks) produce 1 flint.
May require an adjustment in one of the TTA modules rather than engine, but probably came about from recent engine refactoring.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/31652769-recipe-output-not-visible-in-tta-crafting?utm_campaign=plugin&utm_content=tracker%2F5279&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F5279&utm_medium=issues&utm_source=github).

Closing as fixed, thanks @TobyShaw and then @Josharias for follow-up!


Feature rec val validators

Please take a look (all but generated event/*go) files

Codecov Report

Merging #77 into develop will decrease coverage by 0.91%.
The diff coverage is 24.3%.

@@             Coverage Diff             @@
##           develop      #77      +/-   ##
===========================================
- Coverage    40.96%   40.05%   -0.92%
===========================================
  Files          468      469       +1
  Lines        30424    31379     +955
===========================================
+ Hits         12464    12568     +104
- Misses       16180    17022     +842
- Partials      1780     1789       +9

Impacted Files
Coverage Δ

compose/repository/record.go
66.16% <0%> (ø)
:arrow_up:

system/service/event/mail.gen.go
0% <0%> (ø)
:arrow_up:

system/service/event/role_member.gen.go
0% <0%> (ø)
:arrow_up:

messaging/service/event/command.gen.go
0% <0%> (ø)
:arrow_up:

compose/service/values/sanitizer.go
28.04% <0%> (-0.66%)
:arrow_down:

compose/service/values/shared.go
0% <0%> (ø)

messaging/service/event/channel_member.gen.go
0% <0%> (ø)
:arrow_up:

messaging/service/event/message.gen.go
0% <0%> (ø)
:arrow_up:

messaging/service/event/channel.gen.go
0% <0%> (ø)
:arrow_up:

system/service/event/sink.gen.go
0% <0%> (ø)
:arrow_up:

... and 25 more

Continue to review full report at Codecov.

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


Cursors to optionally return dict with column names

Optionally have one or all cursors return results as a dictionary with the column names as keys.
set every cursor to return dict by default
my_connection.as_dict = True
set one cursor to return dict by default
my_cursor.as_dict = True
for row in my_cursor:
    print(row["mycolumn"])

Codecov Report

Merging #235 into master will decrease coverage by 22.95%.
The diff coverage is 0%.

@@             Coverage Diff             @@
##           master     #235       +/-   ##
===========================================
- Coverage   99.04%   76.08%   -22.96%
===========================================
  Files         145      127       -18
  Lines        3135     2718      -417
===========================================
- Hits         3105     2068     -1037
- Misses         30      650      +620

Impacted Files
Coverage Δ

python/turbodbc/connection.py
8.51% <0%> (-91.49%)
:arrow_down:

cpp/turbodbc/Library/src/connect.cpp
0% <0%> (-100%)
:arrow_down:

...rbodbc_python/Library/src/python_parameter_set.cpp
0% <0%> (-100%)
:arrow_down:

...python/Library/turbodbc_python/python_result_set.h
0% <0%> (-100%)
:arrow_down:

...hon/Library/turbodbc_python/python_parameter_set.h
0% <0%> (-100%)
:arrow_down:

cpp/turbodbc_arrow/Library/src/python_bindings.cpp
0% <0%> (-100%)
:arrow_down:

...urbodbc_arrow/Library/src/set_arrow_parameters.cpp
0% <0%> (-96.25%)
:arrow_down:

.../turbodbc_python/Library/src/python_result_set.cpp
2.04% <0%> (-93.42%)
:arrow_down:

...bc_python/Library/src/determine_parameter_type.cpp
5% <0%> (-93.31%)
:arrow_down:

python/turbodbc/__init__.py
23.07% <0%> (-76.93%)
:arrow_down:

... and 68 more

Continue to review full report at Codecov.

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

According to https://www.python.org/dev/peps/pep-0249/#frequently-asked-questions this API was omitted for a reason, we should thus also omit it here, too.

According to https://www.python.org/dev/peps/pep-0249/#frequently-asked-questions this API was omitted for a reason, we should thus also omit it here, too.

Unfortunate situation of lowest common denominator. Does it make a difference the default is off and this is optional?

I would rather provide a separate API that returns the dicts. What about for row in my_cursor.iterrow_dicts() ? And fetchonedict?

That can work too, I’ll adjust to whatever is preferred.
One library I used called pymysql allowed the  choice of output types over the same APIs. In turbodbc’s case, they would have something like an enum property such as as_type instead of as_dict, then allowed values such as None, Dict, Numpy, Arrow. Just another approach.
Which is preferred?

I prefer APIs were the types don't depend on the internal state of an object, i.e. having different methods that for each return type. @fjetter @MathMagique feel free to weigh in here.

I prefer APIs were the types don't depend on the internal state of an object, i.e. having different methods that for each return type.

I feel the same way. In particular we're exercising the principle already for arrow and numpy


missing "Run" for Scala files

Describe the bug
some users have reported missing "Run" for Scala files, like GoodStuff.scala, when right-clicking it. The nasty part that Scala SDK is OK, and offers to start a REPL.
Expected behavior
"Run" is present
Screenshots

Environment (please complete the following information):

Operating System: at least Windows

Additional context
There's an O1-legend, that this issue appears due to the version of the IDEA (2020.2 works and 2020.2.1 not). However, the re-installation of the SDK works (and, apparently the same happens when the IDE is reinstalled/downgraded).

steps to temporarily solve:
remove the "red" SDK from the SDK list
restart IntelliJ IDEA
install the SDK afresh (like described here)

Considering mentioning manual run configuration in course materials.


Get embedding from Biobert pre-trained weights

Hi, I have these Biobert pretrained weights available. https://github.com/naver/biobert-pretrained . Now how can I use this code to get the embeddings for particular word or sentence ?

Hi @pyturn, this project is using the API from gluonnlp. So, currently, it's not possible to load your own pre-trained. However, I believe many people have the same problem as you.
Would you be able to start an issue on gluonnlp page? https://github.com/dmlc/gluon-nlp/issues
Thank you

Hi @pyturn, this project is using the API from gluonnlp. So, currently, it's not possible to load your own pre-trained. However, I believe many people have the same problem as you.
Would you be able to start an issue on gluonnlp page? https://github.com/dmlc/gluon-nlp/issues
Thank you

Thanks for responding back. I figured it out how to get embeddings from pretrained model.

Hi @pyturn, this project is using the API from gluonnlp. So, currently, it's not possible to load your own pre-trained. However, I believe many people have the same problem as you.
Would you be able to start an issue on gluonnlp page? https://github.com/dmlc/gluon-nlp/issues
Thank you

Thanks for responding back. I figured it out how to get embeddings from pretrained model.

Hi @pyturn, How did you manage to get that? Please let us know.

To those who are looking for the same answer, this page has the solution :)
https://github.com/dmlc/gluon-nlp/issues/843


Add arm64 builds for minecraft-ecsfargate-watchdog

Now that AWS supports arm64 on ECS Fargate, it would be nice to push builds of the watchdog container to support that.
As of #6 the image needs no additional changes, and I have a test image up at stealthii/minecraft-ecsfargate-watchdog.
Here's the line I used to build (you'll likely want to multi-arch the build):
docker buildx build --platform=linux/arm64 --tag stealthii/minecraft-ecsfargate-watchdog --push minecraft-ecsfargate-watchdog

I've been using arm64 successfully on the Lambda tasks, the watchdog container, and the 1.18.x Fabric server running under this project's configuration!

Good idea!  I'll check out your stuff probably over the weekend.  hard to grab time otherwise.  Are you using the itzg/minecraft-server image for arm for this?

I am! Fargate Spot unfortunately isn't supported, the price sits in the middle between amd64 spot/non-spot. On a low-pop server I've noticed comparable tick performance, and a noticable memory usage drop.
Annoyingly you can only configure arm64 on the new ECS interface, and currently you cannot set empty variables in the new interface, making configuration a nightmare (I've found using ECS memory reservations more reliable when coupled with itzg's options for this: -e MEMORY="" -e JVM_XX_OPTS="-XX:MaxRAMPercentage=75" + container memory limits)


Latest Docker image is broken

Hi
Since version 0.8.4 the Docker image doesn't seem to work anymore:
2022/04/15 10:04:01 Version not set
panic: Version not set

goroutine 1 [running]:
log.Panic({0xc00039ff50?, 0x446531?, 0xc000088710?})
        /usr/local/go/src/log/log.go:385 +0x65
main.main()
        /build/cmd/pushbits/main.go:48 +0x7a

I'm guessing it's reletated to these changes:

3a483526b667b4d4067e5cdaa8d2e683ad4bc95d
86971a5691dbbec9e41d5fa1a07cf20c0b982992

Maybe the git describe --tags command in the Makefile isn't working as expected during the build of the image?

Hi, thanks for raising this issue.
Seems related to some recent work on the build pipeline I've done. The git command fails because the git folder is not added to the Docker build environment.
I'll try work out a fix tomorrow, on Monday latest. Please fall back to the previous version until then.

Hi @CiTuX, this issue should be fixed as of v0.8.5. Please let us know should the issue persist.

Hi @eikendev, I can confirm that the issue is fixed, thx 👍🏽


Added comment for MTLS flow

MTLS flow described is possible with Nginx load balancer and technically not possible with AWS or Azure LB.
Added comment to avoid any confusion.
Purpose

Describe the problems, issues, or needs driving this feature/fix and include links to related issues in the following format: Resolves issue1, issue2, etc.

Goals

Describe the solutions that this feature/fix will introduce to resolve the problems described above

Approach

Describe how you are implementing the solutions. Include an animated GIF or screenshot if the change affects the UI (email<EMAIL_ADDRESS>to review all UI text). Include a link to a Markdown file or Google doc if the feature write-up is too long to paste here.

User stories

Summary of user stories addressed by this change>

Release note

Brief description of the new feature or bug fix as it will appear in the release notes

Documentation

Link(s) to product documentation that addresses the changes of this PR. If no doc impact, enter “N/A” plus brief explanation of why there’s no doc impact

Training

Link to the PR for changes to the training content in https://github.com/wso2/WSO2-Training, if applicable

Certification

Type “Sent” when you have provided new/updated certification questions, plus four answers for each question (correct answer highlighted in bold), based on this change. Certification questions/answers should be sent to<EMAIL_ADDRESS>and NOT pasted in this PR. If there is no impact on certification exams, type “N/A” and explain why.

Marketing

Link to drafts of marketing content that will describe and promote this feature, including product page changes, technical articles, blog posts, videos, etc., if applicable

Automation tests

Unit tests

Code coverage information

Integration tests

Details about the test cases and coverage

Security checks

Followed secure coding standards in http://wso2.com/technical-reports/wso2-secure-engineering-guidelines? yes/no
Ran FindSecurityBugs plugin and verified report? yes/no
Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets? yes/no

Samples

Provide high-level details about the samples related to this feature

Related PRs

List any other related PRs

Migrations (if applicable)

Describe migration steps and platforms on which migration has been tested

Test environment

List all JDK versions, operating systems, databases, and browser/versions on which this feature/fix was tested

Learning

Describe the research phase and any blog posts, patterns, libraries, or add-ons you used to solve the problem.

@bhathiya , please review this PR technically.

@bhathiya , please review this PR technically.

@uvindra , I have created a Git issue to address this doc gap [1].
[1] https://github.com/wso2/docs-apim/issues/3007

@uvindra , I have created a Git issue to address this doc gap [1].
[1] https://github.com/wso2/docs-apim/issues/3007


09_qt: convert notebook to sphinx_gallery format

Overview

09_qt: convert notebook to sphinx_gallery format

Details

None

OK. The building was passed and I did a brief check.
@akaszynski @banesullivan It is ready for review.


vue-jLunar-datePicker

vue-jLunar-datePicker : A practical Chinese lunar calendar component

Thank you for your PR!
The documentation is in English.
https://github.com/vuejs/awesome-vue/blob/master/CONTRIBUTING.md
Sorry, CONTRIBUTING.md has the above rule. It need to have docs written in english.
Could you write the docs in english?


Can I use Dio_JS ( or other native method) with WebAudio API?

Thank you for you great product.
I tried to use this library with audio api.
But I'm not familiar with emscripten. so I could not do it .
Could you give me a hint?
there are my code ( Partially)
audio.js
import { default as Module } from "./WorldJS.js";
/**
   *
   * @param {Float32Array[]} input
   */
  static featureExtract(input) {

   // input is 128 * 32 float32ArrayArray
   // so I must change to Float64Array
    const buffer = new Float64Array(bufferSize * bufferingLength);
    for (const [i, f32] of input.entries()) {
      for (const [j, value] of f32.entries()) {
        buffer[i * bufferSize + j] = value;
      }
    }

    const { Dio_JS  } = Module;
    const { f0, time_axis: timeAxis } = Dio_JS(buffer, sampleRate, framePeriod);
    console.log(f0) // f0 is always zero array like  [0,0,....]

argument of featureExtract(input) come from mediaStream like mic.
I think I could not send buffer propery.
the first argument type of Dis_JS is emscripten::val
Do you know the way to use this function from javascript?
I'm looking forward your reply.

Why I want to use this lib
Because I wanna filter mic input using world features.
What I want to do
extracting feature from buffer of audio api
My Idea and Diffucult point
I tried to use Dio_Js with javascript buffer.
but it's nothing to do. ( alway return all zero array as f0)

No, at this time, this library is just a very rough wrapper, and many data conversions are still under development.
Related data types and data conversion will be updated in the next version, and for now it is still in a rapid iteration state.
I will add some warning about that  in the readme file.
best

Thank you for your reply.
Ok. I understood.
Could I make pull request for this lib?
( I wanna hellp you if you don't have enough time to development)

yes, that is great.


ci: use team build pool

Reason for Change:

Faster than waiting in the massive pool
Issue Fixed:

Requirements:

[ ] uses conventional commit messages

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

Notes:

@matmerr I have this PR already open with the same changes: https://github.com/Azure/azure-container-networking/pull/2036
But i think because of the ACN pr pipeline it is not merged yet.


Css and JS problem

A are linking my css and js files with this method in the base.html
<link rel="stylesheet" href="assets/plugins/fontawesome-free/css/all.min.css">
and the directory of this file is /plublic/assets/plugins/fontawesome...... ok, its work normal in the home url (http://localhost/mvc/public/)
but when i try access the url http://localhost/test/public3/person , not works (404 to find the file in http://localhost/test/public3/person/assets/plugins/fontawesome , (wrong!) )

You need to start the href attribute (the URL) with a slash, so it's relative to the root of the site. Otherwise it's relative to the current page, which is why it works on the homepage but not on other pages:
<link rel="stylesheet" href="/assets/plugins/fontawesome-free/css/all.min.css">

I'm sorry for the two issues, I didn't see that I had already created one
the problem has been fixed, thank you very much


Error "ansible.errors.AnsibleFileNotFound" While trying to run ansible playbook

I don't know if this is happening on my build alone or someone else has experienced it. I am using docker for windows on Windows 10 pro. I will try it on another OS see if it will reproduce the same.
After running "ansible-playbook deploy.yml" in my docker container
I get:
TASK [Detect git credential file] **************************************************************************************ok: [server -> localhost]
TASK [Define tasks repository variables] *******************************************************************************fatal: [server]: FAILED! => {"msg": "An unhandled exception occurred while running the lookup plugin 'file'. Error was a <class 'ansible.errors.AnsibleFileNotFound'>, original message: Unable to retrieve file contents\nCould not find or access '/run/secrets/git/credential'"}
to retry, use: --limit @/etc/ansible/env/lab/deploy.retry
PLAY RECAP *************************************************************************************************************sdk                        : ok=59   changed=0    unreachable=0    failed=0
server                     : ok=56   changed=0    unreachable=0    failed=1

I am facing the same issue, has anyone been able to resolve it.

The LAB environment is inherently incompatible with released tags. The LAB environment brings in the latest development efforts (develop branch) while the tagged platform code uses previous Ansible orchestration playbooks which isnt compatible with the latest code. LAB is mostly used to further advance the platform/application code.
To install a local tagged release, I suggest using the dev environment, which pulls tagged reposiroties for each microservices. Youll also need to edit the dev inventory file so that the app server points to your local machine instead of a remote server.
More info can be found here:
https://github.com/DigitalState/Platform/blob/develop/platform/documentation/environments/lab/index.md

Hey @mario-digitalstate below is the output from docker-compose logs php
++++++++++++++++++++++++++++++++++++++++++++++
Attaching to dsassets_php_1
php_1 | + grep default
php_1 | + ip ro
php_1 | + cut -d -f 3
php_1 | + export DOCKER_BRIDGE_IP=<IP_ADDRESS>
php_1 | + [ dev = prod ]
php_1 | + composer install --prefer-dist --no-progress --no-suggest
php_1 | Composer could not find a composer.json file in /srv/api-platform
php_1 | To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ "Getting Started" section
My inventory.yml content is

all:
hosts:
sdk:
ansible_connection: local
server:
ansible_connection: local
vars:
project: ds
directory: /d/Development/workspace/digitalstate/Sdk/app
env: lab
timezone: UTC
data: dev
jwt:
private_key: /root/resource/jwt/lab/key
public_key: /root/resource/jwt/lab/key.pub
key_pass_phase: ~
mail:
transport: smtp
host: <IP_ADDRESS>
port: ~
username: admin@localhost
password: ~
util:
adminer: /root/resource/util/adminer.php
admin:
enabled: true
repository: https://github.com/DigitalState/Admin.git
version: develop
host: admin.lab.ds
assets:
enabled: true
repository: https://github.com/DigitalState/Assets.git
version: develop
host: api.assets.lab.ds
authentication:
enabled: true
repository: https://github.com/DigitalState/Authentication.git
version: develop
host: api.authentication.lab.ds
camunda:
enabled: true
repository: https://github.com/DigitalState/Camunda.git
version: develop
host: api.camunda.lab.ds
cases:
enabled: true
repository: https://github.com/DigitalState/Cases.git
version: develop
host: api.cases.lab.ds
cms:
enabled: true
repository: https://github.com/DigitalState/Cms.git
version: develop
host: api.cms.lab.ds
core:
enabled: true
repository: https://github.com/DigitalState/Core.git
version: develop
discovery:
enabled: true
repository: https://github.com/DigitalState/Discovery.git
version: develop
host: api.discovery.lab.ds
documentation:
enabled: true
repository: https://github.com/DigitalState/Documentation.git
version: master
formio:
enabled: true
repository: https://github.com/DigitalState/Formio.git
version: develop
host: api.formio.lab.ds
guide:
enabled: true
repository: https://github.com/DigitalState/Guide.git
version: master
identities:
enabled: true
repository: https://github.com/DigitalState/Identities.git
version: develop
host: api.identities.lab.ds
interactions:
enabled: true
repository: https://github.com/DigitalState/Interactions.git
version: develop
host: api.interactions.lab.ds
logs:
enabled: true
repository: https://github.com/DigitalState/Logs.git
version: develop
host: api.logs.lab.ds
monitor:
enabled: true
repository: https://github.com/DigitalState/Monitor.git
version: develop
host: monitor.lab.ds
portal:
enabled: true
version: develop
repository: https://github.com/DigitalState/Portal.git
host: portal.lab.ds
proxy:
enabled: true
repository: https://github.com/DigitalState/Proxy.git
version: develop
port: 80
records:
enabled: true
version: develop
repository: https://github.com/DigitalState/Records.git
host: api.records.lab.ds
services:
enabled: true
repository: https://github.com/DigitalState/Services.git
version: develop
host: api.services.lab.ds
tasks:
enabled: false
repository: https://github.com/DigitalState/Tasks.git
version: develop
host: api.tasks.lab.ds
topics:
enabled: true
repository: https://github.com/DigitalState/Topics.git
version: develop
host: api.topics.lab.ds
ui:
enabled: true
repository: https://github.com/DigitalState/Ui.git
version: develop

I am having the same issue, did somebody find out the root issue and the resolution ?
May be docker image issue? Or the composer?

I am having this same issue

Hey @mario-digitalstate below is the output from docker-compose logs php
++++++++++++++++++++++++++++++++++++++++++++++
Attaching to dsassets_php_1
php_1 | + grep default
php_1 | + ip ro
php_1 | + cut -d -f 3
php_1 | + export DOCKER_BRIDGE_IP=<IP_ADDRESS>
php_1 | + [ dev = prod ]
php_1 | + composer install --prefer-dist --no-progress --no-suggest
php_1 | Composer could not find a composer.json file in /srv/api-platform
php_1 | To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ "Getting Started" section
My inventory.yml content is

all:
hosts:
sdk:
ansible_connection: local
server:
ansible_connection: local
vars:
project: ds
directory: /d/Development/workspace/digitalstate/Sdk/app
env: lab
timezone: UTC
data: dev
jwt:
private_key: /root/resource/jwt/lab/key
public_key: /root/resource/jwt/lab/key.pub
key_pass_phase: ~
mail:
transport: smtp
host: <IP_ADDRESS>
port: ~
username: admin@localhost
password: ~
util:
adminer: /root/resource/util/adminer.php
admin:
enabled: true
repository: https://github.com/DigitalState/Admin.git
version: develop
host: admin.lab.ds
assets:
enabled: true
repository: https://github.com/DigitalState/Assets.git
version: develop
host: api.assets.lab.ds
authentication:
enabled: true
repository: https://github.com/DigitalState/Authentication.git
version: develop
host: api.authentication.lab.ds
camunda:
enabled: true
repository: https://github.com/DigitalState/Camunda.git
version: develop
host: api.camunda.lab.ds
cases:
enabled: true
repository: https://github.com/DigitalState/Cases.git
version: develop
host: api.cases.lab.ds
cms:
enabled: true
repository: https://github.com/DigitalState/Cms.git
version: develop
host: api.cms.lab.ds
core:
enabled: true
repository: https://github.com/DigitalState/Core.git
version: develop
discovery:
enabled: true
repository: https://github.com/DigitalState/Discovery.git
version: develop
host: api.discovery.lab.ds
documentation:
enabled: true
repository: https://github.com/DigitalState/Documentation.git
version: master
formio:
enabled: true
repository: https://github.com/DigitalState/Formio.git
version: develop
host: api.formio.lab.ds
guide:
enabled: true
repository: https://github.com/DigitalState/Guide.git
version: master
identities:
enabled: true
repository: https://github.com/DigitalState/Identities.git
version: develop
host: api.identities.lab.ds
interactions:
enabled: true
repository: https://github.com/DigitalState/Interactions.git
version: develop
host: api.interactions.lab.ds
logs:
enabled: true
repository: https://github.com/DigitalState/Logs.git
version: develop
host: api.logs.lab.ds
monitor:
enabled: true
repository: https://github.com/DigitalState/Monitor.git
version: develop
host: monitor.lab.ds
portal:
enabled: true
version: develop
repository: https://github.com/DigitalState/Portal.git
host: portal.lab.ds
proxy:
enabled: true
repository: https://github.com/DigitalState/Proxy.git
version: develop
port: 80
records:
enabled: true
version: develop
repository: https://github.com/DigitalState/Records.git
host: api.records.lab.ds
services:
enabled: true
repository: https://github.com/DigitalState/Services.git
version: develop
host: api.services.lab.ds
tasks:
enabled: false
repository: https://github.com/DigitalState/Tasks.git
version: develop
host: api.tasks.lab.ds
topics:
enabled: true
repository: https://github.com/DigitalState/Topics.git
version: develop
host: api.topics.lab.ds
ui:
enabled: true
repository: https://github.com/DigitalState/Ui.git
version: develop

I am having the same issue, did somebody find out the root issue and the resolution ?
May be docker version issue?

Yes @rogelioRuiz I did find out and got that working in the end.
Admittedly it was all my fault. Ways to resolve:

Run docker prune. Start with clean slate.
Check the directory mapping. I was using wrong srv directory.
Stick to 0.6. It doesn't work with anything above.

2 and 3 are mandatory.
Best of luck!


fixes for tablelite component

Fixing the issues with tablelite component
Sorting gets disabled if drag n drop is enabled (would need to do this more intelligently)

@kashjs Could you review this pull request , that fixes the issues with the tablelite component.


Sourcemaps are only built for files during development builds

Right now we only build sourcemaps when transpiling files for development builds but we also skip transpiling files if they haven't changed since the last time. To make matters worse, test runs do a non-development build.
So a file will only have a valid sourcemap if you do a development run immediately after changing it.
We should probably just always do source maps, since they aren't embedded I don't think it buys us much.

Fixed by #525

@Mossop Actually fixed by https://github.com/mozilla/tofino/pull/522


Phantom unreads

Starting sometime in the last few days, when I leave NNW open the feeds list on the left will show some number of unread items across a number of feeds. Click on any of them and the phantom unread count clears; there weren't really any unread.
Note that in this scenario I haven't requested a refresh with cmd-R; when I do so any resulting unread counts are real.
Version 6.0.3 (6035). Not sure when last updated.

Did you recently upgrade your macOS version?

Yes, from Mojave (MacOS 10.14) to Monterey (MacOS 12).

We've been getting reports of users databases getting corrupted when upgrading to Monterey, but we're not sure how it is happening. Did you do a straight upgrade or did you back up and restore from Time Machine?
What kind of account are you using? We may have to recreate it to clear up your problem.

I got a new machine with Monterey installed; restored my data from Time Machine backup of the Mojave machine.
I don't know what you mean by "what kind of account." I didn't pay anything for a subscription. Otherwise I don't recall setting up anything like a user/password for NNW.

For some reason when restoring from a Time Machine backup, the NNW database gets corrupted. We haven't been able to figure it out yet.
You are probably using the On My Mac account type. If you export the OPML file from that account, you can create a new On My Mac account and import the OPML file into it. You can then disable the old On My Mac account. It won't transfer your starred items or unread items, but at least it will start working again.

I'm going to close this issue as a duplicate of #3228.
@kdawson Please let us know if you need more help fixing your database by commenting on this issue, even though it is closed.

OK thanks, exported to .opml, deactivated the old account, created a new On My Mac account, and imported. All good. But the old account can't be deleted: the "-" at the bottom is and remains greyed-out. Advice?

You don't need to delete it. If you deactivate it, it won't show up in the main NNW window.

The new set of feeds, from the imported .opml, behaves in just the same way. Phantom unreads spontaneously pop up. Just FYI, I can live with it, not that serious.

I think you are probably going to have to go nuclear and start over. Save your OPML file somewhere and then run this command in the Terminal.
rm -rf ~/Library/Containers/com.ranchero.NetNewsWire-Evergreen
That will remove all of NNW's data. You can then relaunch NNW and it should be as if you just installed it for the first time. The main On My. Mac account should also work again.


Clean up development server logging output

This series of commits substantially cleans up the console output from run-dev.py.  While it's still not perfect, the new output for starting a web server looks like the below:
tabbott@monastery:~/zulip$ ./tools/run-dev.py
2015-12-13 22:10:11,898 INFO: process_fts_updates starting
Recompiling templates
2015-12-13 22:10:11,931 INFO: Not in recovery; listening for FTS updates
done
Validating Django models.py...
System check identified no issues (0 silenced).

Django version 1.8.3
Tornado server is running at http://localhost:9993/
Quit the server with CTRL-C.
2015-12-14 01:10:14,110 INFO     Tornado loaded 1 event queues in 0.009s
2015-12-14 01:10:14,122 INFO     Tornado  92.9% busy over the past  0.0 seconds
http://localhost:9994/webpack-dev-server/
webpack result is served from http://localhost:9991/webpack/
content is served from /home/tabbott/zulip
2015-12-14 01:10:15,434 INFO     <IP_ADDRESS>       POST    200  37ms (+start: 369ms) /json/get_events [1450073359:0/1]<EMAIL_ADDRESS>via website)
2015-12-14 01:10:18,239 INFO     <IP_ADDRESS>       SOCKET  200   0ms /socket/open [transport=xhr_streaming] (unknown via ?)
2015-12-14 01:10:18,252 INFO     <IP_ADDRESS>       POST    200   2ms (lp: 2.2s) /json/get_events [1450073359:0/1]<EMAIL_ADDRESS>via website)
2015-12-14 01:10:18,255 INFO     Disconnected handler for queue<PHONE_NUMBER>:0<EMAIL_ADDRESS>2015-12-14 01:10:18,292 INFO     <IP_ADDRESS>       SOCKET  200  10ms (db: 4ms/2q) /socket/auth [transport=xhr_streaming]<EMAIL_ADDRESS>via ?)
Performing system checks...

System check identified no issues (0 silenced).
2015-12-14 01:10:20,714 INFO     Worker 0 connecting to queue test
2015-12-14 01:10:20,747 INFO     Worker 0 connecting to queue feedback_messages
2015-12-14 01:10:20,766 INFO     Worker 0 connecting to queue missedmessage_mobile_notifications
2015-12-14 01:10:20,852 INFO     Worker 0 connecting to queue user_activity_interval
2015-12-14 01:10:20,854 INFO     Worker 0 connecting to queue slow_queries
2015-12-14 01:10:20,920 INFO     Worker 0 connecting to queue missedmessage_emails
2015-12-14 01:10:20,963 INFO     Worker 0 connecting to queue email_mirror
2015-12-14 01:10:20,993 INFO     Worker 0 connecting to queue message_sender
2015-12-14 01:10:21,057 INFO     Worker 0 connecting to queue digest_emails
December 14, 2015 - 01:10:21
Django version 1.8.3, using settings 'zproject.settings'
Starting development server at http://localhost:9992/
Quit the server with CONTROL-C.
2015-12-14 01:10:21,171 INFO     Worker 0 connecting to queue invites
2015-12-14 01:10:21,180 INFO     Worker 0 connecting to queue signups
2015-12-14 01:10:21,254 INFO     Worker 0 connecting to queue user_activity
2015-12-14 01:10:21,327 INFO     Worker 0 connecting to queue user_presence
2015-12-14 01:10:21,377 INFO     Worker 0 connecting to queue error_reports

webpack: bundle is now VALID.
2015-12-14 01:10:22,387 INFO     <IP_ADDRESS>       DELETE  200 522ms /json/events [1450073359:0]<EMAIL_ADDRESS>via website)
2015-12-14 01:10:25,512 INFO     <IP_ADDRESS>       DELETE  400   2ms /json/events<EMAIL_ADDRESS>via website)
2015-12-14 01:10:25,512 INFO     status=400, data={"msg":"Bad event queue id:<PHONE_NUMBER>:0","result":"error"}
<EMAIL_ADDRESS>2015-12-14 01:10:25,525 INFO     <IP_ADDRESS>       GET     200   7ms /api/v1/events [1450073412:0/0]<EMAIL_ADDRESS>via internal)
2015-12-14 01:10:25,544 INFO     <IP_ADDRESS>       GET     200   5ms /api/v1/events [1450073412:1/0]<EMAIL_ADDRESS>via internal)
2015-12-14 01:10:25,951 INFO     <IP_ADDRESS>       GET     200   2ms /api/v1/events [1450073412:1/0]<EMAIL_ADDRESS>via internal)
2015-12-14 01:10:25,957 INFO     <IP_ADDRESS>       GET     200   2ms /api/v1/events [1450073412:0/0]<EMAIL_ADDRESS>via internal)
2015-12-14 01:10:26,250 INFO     <IP_ADDRESS>       GET     200  1.6s (mem: 139ms/13) (db: 277ms/22q) (+start: 463ms) / [1450073412:0]<EMAIL_ADDRESS>via website)
2015-12-14 01:10:26,252 INFO     <IP_ADDRESS>       GET     200 733ms (mem: 138ms/11) (db: 119ms/23q) / [1450073412:1]<EMAIL_ADDRESS>via website)
2015-12-14 01:10:35,574 INFO     Received event: {u'status': 2, u'user_profile_id': 17, u'client': u'website', u'time':<PHONE_NUMBER>}
2015-12-14 01:10:35,661 INFO     <IP_ADDRESS>       POST    200 139ms (db: 8ms/3q) /json/update_active_status<EMAIL_ADDRESS>via website)
2015-12-14 01:10:35,759 INFO     <IP_ADDRESS>       POST    200 133ms (mem: 8ms/2) (db: 8ms/7q) (+start: 85ms) /json/get_old_messages<EMAIL_ADDRESS>via website)
2015-12-14 01:10:35,823 INFO     <IP_ADDRESS>       SOCKET  200   0ms /socket/open [transport=xhr_streaming] (unknown via ?)
2015-12-14 01:10:35,974 WARNING  Not Found: /user_uploads/unk/byqgM1qjol1mzje_KzeNRT5F/guinea.jpg
2015-12-14 01:10:35,981 INFO     <IP_ADDRESS>       GET     404   8ms /user_uploads/unk/byqgM1qjol1mzje_KzeNRT5F/guinea.jpg (unauth via ?)
[14/Dec/2015 01:10:35]"GET /user_uploads/unk/byqgM1qjol1mzje_KzeNRT5F/guinea.jpg HTTP/1.0" 404 1867
2015-12-14 01:10:36,077 INFO     <IP_ADDRESS>       SOCKET  200   9ms (db: 3ms/2q) /socket/auth [transport=xhr_streaming]<EMAIL_ADDRESS>via ?)

Automated message from Dropbox CLA bot
@timabbott, it looks like you've already signed the Dropbox CLA. Thanks!

The requests logging is a sign that we are not using a Session object so a connection pool is not being used. We may want to have a task to use a connection pool but I am all for cleaning up the default output. :+1:

Merged, thanks for the review!


Do not verify links in project dependencies

This PR updates the check_doc_links script to exclude non-project files from the URL verification.
Resolves #319

@rafvasq -- could you please test this? Since you are working on similar scripts and recently updated Markdown links :-)

Related #314 #317

/lgtm

Thanks @rafvasq :-)


MAINT: Add more descriptive error message for phase one simplex.

Phase one of the simplex method sometimes fails to converge to a
basic feasible solution if the pseudo-objective function is very
slightly greater than the set tolerance. The new message states
this, the tolerance and pseudo-objective function value explicitly

That's a nicer way to add it @mdhaber. Given how problematic this has been I've also added a quick test to make sure changing changing the tolerance will return a correct result.

Tests are a good idea. I thought about suggesting it but I know the tolerance might need to be different on different machines. But hopefully your 1e-9 should work all the time; I guess we'll see.
@ev-br I see you looked at #6139 in the past. Turns out it wasn't really a bug, just a default tolerance issue. What do you think of this fix - just a more descriptive error message?
@

Regarding the tests I had initially considered setting the high_tol to something along the lines of res.fun * 10. However I'm not certain this is a good idea because it would make almost any test pass.

@mdhaber would you be able to have a look at this?
There have been some errors occuring due to tests which were not run when #6139 was merged relating to warnings. In addition to the tests for the new error message, I've added warning supressions from the inputs. Is there some way to ensure that all tests are run so this kind of thing is not repeated?

I've been following this. It sounds like it's a coincidence; some change was made after the merge that made these warnings cause failures.
I think you've done all we can do - add warning suppressions where appropriate.

All good with me.

Another one down!

Really good to see linprog improving so much, thanks both!

Thanks for the compliment!  Do you think it's time to close #6139? I don't see anything else we can do about it.

Thanks for the reminder.


Fix luajit compilation

Hello,
Thank you for maintaining this fork
I found I've been unable to compile luajit on recent macos versions so after some hacking around I figured out a solution.
I hope you find it useful

Thank you @bsless! Your version works on recent MacOS versions.


Exclude stale consumers

Is there a way to exclude stale consumers?
I guess you're consuming the __consumer_offsets and keep the data, even though some of the consumer group-to-topic mappings may be old.
My example: we have some consumer groups where we changed the topic they consume from, e. g. the consumerGroup-1 consumed firstTopic, but now only consumes from secondTopic - hence it has a huge lag for firstTopic. But I'm not interested in that, because it hasn't consumed that topic in days/weeks...
Can I configure somehow after what time a stale consumer gets dropped from reporting metrics?
Or can I configure kafka-minion to not read the complete __consumer_offsets topic, but only start reading the latest messages?

Kafka Minion tries to report exactly what the Kafka Broker stores as consumer group lag. These consumer offsets do not get reported anymore when there's a Tombstone produced for a specific consumer-group:topic:lag combined key on the __consumer_offsets topic. When this happens this also means the consumer group offsets have expired on that partition.
So as far as I understood you'd like to have a feature where Kafka Minion drops the consumer group information before the consumer group has actually expired? If this is the case it wouldn't help you if Kafka Minion consumes the topic from latest (additionally this has a couple other downsides).

I just thought of a possible solution, but don't know how to accomplish this in Grafana/PromQL:
Take all groups and topics from the metric "kafka_minion_group_topic_lag", but only those where the metric "kafka_minion_group_topic_partition_commit_count" has values greater than 1 (or 2?)

@weeco You're fast!
What you're saying sounds reasonable and should be the correct way. It's not what I'm seeing, though .... unless my consumer group is still active for that topic.

We've had a couple similiar cases here as well where we thought the consumer group must have been expired, but it was still active.
When we checked the consumer groups with one of the kafka shells, it was confirmed that Kafka Minion was right - the group for the specific partition was still active. That does not mean that Kafka Minion can not be wrong in your case, but please first check with another tool if these offsets have actually expired.
 Unless you are using very high offset retention times this offset should have been expired. But once again we saw on our clusters a similar behaviour where such offsets have not yet expired (and I don't know why) and therefore Kafka Minion reported it correctly. Can you check that on your cluster as well?
Regarding your use case:
I believe it would be risky to hide all consumer groups which currently do not report offset commits, as you can quickly miss unhealthy (because dead) consumers.

Thanks for the hints, @weeco
I checked with kafka-consumer-groups.sh, which gives the following output for one of the examples:
./kafka-consumer-groups --bootstrap-server broker-01.mydomain.com:9092 --group kafkaProcessor.prod --describe
Error: Consumer group 'kafkaProcessor.prod' does not exist.

Also, kafka minion shows, that the metric "kafka_minion_group_topic_partition_commit_count" only has a value of 1 or 2 for the partitions. I'm guessing those should be the tombstones, that were left behind?

Hmm hard to understand what has happened there. Tombstones will not increment the partition_commit_count counter and they have their own metric instead (which is not grouped by consumer group and partition though):
	offsetCommitTombstone = prometheus.NewCounter(prometheus.CounterOpts{
		Name: prometheus.BuildFQName(internalMetricsName, "offset_consumer", "offset_commits_tombstones_read"),
		Help: "Number of read group offset commit tombstone messages",
	})

Did you check the kafka minion logs if there are any errors? If we receive a tombstone and something could not be properly decoded it's logged, see: https://github.com/cloudworkz/kafka-minion/blob/master/kafka/offset_consumer.go#L208-L235
If you have a chance to attach a debugger and run it with your kafka cluster, you could set conditional breakpoints which break when your expired consumer group had been decoded.

@weeco Sorry for the delay, I was travelling.
The only log output I see is
{"level":"warning","module":"collector","msg":"could not calculate partition lag because low water mark is missing","partition":2,"time":"2019-07-02T08:23:58Z","topic":"blablabla"}
I cannot attach a debugger to our kafka cluster at the moment.
If you come up with any other ideas I could try, please let me know :)
Thanks a lot!

@weeco No new ideas, but more cases where this is happening: it's always that a consumer group is still active, but for different topics. Right now I have no chance but to exclude the metrics on the dashboards, but this is quite cumbersome...

Hey @smlgbl , I missed your response 20 days ago - I am sorry for the late response. This indeed sounds cumbersome. To sum up our previous discussion and analysis we came to the conclusion that Kafka Minion either skips the Tombstone message, handles it improperly or there's no tombstone.

Could you take a look at the __consumer_offsets topic configuration and paste it here?

Can you nowadays provide more information to isolate the cause of the problem? E. g. does this happen for just one consumergroup/topic/partition? Do these offsets eventually disappear (basically just later than expected)?

If neither #1 or #2 help I'll go ahead and add debug log messages for received tombstones along with further instructions to figure it out.

1: https://pastebin.com/kvwkvumS
2. it happens for a couple of our consumer groups - most groups still exist, but consume a different topic than originally, yet the lag for the "old" topic is still reported. It also happens for at least one consumer group that simply doesn't exist anymore. So far I can't say they ever disappear, but I only paid attention when seeing the groups still around - I didn't keep track of others that worked as expected. But I also can't think of any off the top of my head.
BTW I just upgraded to v1.0.0 yesterday...

Good/Bad news: I am able to reliably reproduce the issue for one of my clusters/groups which I can use to debug against. It seems like we never get a tombstone for this consumer group. I have yet to figure out why this is the case and what else I should do to get notified about expired consumer group offsets.

To verify there's no bug in the code which processes the offset commit messages from the __consumer_offsets topic I ran the kafka-console-consumer with the OffsetsMessageFormatter option against the topic. Indeed there's simply no tombstone sent by Kafka for any of the partitions for that group.
kafka-console-consumer.sh --from-beginning --topic __consumer_offsets zookeeper.connect=${ZOO_HOST} --bootstrap-server="${KAFKA_HOST}"  --formatter "kafka.coordinator.group.GroupMetadataManager\$OffsetsMessageFormatter"

I have no explanation why Kafka sometimes doesn't send a tombstone even though the offsets are clearly expired. Apparently Kafka itself knows that this group / these offsets do not exist anymore.
One approach to workaround this issue would be looking at the commitTimestamp which we can read for all offset commits and check if this timestamp is older than the offset retention. If this is the case we'll evict the stored offset on our own, even if we haven't received a tombstone yet. Before I am going to proceed with this idea I'd like to spend some more time figuring out why Kafka doesn't send a tombstone for these groups / partitions.


Remains height when dropdown is hidden

hi,maintainer!
I am using .dropdown with a small modal, but when I hide it, the height of the element remains and so does the scrollbar.
The CSS defining the dropdown is visibility:hidden, so can I submit a pull request with an additional definition of display:none (&block)?

I couldn't reproduce this. Can you please provide a Tailwind Play page with your example code?

hi,@saadeghi
Thanks for the comment.
display:none to dropdown-content shows that the modal is smaller.
https://play.tailwindcss.com/HpiODsmxep
and screenshot

Thanks for the example. By default, it is expected for modal-box content to have a scroll on overflow.
In your case you can change this behavior by adding overflow-y-visible class to modal-box
-

+

Let me know if you have any questions

@saadeghi
Thanks for the comment.
I'm using it inside an iframe with a fixed modal height.
What should I do in that case?
It's not an iframe, but here's what it looks like
https://play.tailwindcss.com/9Mr3O6NZOM

I would like to do this
.dropdown .dropdown-content{
    @apply hidden;
  }

  .dropdown:not(.dropdown-hover):focus-within .dropdown-content {
    @apply block;
  }

I won't suggest using iframes in the first place because there's no direct way for elements inside and outside an iframe to affect eachother so the container will never know the size of content inside the iframe.
Isn't there any other way to show the content?

It is intended to be embedded in someone else's website, so an iframe must be used.
This is to prevent CSS from interfering with each other.

I'm not sure... you might want to hardcode the height of modal-box if it's always a fixed height. Otherwise, you might be able to dynamically set the height of iframe using JS. I don't think there's a CSS way to get the height of content from an iframe.

https://play.tailwindcss.com/eA2OwRWRtv
↑For example, try setting the height of the iframe you are previewing to 200px as shown in the image
Scrolling is displayed.
If display:none, it will not be displayed.

At this point I'm a little confused about your goal.
Do you want the dropdown content from an iframe to overflow out of the iframe? because that's impossible.

Do you want the dropdown content from an iframe to overflow out of the iframe?
No, it is not.
https://github.com/saadeghi/daisyui/issues/1276#issuecomment-1293644675
The problem is that the Dom height is still there and the scrollbar shows up when the DOM is not displayed because visivility:hidden is set.
I think it is correct that there is no Dom height when not displayed.


Terminal Sticky Scroll: git pull wrong sticky node

Starting from an empty terminal
When using git pull origin main, the command is not set to be the sticky node but main       -> origin/main is

Can't repro unfortunately. I'll need trace Terminal logs to be able to diagnose without a reliable repro.


Error During Git Checkout with Invalid Path Names Containing Special Characters

Issue Description:
When attempting to clone and check out a repository, the process fails during the checkout phase due to an invalid path error. This appears to be caused by path names containing special characters like equal signs (=) and colons (:), which are not compatible with all file systems.
Steps to Reproduce:
Clone the repository containing the problematic path names.
Attempt to checkout the repository.
Expected Behavior
The repository should be cloned and checked out without any errors, regardless of the file system.
Expected Behavior:
The repository should be cloned and checked out without any errors, regardless of the file system.
Actual Behavior:
The checkout process fails with the following error:
error: invalid path 'logs/dag_id=FinSight_pipeline/run_id=manual__2024-06-09T02:43:01.674113+00:00/task_id=download_upload_data/attempt=1.log'
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

Possible Solutions:
Rename Files:
Avoid using special characters such as =, :, and spaces in file names and directories.
Use Git Config: Modify the git configuration to handle special characters if renaming is not feasible:
bash
Copy code
git config --global core.protectNTFS false
Additional Information:
Operating System: (include your OS here, e.g., Windows 10)
Git Version: (include your Git version here, e.g., 2.24.1)
Tags:
'bug' 'git' 'checkout' 'file-system'

Remove the file in the log so that git doesn't track it, and it would work fine.


Implement feature to rerun upgrade command

Issue #, if available:
#2185
Description of changes:
Design doc: #2330
This PR completes the MVP implementation for rerunning the upgrade command upon failure
Testing (if applicable):
Tested with upgrade (base, gitops enabled, and with additional workload cluster)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I think we're introducing too much additional responsibility to the taskRunner which already has too much responsibility. With this implementation, the taskRunner is tightly bound to the checkpoint capability and is aware of too much checkpoint implementation detail:

how to load checkpoint information.
how to save checkpoint information.
how to format the checkpoint data for save.
how to inspect/extract checkpoint data from its in-memory representation.
restoration establishes what task to run next (the existing model where tasks determine what task comes next is bad, if we can avoid it we should).

Have we considered a design that introduces a Checkpointer that wraps up some of these concerns instead of extending taskRunner?

I think we're introducing too much additional responsibility to the taskRunner which already has too much responsibility. With this implementation, the taskRunner is tightly bound to the checkpoint capability and is aware of too much checkpoint implementation detail:
* how to load checkpoint information.

* how to save checkpoint information.

* how to format the checkpoint data for save.

* how to inspect/extract checkpoint data from its in-memory representation.

* restoration establishes what task to run next (the existing model where tasks determine what task comes next is bad, if we can avoid it we should).

Have we considered a design that introduces a Checkpointer that wraps up some of these concerns instead of extending taskRunner? At a minimum, I think we can get rid of loading checkpoint files during task running. That really isn't something a task runner should care about. It should only care about loading and creating checkpoints.

It was mentioned before that we should consider refactoring the task runner. Since that effort is outside of the scope of this task, we decided that the most straight-forward way to go about this is by extending the task runner. I think that attempting wrap up some of these concerns would still require some amount of refactoring the task runner & I think that effort should be its own entity (with its own formal design doc & what not). I would also like to mention that this is considered to be a temporary solution for this feature. Ideally, we would like to use something like a controller to orchestrate this process with a reconciliation loop. Open to discuss more offline

/lgtm


JSON config should support non-string vars

Description
Currently if encountering a non-string var in an expression:
    "UNIT": 2.4,
    "FP_IO_VEXTEND": "expr::2 * $UNIT",

variable substitutions will fails with the following error:
TypeError: replace() argument 2 must be str, not float

Expected Behavior
non-string variables get substituted in expressions.
Environment report
Kernel: Linux v5.10.142-19743-gd301e86c39f7
Distribution: debian 11
Python: v3.7.13 (OK)
Container Engine: docker v20.10.18 (OK)
OpenLane Git Version: cb59d1f84deb5cedbb5b0a3e3f3b4129a967c988
pip: INSTALLED
python-venv: INSTALLED
---
PDK Version Verification Status: OK
---
Git Log (Last 3 Commits)

cb59d1f 2022-11-18T18:42:38+02:00 fix return values in `equally_spaced_sequence` (#1503) - Kareem Farid -  (grafted, HEAD -> master, origin/master, origin/HEAD)
---
Git Remotes

origin	https://github.com/The-OpenROAD-Project/OpenLane (fetch)
origin	https://github.com/The-OpenROAD-Project/OpenLane (push)

Reproduction material
curl -L -O https://raw.githubusercontent.com/efabless/caravel_user_project/fcfbe5d5f4081f289057d6c909b2570f12e6f282/openlane/user_project_wrapper/config.json
flow.tcl .

Relevant log output
Error: : Traceback (most recent call last):
  File "/openlane/scripts/config/tcl.py", line 473, in <module>
    cli()
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1128, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1053, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1659, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1395, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 754, in invoke
    return __callback(*args, **kwargs)
  File "/openlane/scripts/config/tcl.py", line 459, in from_json
    resolved = process_config_dict(config_dict, exposed_dict)
  File "/openlane/scripts/config/tcl.py", line 320, in process_config_dict
    process_config_dict_recursive(config_in, state)
  File "/openlane/scripts/config/tcl.py", line [31](https://github.com/proppy/tiny_user_project/actions/runs/3499668129/jobs/5861479549#step:10:32)2, in process_config_dict_recursive
    value = process_scalar(key, value, state)
  File "/openlane/scripts/config/tcl.py", line 261, in process_scalar
    value = process_string(value, state)
  File "/openlane/scripts/config/tcl.py", line 2[44](https://github.com/proppy/tiny_user_project/actions/runs/3499668129/jobs/5861479549#step:10:45), in process_string
    value = reference.replace(match[0], found)
TypeError: replace() argument 2 must be str, not float

a workaround is to convert the config value to a string, ex:
    "UNIT": 2.4,
    "FP_IO_VEXTEND": "expr::2 * $UNIT",

@jeffdi I think we should leave this open, the proper fix is to have OpenLane handle non string vars.

Wait, huh? That's not... how expr is supposed to work
Let me test

Seems to be fixed as of #1509, can you check please?


Java script icon is not so good please add icon of javascript similar to html and css icon

Please, check this out. If that's still not enough good for you, then you can go this other part of the wiki related to customization.


Fixes to workbox-cacheable-response module page

What's changed, or what was fixed?
In the workbox-cacheable-response module page,

Escaped periods in a regular expression matching a URL
Added backticks around HTTP status codes
Added a missing determiner
Fixed some typos

CC: @petele @jeffposnick

:tada: This has been pushed live to https://developers.google.com/web/


add gateway channel

This PR adds the first changes needed for the gateway to communicate with the portal. (refs: firezone/product#517)
The way to achieve this is using Phoenix's channels, in the following way:

GATEWAY_REGISTRATION_TOKEN env variable is set at startup
Gateway register with the portal with the endpoint /auth/gateway/token/:secret. Note: I'm not using the same endpoint as the rest of the REST api since this is not a public-facing endpoint but I will add later the versioning scheme so that we keep the same protocol version with the gateway.
The Portal create the Gateway in the DB if it doesn't exists(or gets it if it does) and returns a JWT signing the gateway's ID
The gateway stores its ID and JWT
The gateway connect to the phoenix channel using the previously stored id/jwt, the every gateway will connect to channel gateway:<id> and gateway:all but since all channel isn't used for now we might want to delete it.
This is where the gateway's public key is stored, if at any point the public key changes an error is logged
Furthermore, an init message is sent to the gateway with its current configuration
After the gateway is connected, the events module is used to update the gateway on the changes in the portal. Note: Events were sent to fz_vpn and fz_wall when the event module was notified through pg notifier but we are getting rid of that since there was added complexity with no improvement for cases where the notified parties are within the same elixir code-base

Other changes:

Removed  fz_vpn and fz_wall since they will be replaced by the gateway
As mentioned before pg notifier was removed
Removed the old rules and allow_rules was replaced in most parts and the UI for rules was updated (although it's still fairly buggy, it was added just to test the new rules it)
This also includes changes to the REST api to point to the allow rules instead of rules

TODO

Gateway channel, some of the new model to configuration functions (in Devices, AllowRules, init)
The Allow Rules UI needs to be fixed
There is a bug where endpoint is empty on Device configuration that I'm already fixing in another branch
The secret token in the URL is being logged, need to look deeper into that
Handle vpn session expiring

@AndrewDryga Proposed a UX improve over how this could work in the future: Gateways could "tentatively" register, then be approved in the UI by an administrator. Slightly easier than creating in the UI first, spinning up a gateway, then back to the UI to verify it's healthy.
Would require some sort of rate limit... can revisit later.

Going to merge this since most feedback has been applied and I want to create PRs on top of this one.
We will have another opportunity for review when merging fz-next into master.


[Feature Request]: Skip intermediate login page with single provider

Describe the feature you'd like
When a single authentication provider is configured, skip the intermediate user interaction on the /login-page and redirect directly to the auth provider's actual login page.
Describe the benefits this feature would bring to BookStack users
50%-reduction in clicks-to-login :P
Additional context
With OIDC configured, users currently have to go click on "Login" at top left, then land on /login, where they select the only available OIDC provider (in my setup) before the are redirected to for the actual authentication page.

Thank you, @rjmidau and @ssddanbrown! Much appreciated.


Second render doesn't trigger animation

I'm trying to use 2 animations.

An animation of a photo that appears first time when a specific event happens (poppedPhoto)
An animation of a photo that appears at the beginning without animation and when a specific event happens it shakes (first).

The first animation i described works.
The second doesn't even that it was configured the same as the first, the only difference is that it occurs not at the first render.
Another problem i found is that enabled prop is not default configured to true when i create a display and even when i set it to true it only appears when i set it from a this.state.var
render() {
    let firstImage;
    if (this.state.first) {
      console.log('first');
      firstImage =
        (<Display
          enable={this.state.first}
          enterDuration={3000}
          enter='wobble'
        >
          <Image
            source={src}
            style={{ width: 140, height: 140 }}
          />
        </Display>);
    } else {
      console.log('second');
      firstImage =
        (<Image
          source={src}
          style={{ width: 140, height: 140 }}
        />);
    }`

    const poppedPhoto = this.state.uri !== '' ?
      (
        <View>
          <Display
            enable={this.state.poppedPhoto}
            enterDuration={10000}
            keepAlive
            enter="zoomInDown"
          >
            <Image
              onLoad={() => this.setState({
                uri: this.state.uri,
                poppedPhoto: true,
                first: true
              })}
              style={{ width: 200, height: 200 }}
              source={{ uri: this.state.uri }}
            />
          </Display>
        </View>
      ) : null;

    return (
      <View style={styles.container}>
        <View style={{ flexDirection: 'row' }}>
          {firstImage}
        </View>
        {poppedPhoto}
      </View>
    );
  }

A sample code of the animation shown at the top of the readme could be helpful

I managed to animate first image by making animation on exit.
but then the image vanishes.
how can i trigger an animation without hiding the image like in the example of animatable's wobble animation

I fixed the second problem by setting a timer after the same time of the animation duration like this:
  render() {     if (this.state.firstImage=== false) {       Timer.setTimeout('xxx', () => this.setState({ ...this.state, firstImage: true }), 3000);     }

But the hack i did before doesn't work on an actual android device.
Is there a way to retrigger an animation without hiding the image?


Fix privacy dropdown text color in contrast theme

Text in the privacy dropdown is not readable when using Mastodon (High contrast) as theme.

This is how it looks after the fix:

Awesome, thank you @misterzwiebel!

Moved them with the rest of the dims as it specifically doesn't need to be separate or marked with theme-contrast. For some reason it just missed a var. Thanks for spotting it though!

I did this to not affect the default theme, now the the hover effect for the default theme looks like this:

Maybe change the hover text to white?

Oops, that's a regression. Yeah, it should be white. The vars should be consistent throughout all the theme versions, because some of them come from the original Mastodon UI and are otherwise missing and could glitches later.


Refactor codebase for 2.0

Major changes for #311.  Overview of changes (some not complete yet as of this draft PR):

Simplify type hierarchy.
Decouple the internals of ClrMD from itself.  The internals of the old ClrMD were tightly coupled.  Now each implementation takes an interface used to construct that type.
ClrType is no longer unified across all AppDomains.  There is one unique ClrType per ClrModule it comes from.  This simplifies a lot of internal code (such as not having to ask for AppDomain when getting static field values).
ClrType is collectible and comparible...meaning we could construct multiple ClrType objects for the same method table that will compare as equal, but are not reference equal.  This means that when we create types, we no longer have to hold onto them forever...we can discard them for memory reasons and recreate later.
ClrModule is now per-AppDomain and not unified.  The original design caused a lot of headaches throughout ClrMD that we avoid at the cost of the user having to deal with multiple ClrModules for the same physical file on disk.  (This also brings ClrMD in line with what CLR is actually actually doing, which is the main goal here.)
Allow for users to provide their own type caching and string interning.
ClrRuntime will now be disposable and addref/release of DAC library/interfaces should be much simpler.

FYI @NextTurn since you have a lot of PRs open.  I hope to complete this PR by Dec 5th.
Note:  This PR is NOT complete and not ready to review.  This is only only here as an FYI that a lot of big changes are coming.  Comments on this are always welcome (especially about the bigger architecture), but there's little point in reviewing it now since I plan to do a large pass of cleanups and fixes after I get GCRoot building and tests passing.

No worries, I'm ready for any merge conflicts.

I am checking this in now to establish a baseline for other pull requests.  The work here is definitely not complete but it compiles and tests pass.  (Though I did strip out some of the unit tests that were failing...I don't really understand xunit theories well enough to be able to fix them.)
I am continuing the work in the testing/2.0 branch and will not merge this into master until I feel the library is ready to ship a prerelease build on nuget.
FYI, anything that looks weird or wrong in the library should either have a // TODO marker in the code, or a line item in the TODO list on the roadmap.  If there's something that looks wrong that doesn't have a todo marker somewhere then it's likely a bug or oversight by me.  This was a massive change so there's definitely stuff I forgot.
Feel free to comment on this PR after its merged, open an issue, or otherwise reach out to let me know if anyone finds something amiss.


Ensure all endpoints check user permissions

#250 is to be merged soon and it is currently lacking test to validate that all of our endpoints check permissions.
We need to ensure that we are checking permissions for all endpoints and views. To do so, we could:
Implement a new testing module, test_unallowed_permissions.py, with a new user fixture that does not belong to any permissions collection and hit every exposed endpoint with that user to ensure an error is returned.
This will likely require a ton of work to implement and quite a bit of maintenance to ensure any new endpoints are added to this testing module.
Any other suggestions on how to accomplish this testing goal?

We need to do a general security audit to make sure only authenticated users have access to what they are supposed to.

Further, we should use https://pypi.org/project/django-login-required-middleware/ to require login by default

Just noticed that many of the REST endpoints do not check permissions at all. This needs to be resolved


Support CMake installation in non-default location during installation

Solves #277
Demo
cat install/lib/cmake/libkml/LibKMLTargets-release.cmake
set_property(TARGET kmlbase APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
set_target_properties(kmlbase PROPERTIES
  IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libkmlbase.so.1.3.1"
  IMPORTED_SONAME_RELEASE "libkmlbase.so.1"
  )

list(APPEND _cmake_import_check_targets kmlbase )
list(APPEND _cmake_import_check_files_for_kmlbase "${_IMPORT_PREFIX}/lib/libkmlbase.so.1.3.1" )

You can see now the import path is prefixed by the _IMPORT_PREFIX variable, rather than an absolute directory of /usr.
Limitations
Neither the previous version of libkml nor this library express dependencies in the LibKMLConfig.cmake. A proper CMake config file will include calls to find_dependency for each library that the built target depends on. That is not yet added. It's assumed that boost, expat, zlib are all available in the standard system paths.
Attribution
This work is sponsored by AeroVironment, Inc.

The dependencies also need to be expressed in terms of their import location. Currently, LibKML's install assumes the installation location is in the same envirionment as the build location, using absolute paths. INTERFACE_LINK_LIBRARIES should be prefixed by _IMPORT_PREFIX
set_target_properties(kmlbase PROPERTIES
  INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
  INTERFACE_LINK_LIBRARIES "/usr/lib/x86_64-linux-gnu/libminizip.so;/usr/lib/x86_64-linux-gnu/liburiparser.so"
)

Although this PR is currently an improvement, it does not allow usage in a sysroot (yet).

Here's how to test it:
main.cpp
#include <kml/dom.h>

int main() {
        return 0;
}

CMakeLists.txt
cmake_minimum_required(VERSION 3.14)
project(test_kml)
find_package(LibKML CONFIG REQUIRED)
add_executable(main main.cpp)
add_library(LibKML::base ALIAS kmlbase)
add_library(LibKML::dom ALIAS kmldom)
add_library(LibKML::convenience ALIAS kmlconvenience)
target_link_libraries(main LibKML::base)

LibKML
cd libkml
cmake -S . -B build
cmake --build build -j $(nproc)
cmake --install build --prefix install

Test KML
cd test_kml
cmake -S . -B build -DCMAKE_PREFIX_PATH=../libkml/install
cmake --build build
cmake --install build --prefix install


Purge BEHAVIOR code from main predicators repo

All BEHAVIOR-related code will now live in this fork of the predicators repo.
I think it's useful to review these changes and have this PR ready now, but I'd like to wait on merging until @wmcclinton completes the plan-only-eval PR in the predicators_behavior repo (just to make sure we can get that PR in without having to make functionality changes that would affect code in this codebase).

a few more things come up when I do git grep -i behavior (the -i is to ignore case):
tests/approaches/test_nsrt_learning_approach.py:    # NSRTs when they are saved as strings (Necessary for behavior)
tests/approaches/test_oracle_approach.py:EXTRA_ARGS_ORACLE_APPROACH["behavior_tasks"] = [
tests/approaches/test_oracle_approach.py:        "option_model_name": "oracle_behavior",
tests/approaches/test_oracle_approach.py:        "behavior_scene_name": "Pomaria_1_int",
tests/approaches/test_oracle_approach.py:        "behavior_task_name": "sorting_books",

A few other candidates for deletion (collected by just looking through the BEHAVIOR related PRs of the past):

_run_plan_with_option_model
get_aabb_volume
get_closest_point_on_aabb


add "IF NOT EXISTS" to migrations

Every so often, my local database gets out of sync with the hosted database.  It's not clear when or how this happens, but it's usually for projects that have been put to sleep.
Anyways, during the process of getting things back in sync, I find i'm adding IF NOT EXISTS to the up.sql's.  And I was wondering, why not make that a default feature of migrations.   Should it fail of the column is already there?

I think you should try to find the root cause of why this is happening in the first place instead of adding IF NOT EXISTS to statements in migrations.
If you follow the correct migrations procedure, which is: developed locally, push code, and Nhost applies migrations, then this is not an issue.
I'll close this specific issue, because we won't add IF NOT EXISTS to migrations. But I encourage you to keep digging and find out the root cause of your problem.
Once we know, or once you know how to reproduce this issue, please open a new issue, and we'll figure it out there. Sounds good?

Sounds good.


Nert 668 - Protected Area Layer Legend

This lays the groundwork for other layers having legends and filters
What's new:

New LayerControl component
Wider sidebar to handle more content
Layer dropdown button and drawer
Layer legend for the Protected Areas layer
Legend entries can accept styling information or an icon image
Info button and modal for the layer
Upgraded the InfoDialogDraggable component to handle general use cases
Integrated a toggle feature for future layers requiring filters.

Close drawer/legend

Open drawer/legend

Very cool :-) I do thing would be good to have the checkboxes on the legends so a user can clearly identify the areas, but e can discuss that when giving the end sprint demo.

Agreed. They'll be there for the BCER and Region layers so I'm sure everyone will agree on activating them for the protected areas.


RFC: Prevent escaping of other patterns included in share

Jira
http://vjira2:8080/browse/WWWD-2454
Summary
Prevent auto-escaping of patterns included within the Share component
Details
Auto-escaping is not enabled in Pattern Lab, so you won't see this issue on the PL side.
Auto-escaping is enabled on the Drupal side, as it should be for security.  However, one of the side affects of the way the escaping is done is that if you set a variable to the result of an include function, the output will be escaped HTML.  In the example below, link1 will be escaped HTML, while link2 and link3 will print as rendered links
{% set link1 =<EMAIL_ADDRESS>{
  text: "Link 1",
  url: "#!"
}) %}

{% set link2 %}
  {{<EMAIL_ADDRESS>{
    text: "Link 2",
    url: "#!"
  }}
}) %}

{% set link3 %}
  {% include<EMAIL_ADDRESS>with {
    text: "Link 3",
    url: "#!"
  } only %}
}) %}

{{ link1 }}
{{ link2 }}
{{ link3 }}

This may actually be a bug in how Drupal's auto-escaping works since the result of an include function should be considered safe (as the examples for link2 and link3 above demonstrate).  But, this PR gets the job done.  If we choose this route, the rule of thumb is to never save the result of include() to a variable without printing it in Bolt components (use the technique for either link2 or link3 instead).  The syntax for link1 is fine to use in Pattern Lab.
How to test
Reproduce the bug

In Drupal, include a bare bones share component in a twig template

{% include<EMAIL_ADDRESS>with {
  inline: true,
  text: 'Share this page'|trans,
  sources: [
    {
      name: "facebook",
      url: "#!"
    }
} only %}

Disable javascript
Confirm that escaped markup is output to the page

Fix the bug

Copy the updated markup for share.twig from this PR into Drupal
Refresh the page and confirm that the markup is not escaped

@remydenton out of curiosity, would we be seeing this exact same issue in Pattern Lab / on the docs site if we enabled autoescaping in our Twig environment? Just wondering if enabling that would help prevent issues like these from popping up.
The other thing I’m wondering: is this problem you’re outlining here happening in any other Bolt components as far as we know?

Both good questions.

I tried enabling autoescape in pattern lab here: https://github.com/bolt-design-system/bolt/blob/master/apps/pattern-lab/config/config.yml#L56.  It escapes lots of things, to the point where it seemed unfeasible to update (and probably wouldn't match Drupal's behavior in any case-- see https://www.drupal.org/project/drupal/issues/1825952 for an idea of the subtleties involved).

No, there's no other place in Bolt components that sets a variable with the include() function before printing.  There are places where the results of include() are printed directly, which works fine.  For example:
https://github.com/bolt-design-system/bolt/blob/master/packages/components/bolt-band/src/band--flag.twig#L27.
https://github.com/bolt-design-system/bolt/blob/master/packages/components/bolt-logo/src/logo.twig#L6


Fix typos, update link, and label in ToneOfVoice view

@PavelLaptev here's a quick PR with some typos I found.
I'm still working on adding the ChatGPT endpoint changes.

@davo can you please provide a link to your figma account, so I can add you to the next release?


Reporting a security/usability issue.

Please let me know how to best report an issue to you (mid/low). This repo has no security policy to report seamlessly. Thank you. 👍

Hi, thank you for reaching out! You can find my email and GPG key ID on my profile.


The newest tidb-cluster could not be bootstrapped using the current client-go(https://github.com/tikv/client-go/commit/d0629e1f5a408c347ac7d06eac9fd5b8f42bc33f)

          The newest tidb-cluster could not be bootstrapped using the current client-go(https://github.com/tikv/client-go/commit/d0629e1f5a408c347ac7d06eac9fd5b8f42bc33f)

tidb https://github.com/pingcap/tidb/commit/fcfa0574ef809e60b4aa26b40e4e52bf21e3e570
tikv https://github.com/tikv/tikv/commit/5e0d7b1ba9430569886de26b51ca553337a36455
pd   https://github.com/tikv/pd/commit/b36b725c4b977a4345bd1c167e7ea6deaa730daf
It would be ok to use client-go with https://github.com/tikv/client-go/commit/6f9ba8327b75b7fb3e8710c8b28b28fb9959cc34
Region unavailable errors like until the bootstrap timeout:
[INFO] [region_request.go:1532] ["throwing pseudo region error due to no replica available"] [req-ts=446495314270748705] [req-type=Prewrite] [region="{ region id: 38, ver: 19, confVer: 1 }"] [replica-read-type=leader] [stale-read=false] [request-sender="{rpcError:cached region not found,replicaSelector: replicaSelector{selectorStateStr: nil, cacheRegionIsValid: unknown, replicaStatus: []}}"] [retry-times=0] [total-backoff-ms=23510] [total-backoff-times=54] [max-exec-timeout-ms=20000] [total-region-errors=]

/cc
@hawkingrei @CabinfeverB
Originally posted by @cfzjywxk in https://github.com/tikv/client-go/issues/1086#issuecomment-1867576516

introduced by #1079
We should return false before check stale


[CI] Style checks are broken

Tested versions
N/A
System information
N/A
Issue description
Code style checks are no longer being applied, see for example:
https://github.com/godotengine/godot/commit/82f5bd630c7b693d69e16e4a0f4ac530528a230f
Seems to be a regression from:

https://github.com/godotengine/godot/pull/91597

All checks are now marked as skipped and claims there are no files to check
Steps to reproduce
N/A
Minimal reproduction project (MRP)
N/A

CC @Repiteo @akien-mga

Indeed the new code run pre-commit run --verbose, and by default pre-commit run only affects files which have been staged in Git. In a PR or merge CI run, there's no staged files, as the commit was already made. So we still need a way to pass the list of files changed in the commit(s) compared to the base branch.
So we should probably restore the --files ${{ env.CHANGED_FILES }} logic, unless the pre-commit action provides a facility for this. (I suppose it doesn't, the action repo says it's in maintenance mode and they encourage us to use their own hosted CI system.)

Do we need to host our own https://github.com/pre-commit/action that avoids a host ci system?

Do we need to fork our own https://github.com/pre-commit/action that avoids a hosted ci system?

No, that action is a GitHub Action and is therefore "hosted"/run by GitHub in the runners they provide us.
The "pre-commit CI" they mention is a separate, bespoke product that they offer. We don't have to use it is the basic GH action works for us.


Low quality sounds do not play properly

Hello,
I've come across a low quality sound sample (11025Hz Mono .wav) which ebiten does not play properly on Windows 10. The sound plays fine in standard audio players (ie: Audacity or VLC). Here's the sample code that I'm using:
package main

import (
	"fmt"
	"os"

	"github.com/hajimehoshi/ebiten"
	"github.com/hajimehoshi/ebiten/audio"
)

func update(screen *ebiten.Image) error {
	fmt.Println("Starting to draw frame")
	return nil
}

func loadSound(context *audio.Context, fileName string) *audio.Player {
	file, err := os.Open(fileName)
	if err != nil {
		panic(fmt.Sprintf("Error while opening '%s'. The error is: %s", fileName, err))
	}
	player, err := audio.NewPlayer(context, file)
	if err != nil {
		panic(fmt.Sprintf("Error while creating a Player for '%s'. The error is: %s", fileName, err))
	}
	return player
}

func main() {
	audioContext, _ := audio.NewContext(44100)

	sound := loadSound(audioContext, "bad.wav")
	//sound := loadSound(audioContext, "good.wav")

	f := func(screen *ebiten.Image) error {
		if !sound.IsPlaying() {
			sound.Rewind()
			sound.Play()
		}
		audioContext.Update()
		return nil
	}
	runErr := ebiten.Run(f, 224, 256, 3, "Space Invaders")
	fmt.Println("Exited run() with error: ", runErr)
}

The sound samples are attached below.
Temp.zip

Nevermind - apparently I did not call Decode() on this file like I should've :)

Thank you for making a tutorial at the Wiki. That's what lacks in Ebiten!


Include redux-sagas

Hi, I implemented redux-sagas on my own project and mock server using drackov..
I can help with a pr with redux-sagas, may be ok to implement it?
what do you think?

There are many options in this space so I'm not sold having an opinion on this makes much sense. There's a separate thread where people are arguing for adding redux thunk, but I lean toward just letting people pick what they like. That said, thanks for the offer! 👍