[Feature][Jdbc-Connector] Add OceanBase Connector

Purpose of this pull request
Add OceanBase Connector
Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/incubator-seatunnel/tree/dev/docs
[ ] If you are contributing the connector code, please check that the following files are updated:

Update change log that in connector document. For more details you can refer to [connector-v2]
Examples are as follows：
env {
job.name = "SeaTunnel"
spark.executor.instances = 1
spark.executor.cores = 1
spark.executor.memory = "1g"
spark.master = local
}

source {
jdbc{
url = "jdbc:oceanbase://xxxxx:2881/test"
driver = "com.alipay.oceanbase.jdbc.Driver"
user = "xxx"
password = "xxx"
query = "select id,name from test"
driver_type = "mysql"
}
}
transform {
}
sink {
jdbc {
url = "jdbc:oceanbase://xxx:2881/test"
driver = "com.alipay.oceanbase.jdbc.Driver"
user = "root"
password = "xxxxx"
driver_type = "oracle"
query = "insert into test3(id,name) values(?,?)"
}
}
3. Update plugin-mapping.properties and add new connector information in it
4. Update the pom file of seatunnel-dist

[ ] Update the release-note.

why not use mysql connector

 Because OceanBase databases are used in two ways, namely mysql and oracle.
------------------ 原始邮件 ------------------
发件人:                                                                                "apache/seatunnel"                                                                                @.>;
发送时间: 2023年5月28日(星期天) 下午2:20
@.>;
<EMAIL_ADDRESS>主题: Re: [apache/seatunnel] [Feature][Jdbc-Connector] Add OceanBase Connector (PR #4626)
why not use mysql connector
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

@changhuyan Thanks for your contributation! I left some comments, and you can touch me at any time if you have any ideas on them.
For the reference to oceanbase-client, I think it may be an appropriate method to guide users to download it manually through the document, but I'm not sure how this affects the integration tests.

Yes, there's a better way. You can change it.
…
------------------ 原始邮件 ------------------ 发件人: "apache/seatunnel" @.>; 发送时间: 2023年6月27日(星期二) 晚上8:04 @.><EMAIL_ADDRESS>主题: Re: [apache/seatunnel] [Feature][Jdbc-Connector] Add OceanBase Connector (PR #4626) @whhe requested changes on this pull request. In seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/JdbcDialectFactory.java: > @@ -33,7 +35,7 @@ public interface JdbcDialectFactory { * @return true if this dialect understands the given URL; false * otherwise. / - boolean acceptsURL(String url); I think the driverType param shoud be passed in the create method below, and we can use a new default method to keep the other dialects unchanged. default JdbcDialect create(String driverType) { return create(); } In seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/oceanbase/OceanBaseMySqlDialectFactory.java: > +import com.google.auto.service.AutoService; + +import java.util.Optional; + @.(JdbcDialectFactory.class) +public class OceanBaseMySqlDialectFactory implements JdbcDialectFactory { + @OverRide + public boolean acceptsURL(String url, Optional<String> driverTye) { + return url.startsWith("jdbc:oceanbase:") + && driverTye.isPresent() + && driverTye.get().equalsIgnoreCase("mysql"); + } + + @OverRide + public JdbcDialect create() { + return new MysqlDialect(); We can merge the two dialect classes of OceanBase and return the JdbcDialect by the driverType param here. public JdbcDialect @.* String driverType) { if ("mysql".equalsIgnoreCase(driverType)) { return new MysqlDialect(); } return new OracleDialect(); } In seatunnel-connectors-v2/connector-jdbc/pom.xml: > @@ -129,6 +130,12 @@ <version>${vertica.version}</version> <scope>provided</scope> </dependency> + <dependency> + <groupId>com.oceanbase</groupId> + <artifactId>oceanbase-client</artifactId> + <version>${oceanbase.version}</version> + <scope>provided</scope> + </dependency> It should not be imported directly due to the lgpl license https://github.com/oceanbase/obconnector-j In seatunnel-dist/pom.xml: > @@ -488,6 +489,12 @@ </dependency>  + <dependency> + <groupId>com.alipay.oceanbase</groupId> + <artifactId>oceanbase-client</artifactId> + <version>${oceanbase.version}</version> + <scope>provided</scope> + </dependency> Should not use the previous internal version, just keep it same with seatunnel-connectors-v2/connector-jdbc/pom.xml In seatunnel-e2e/seatunnel-connector-v2-e2e/connector-jdbc-e2e/connector-jdbc-e2e-part-2/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/JdbcOceanbaseIT.java: > +import org.junit.jupiter.api.Disabled; +import org.testcontainers.containers.GenericContainer; +import org.testcontainers.containers.output.Slf4jLogConsumer; +import org.testcontainers.utility.DockerImageName; +import org.testcontainers.utility.DockerLoggerFactory; + +import com.google.common.collect.Lists; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + @.("Disabled because it needs user's personal oceanbase account to run this test!") +public class JdbcOceanbaseIT extends AbstractJdbcIT { + private static final String OCEANBASE_IMAGE = "shihd/oceanbase:1.0"; You can use the docker image oceanbase/oceanbase-ce:<IP_ADDRESS> with user root and empty password. — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.>

Do you have time to complete this work recently? If not, we can also find other developers in the community to continue development based on your work.


Fields with "." (period) in the name break grid

Bug Report
When using a static data array, if key names include "." (i.e., ASCII 46, "full stop"), then the value for that field is not displayed in the grid.
Expected Behavior:
var counts = [{"Grade Level": 9, "GPA 4.0": 23}];
$("#target").jsGrid({
  data: counts,
  fields: [{ name: "Grade Level",   type: "number"}, { name: "GPA 4.0", type: "number"}]
});

Grade Level | GPA 4.0
----------------------
|         9 |     23 |
----------------------

Actual Behavior
var counts = [{"Grade Level": 9, "GPA 4.0": 23}];
$("#target").jsGrid({
  data: counts,
  fields: [{ name: "Grade Level",   type: "number"}, { name: "GPA 4.0", type: "number"}]
});

Grade Level | GPA 4.0
----------------------
|         9 |        |
----------------------

Steps to reproduce:
Fiddle

First.
Who the fck uses spaces or dots in column names. Go try using spaces and dots in variable/column name with any database,programming lang -> Result: errorrrrrrrrrrrrrrrrrrrrrr
For column name you have magic property called 'title'. Property 'name' is used for dealing with JS array and JSON

@heiovsky - your swearing and insulting makes it difficult to assume no malice, but to your points:
I have read the documentation.  It does not address this issue.  Unless I have missed it, there are no mentions of characters that are unsafe for use in key strings, or any other configuration area.  If I am wrong about this, please point me to the specific area I've missed and accept my apologies.
String literals are valid property name in JS, and may indeed contain spaces and dots, and all sorts of other unusual things beside.  Also, data doesn't always come from well-designed sources.  In my case, not that its any of your business, the offending data comes from a table alias in a programmatically generated query using a large and well established data dictionary.  (I.e, I cannot change it) which is replete with decimal points because it deals with demographic factors, ratios, and proportions.  In most cases, the decimal points convey important meaning.
Of course, I can translate these into a key name that will work within the constraints imposed by jsgrid, and map these to an appropriate label for use in the label property. In fact I have done so.  But absent intentional design to the contrary, this is a workaround, which by definition implies a bug.
In my view, the very best software comes from casting the widest net for boundary and obscure use cases, and making a considered decision about them.  If this is too rare a use case to be worth the trouble of fixing the bug, that's a question @tabalinas or other maintainers.  I make no value judgement either way.
Regards.

Hi, you can define a title property for the field definition, like this: fields: [{ name: 'gradeLevel,   type: "number",  title: "Grade Level"}
I've never seen any field name(used as key) has spaces or dot, also the dot notation is used for accessing nested object or array elements. I think you are in the wrong direction.

@jwtc, as @uniquejava said, dot . is used for nested objects. So grid tries to access item["GPA 4"][0], which obviously doesn't exist.
I agree that this should be clearly stated in docs.
As for the bug report, no fix is required.


kernel.device.pm failed on mec15xxevb_assy6853 board.

Describe the bug
building tests/kernel/device/ on mec15xxevb_assy6853 board, it would report a build error.
To Reproduce
Steps to reproduce the behavior:

west build -b mec15xxevb_assy6853 -p auto tests/kernel/device/ -DCONFIG_DEVICE_POWER_MANAGEMENT=y
see error

Logs and console output
zephyrproject/zephyr/subsys/power/device.c: In function 'sys_pm_create_device_list':
zephyrproject/zephyr/subsys/power/device.c:163:22: error: 'core_devices' undeclared (first use in this function); did you mean 'pm_devices'?
163 |  num_pm = ARRAY_SIZE(core_devices);
|                      ^~~~~~~~~~~~
../include/sys/util.h:67:66: note: in definition of macro 'ZERO_OR_COMPILE_ERROR'
67 | #define ZERO_OR_COMPILE_ERROR(cond) ((int) sizeof(char[1 - 2 * !(cond)]) - 1)
|                                                                  ^~~~
../include/sys/util.h:98:11: note: in expansion of macro 'IS_ARRAY'
98 |  ((long) (IS_ARRAY(array) + (sizeof(array) / sizeof((array)[0]))))
|           ^~~~~~~~
zephyrproject/zephyr/subsys/power/device.c:163:11: note: in expansion of macro 'ARRAY_SIZE'
163 |  num_pm = ARRAY_SIZE(core_devices);
|           ^~~~~~~~~~
zephyrproject/zephyr/subsys/power/device.c:163:22: note: each undeclared identifier is reported only once for each function it appears in
163 |  num_pm = ARRAY_SIZE(core_devices);
|                      ^~~~~~~~~~~~
../include/sys/util.h:67:66: note: in definition of macro 'ZERO_OR_COMPILE_ERROR'
67 | #define ZERO_OR_COMPILE_ERROR(cond) ((int) sizeof(char[1 - 2 * !(cond)]) - 1)
|                                                                  ^~~~
../include/sys/util.h:98:11: note: in expansion of macro 'IS_ARRAY'
98 |  ((long) (IS_ARRAY(array) + (sizeof(array) / sizeof((array)[0]))))
|           ^~~~~~~~
zephyrproject/zephyr/subsys/power/device.c:163:11: note: in expansion of macro 'ARRAY_SIZE'
163 |  num_pm = ARRAY_SIZE(core_devices);
|           ^~~~~~~~~~
At top level:
zephyrproject/zephyr/subsys/power/device.c:68:21: warning: 'pm_devices' defined but not used [-Wunused-variable]
68 | static device_idx_t pm_devices[MAX_PM_DEVICES];
|                     ^~~~~~~~~~
[60/111] Building C object zephyr/drivers/adc/CMakeFiles/drivers__adc.dir/adc_mchp_xec.c.obj
ninja: build stopped: subcommand failed.
Environment (please complete the following information):

OS: Fedora28
Toolchain: Zephyr-sdk-0.11.4
Commit ID: 4137d3380f

You missed this part of the error log:
zephyr/subsys/power/device.c:53:2: error: #error "Add SoC's core devices list for PM"
   53 | #error "Add SoC's core devices list for PM"
      |  ^~~~~

We have never enabled device power management on MEC1501 so this is expected behavior. Closing...

We have never enabled device power management on MEC1501 so this is expected behavior. Closing...

for this test case, should we exclude mec board?

The issue is due to your explicit enabling of -DCONFIG_DEVICE_POWER_MANAGEMENT=y on a board that does not have device power management enabled. There are no CI errors on this, so there is no need to exclude this board in the yaml file.

but this tese case will be  selected by sanitycheck script to run on mec15xxevb_assy5853 board, so it should be excluded in yaml file.


Fixed Weird Noelle offset and sprites where needed

Still missing the snowglobe winning animation

Merged manually, thanks!


Loot table function enchant_randomly.enchantments property is not optional

Per wiki, the field is actually optional and defaults to all enchantments if not set. However, current linting does throw an error if the field is not specified (expected an array).

Duplicate of misode/minecraft-schemas#11


Improve datum FUTURE warning

🐛 Bug Report
When loading any netCDF file, a warning is produced from iris:

FutureWarning: Ignoring a datum in netCDF load for consistency with existing behaviour. In a future version of Iris, this datum will be applied. To apply the datum when loading, use the iris.FUTURE.datum_support flag.

The warning text implies that there is a datum in the file being loaded and it is being ignored.  Can the behaviour to trigger the warning be aligned with the warning text, so the warning only fires if there is a datum in the source file?
This would make the warning much more useful for end users: users would only see the warning for those cases where there is a behaviour change controlled by the iris.FUTURE.datum_support flag (and hence where the user may need to understand or do something).  At the moment, the warning is emitted for files where there will be no behaviour change too.
How To Reproduce
Steps to reproduce the behaviour:

Load a netCDF file with iris 3.7 (or iris since 3.3ish?)

Expected behaviour
Only seeing the warning for netCDF files that do have a datum defined.

I reckon it is basically this code which is relevant to this.
I also don't understand why this issues this warning whenever a coordinate-system is built, and not just if there is a datum attribute.
Unless there a good reason, I'd say this can very simply be changed.
It was added with https://github.com/SciTools/iris/pull/4704
Unfortunately, I'm not sure that either contributor or reviewer will be available to re-discuss this, so we may need to make our own decision!

This code was added with https://github.com/SciTools/iris/pull/4704
Unfortunately, I'm not sure that either contributor or reviewer will be available to re-discuss this, so we may need to make our own decision!

They can be responsive when asked! @wjbenfold @jamesp anything to add? No worries if you're busy 😊

Either I had some arcane reason to do this that's unfathomable to you guys, me and everyone else or I wrote a bug. I'm inclined to believe it's the latter, happy to throw up a PR to fix it as penance if you like but I dare say you'll beat me to it


Grid display not working

Is it not possible to use grid display with this?
I tried and every new object goes to the next row instead of filling in the column.
When I remove the draggable tag it displays normally.

@huhehuhehu can you share reproduction link ?


[BUG] FPS Drop Nightmare

Please check if your issue is not a duplicate by searching existing issues
Describe the bug
FPS Drop when entering Slepe/Teleporting to Slepe
To Reproduce

Turn on plugin
Go to Slepe/Nightmare
Experience lag and FPS drop

Expected behavior
FPS Drops when the plugin is active teleporting into Slepe
Screenshots
I have a clip
https://medal.tv/games/osrs/clips/ircx95haIx6AZVx6U/d133781QbBfo?invite=cr-MSxGQmQsNDY0NjIzOTMs
Environment (please complete the following information):

OS:Windows
Runelite Version: Latest
Launcher Version: Latest

I am unable to replicate this, but I dont have the Slepe teleport on my Drakan's Medalion, could you try entering the Sisterhood Sanctuary via the stairs after walking from ToB? Also perhaps a log would help us when the lag occurs

logs aug 9.txt

After teleporting to tob and running towards there, it starts dropping in FPS as well. I don't know if its the plugin for sure now that i've panned the camera around a few times. When I zoom out, it drops, but when I zoom all the way in, its normal. After a couple of hours, it stayed normal


Deleting scratches

Users should be able to archive their scratches as a pseudo-deletion option
Add a DELETE endpoint for scratches

I've changed my mind on this. We should allow straight-up deletion (as well?).

as well?

Probably not needed. updating the issue

I'm confused. I said "we should allow deletion as well" and then you said it's probably not needed but renamed the issue to just "Deleting scratches". So what is your intention here?
Either way, I do think we should let users straight-up delete scratches. I guess archiving is not that important, since we can just add more support for how scratches can be viewed / organized down the line.


Checklist Failure (type="checkbox")

Initial checklist

[X] I read the support docs
[X] I read the contributing guide
[X] I agree to follow the code of conduct
[X] I searched issues and couldn’t find anything (or linked relevant results below)

Affected packages and versions
rehype-format: ^4.0.0, rehype-raw: ^6.1.0, rehype-stringify: ^9.0.2, remark-gfm: ^2.0.0, remark-parse: ^10.0.0, remark-rehype: ^9.0.0, unified: ^10.1.0
Link to runnable example
No response
Steps to reproduce
Input Markdown
- [x] Some Text

Library Method
import rehypeFormat from 'rehype-format'
import rehypeRaw from 'rehype-raw'
import rehypeStringify from 'rehype-stringify'
import remarkGfm from 'remark-gfm'
import remarkParse from 'remark-parse'
import remarkRehype from 'remark-rehype'
import { unified } from 'unified'

async function render(
  markdown: string
): Promise<string> {
  const result = await unified()
    .use(remarkParse)
    .use(remarkGfm)
    .use(remarkRehype, { allowDangerousHtml: true })
    .use(rehypeRaw)
    .use(rehypeFormat)
    .use(rehypeStringify, {
      quoteSmart:       true,
      closeSelfClosing: true,
      omitOptionalTags: true,
      entities:         { useShortestReferences: true }
    })
    .process(markdown)

  return result.toString()
}

export default render

import fs from 'fs'
import { join } from 'path'

const docsDirectory = join(process.cwd(), 'docs')

export function getRawDocBySlug(slug: string): [string, string] {
  const realSlug = slug.replace(/\.mdx$/, '')
  const fullPath = join(docsDirectory, `${realSlug}.mdx`)
  const fileContents = fs.readFileSync(fullPath, 'utf8')

  return [realSlug, fileContents]
}

Usage
const DangerousMarkdown: FC<{ params: { slug: string } }> = ({ params }) => {
  const [slug, content] = getRawDocBySlug(params.slug)
  return <>

{slug}

  </>
}

Expected behavior

foo

    <input checked="" disabled="" type="checkbox"> Some Text

Actual behavior

foo

    <input checked="" disabled="" type="checkbox/"> Some Text

Runtime
Node v16
Package manager
yarn v2
OS
Linux
Build and bundle tools
Next.js

It may have been sublte, the issue is it's rendering type="checkbox\" instead of type="checkbox"

It looks like render is not used, and that you’re mixing MDX files with non-MDX-enabled remark?

I'd second @wooorm's question,
And add that testing the example you provided, modifying it to call render https://codesandbox.io/s/dangerous-html-example-ff3zl doesn't appear to have the issue you described.
Also since you are using react, it may be worth considering using https://github.com/rehypejs/rehype-react or https://github.com/wooorm/xdm#next to render directly to React in Next.

I'd second @wooorm's question,
And add that testing the example you provided, modifying it to call render https://codesandbox.io/s/dangerous-html-example-ff3zl doesn't appear to have the issue you described.
Also since you are using react, it may be worth considering using https://github.com/rehypejs/rehype-react or https://github.com/wooorm/xdm#next to render directly to React in Next.

Unfortunately none of those methods allow for the use of all of the following:

Allow mixed input (HTML and Markdown)
Meta (Search Engine Optimization)
Server-Side Generation (Pages)
Partials (Server-Side Includes)
Client-Side Rendering (Editor Previews)

For this reason, the site has two different methods to render Markdown:

From the filesystem on the server in getStaticProps more or less as you showed in your sandbox
From an AST tree parsed on the server and rendered in the browser via a MarkdownRenderer component

Method 1
Basically your codesandbox code, except render's usage is really:
import MDXLayout from '../components/MDXLayout'
import { getAllDocs, getDocBySlug } from '../lib/docs'
import render from '../lib/markdown'

type Props = {
  meta: any
  content: string
}

const Doc = ({ meta,  content }: Props) => {
  return (
    <MDXLayout meta={meta}>
      {content}
    </MDXLayout>
  )
}

export async function getStaticProps({ params }: { params: { slug: string } }) {
  const doc = getDocBySlug(params.slug)
  const content = await render(doc.content || '')

  return {
    props: {
      ...doc,
      content
    }
  }
}

export async function getStaticPaths() {
  const docs = getAllDocs()

  const allPaths: { params: any }[] = []
  docs.forEach((doc) => {
    allPaths.push({
      params: {
        slug: doc.slug
      }
    })
  })

  return {
    paths:    allPaths,
    fallback: true
  }
}

export default Doc

import type { FC } from 'react'
import BaseLayout from './BaseLayout'

const MDXLayout: FC<{ children: string; menu: string; meta: any }> = ({
  children,
  meta: pageMeta
}) => {
  const meta = {
    title:       'Wiki',
    description: '',
    cardImage:   '',
    ...pageMeta
  }

  return (
    <BaseLayout
      meta={meta}
    >

    </BaseLayout>
  )
}

export default MDXLayout

import { useRouter } from 'next/dist/client/router'
import Head from 'next/head'
import Link from 'next/link'
import { FC } from 'react'

const BaseLayout: FC<{ menu?: JSX.Element; meta: any }> = ({
  children,
  meta
}) => {
  const router = useRouter()

  return (
    <>

        <title>{meta.title}</title>

{meta.title}

        {children}

    </>
  )

Method 2
Specifically following this guide: https://css-tricks.com/responsible-markdown-in-next-js/
I have (though messy) dragged all the required code snippets out of my project into the codesandbox:
https://codesandbox.io/s/dangerous-html-example-forked-zz7yl?file=/src/App.js

Unfortunately I cannot reproduce this issue using this method either, which is beyond frustrating.
Well, I couldn't figure out how to codesandbox a next app to test the server-side include, but the client-side method is shown above.
If there's nothing obvious about these methods described above that's broken, I'll have to publish the app itself as minimal reproduction, which.. eww, I don't want you guys to have to sift through that.

I found the culprit:
Replace rehypeFormat with rehypePresetMinify and 💥
This might be an issue for them instead?
https://github.com/rehypejs/rehype-minify

Unfortunately none of those methods allow for the use of all of the following:

Allow mixed input (HTML and Markdown)
Meta (Search Engine Optimization)
Server-Side Generation (Pages)
Partials (Server-Side Includes)
Client-Side Rendering (Editor Previews)

Both xdm and rehype-react allow for all of the above.
To clarify since there seems to be some confusion, these would replace remark-parse and/or rehype-stringify specifically, most of the rest of the unified pipeline would remain the same.
You'd just get an easier to use/safer output from the pipeline.

Unfortunately I cannot reproduce this issue using this method either, which is beyond frustrating.

Could you share the versions of dependencies you are using locally?
It could be you are using older versions of dependencies which could in theory have a bug that has already been patched in latest.
Or version incompatibility between plugins causing an issue.

Well, I couldn't figure out how to codesandbox a next app to test the server-side include, but the client-side method is shown above.

Code Sandbox has a Next starter which may help https://codesandbox.io/s/admiring-leftpad-iywjj (or click "Create Sandbox", and search for "Next" in the template list)

@ChristianMurphy Sorry about that, please see the message just above where I finally found the issue.
Also, here are the package versions I am using (should all be latest):

  "dependencies": {
    "@babel/core": "^7.15.0",
    "@jsdevtools/rehype-toc": "^3.0.2",
    "gray-matter": "^4.0.3",
    "next": "^11.1.2",
    "react": "^17.0.2",
    "react-dom": "^17.0.2",
    "react-is": "^17.0.2",
    "rehype-format": "^4.0.0",
    "rehype-partials": "^1.0.6",
    "rehype-preset-minify": "^6.0.0",
    "rehype-raw": "^6.1.0",
    "rehype-react": "^7.0.1",
    "rehype-slug": "^5.0.0",
    "rehype-stringify": "^9.0.2",
    "remark-emoji": "^3.0.1",
    "remark-footnotes": "^4.0.1",
    "remark-gfm": "^2.0.0",
    "remark-parse": "^10.0.0",
    "remark-rehype": "^9.0.0",
    "remark-wiki-link": "^1.0.4",
    "styled-components": "^5.3.1",
    "unified": "^10.1.0"
  },

  "devDependencies": {
    "@types/react": "^17.0.19",
    "@types/styled-components": "^5.1.13",
    "@typescript-eslint/eslint-plugin": "^4.30.0",
    "@typescript-eslint/parser": "^4.30.0",
    "babel-plugin-styled-components": "^1.13.2",
    "eslint": "^7.32.0",
    "eslint-config-next": "^11.1.2",
    "eslint-config-prettier": "^8.3.0",
    "eslint-plugin-react": "^7.25.1",
    "prettier": "^2.3.2",
    "prettier-eslint": "^13.0.0",
    "typescript": "^4.4.2"
  }

Replace rehypeFormat with rehypePresetMinify (in any of the examples) and :boom:
This might be an issue for them instead? (should I move this?)
https://github.com/rehypejs/rehype-minify

I'm not sure it is.
With that additional context, I updated the example from before to try to reproduce the issue https://codesandbox.io/s/rehype-minify-7x65y
Try commenting and uncommenting line 16
      closeSelfClosing: true

it seems like it may be related to the closeSelfClosing option :thinking:

Why are you setting closeSelfClosing? It’s a useless option for HTML, and it only makes sense when using XML/MDX. But, you are missing XDM functionality in your pipeline?
It’s a bug in hast-util-to-html, but still, this bug is a manifestation of another problem.


Update non required annotation format

Since I want to use method chain notation in the future, I updated the notation.
For example.
// @Param int query int false "int enums" +Enums(1, 2, 3)+default(0)

Codecov Report

Merging #84 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #84   +/-   ##
=======================================
  Coverage   86.91%   86.91%
=======================================
  Files           5        5
  Lines         657      657
=======================================
  Hits          571      571
  Misses         54       54
  Partials       32       32

Impacted Files
Coverage Δ

operation.go
95.23% <ø> (ø)
:arrow_up:

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 fc1a774...0414ee8. Read the comment docs.


Add config option for snapshot name(s)

Is your feature request related to a problem? Please describe.
When we migrated to MikroORM v5, we added the database snapshot to our versioning. However, when running a migration from my local environment, a different snapshot file was created instead of changing the existing snapshot. I found out that the snapshot name is generated based on the dbName config variable, and this was the root of the problem. Since our local environments have different database names, the snapshots will keep being generated with different names.
Describe the solution you'd like
I'd like to have a configuration option to change the default name of the snapshot that is created.
Describe alternatives you've considered
An alternative would be to change the database names in our local configs. However, that's not a very suitable option because some team members already have databases with that name and a different name wouldn't be suitable. That's why our workflow allows for custom database naming, but the new snapshot doesn't allow for our usual workflow.

Makes sense, PR welcome


Cleanup

Whew, this got a little too big.

Misc cleaning (1f9dc2954b44f7a8f9c9169f213ac9dc9b19f866, b5e453cdfa9454851b061562c6c759d706a9ff49, ceab836401641b14d47389e2ae9489aa4735cc9f, 2c9397e71193bee4557ad10c516acc4dcf20cf6e)
Bugfix: Don't text() Identifiers and MemberExpressions (eb1b72cbf6aee5be6dcbdfdda7f6f20221a1cac4)

In React, they can be text or other Elements. Treating them as always text isn't the correct thing to do.
This open up the possibility of getters invoking iDOM functions, etc

Bugfix: Ensure self closing elements with spread attributes close (bb46b445481a6a246a9daf61e136762051feafdc)
Don't push unneeded arguments onto elementOpenStart (205df8455a5064b6f2d785f43e71797726f930e0)
Prevent unwanted function scopes from being created (afa2c79a5e072ca98859b820e7e50bc8b9508a11)

@thejameskyle: Would you mind reviewing this?

Looking now

Can we change some code style stuff in here as well:

Instead of building up and object, let's put all of the method of the visitor here: (the object made more sense when it was enter visitors`.

https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/index.js#L72

Instead of destructuring can we call these node, makes it easier follow I think

https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/index.js#L16
https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/index.js#L53
https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/index.js#L59

Instead of wrapping entire blocks in an if statement can we do the inverse and return early

https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/helpers.js#L15
https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/helpers.js#L128-L131 (continue)
https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/helpers.js#L163-L174

If you decide to keep the helper builder function (re: https://github.com/babel-plugins/babel-plugin-incremental-dom/pull/5#discussion_r35489093), can you make all the functions exported the same way:

https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/helpers.js#L106-L114
https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/helpers.js#L121
https://github.com/babel-plugins/babel-plugin-incremental-dom/blob/master/src/helpers.js#L161

Sorry for the massive comment

https://github.com/babel-plugins/babel-plugin-incremental-dom/commit/f519f79edfc5428fc0e1d06b19acacfef4d02a13
https://github.com/babel-plugins/babel-plugin-incremental-dom/commit/f056fb3b1b507a6d4d01d2281f5e59ead4871a63
https://github.com/babel-plugins/babel-plugin-incremental-dom/commit/9354cd325195253a3aa488840606670e98c91c1c
https://github.com/babel-plugins/babel-plugin-incremental-dom/commit/a4f60ffdd3c6ec93b84015c39a1ca58a3d410b7c

Then @thejameskyle made it even bigger. :stuck_out_tongue:

I'm just bumping your commit count, that's all.

Looks good

btw @jridgewell, @sebmck mentioned to me earlier that he's going to be enforcing linting rules across plugins in this org in the future

https://github.com/babel-plugins/babel-plugin-incremental-dom/commit/eb1b72cbf6aee5be6dcbdfdda7f6f20221a1cac4 is a breaking change. V2?

enforcing linting rules across plugins in this org in the future

Is there are an lint configuration?

@jridgewell

Is there are an lint configuration?

@jridgewell

Is there are an lint configuration?

https://github.com/babel/babel/blob/master/.eslintrc

Re: eb1b72c
I'm now confused by this change,
{"Hello"}
 is treated the same as
Hello
 in React isn't it?

I'm now confused by this change,
{"Hello"}
 is treated the same as
Hello
 in React isn't it?

Literals and implied text (hello) are treated the same. That commit changes the following:

{hello}

{obj.hello}

Using the online compiler to test, hello and obj.hello can reference a React Element which will be inserted as a child. That doesn't make sense for iDOM, since you can't return an element to insert it — only calling one of the iDOM functions will do anything.

This seems like a pretty significant issue. Do you think there's any way for idom to support this case?
elementOpen('div')
renderArbitrary('text')
elementClose('div')

elementOpen('div')
renderArbitrary((elementOpen('div'), elementClosed('div'))
elementClose('div')

Working alongside https://github.com/google/incremental-dom/pull/75

This seems like a pretty significant issue. Do you think there's any way for idom to support this case?

Without a pretty big renderArbitrary and a lot of edge cases, no it's not. google/incremental-dom#75 will get us some of the way, but that'll still return a fleshed DOM node. The helper would have to scrape it for the tagName, key, attrs, and recurse into the children.
You'd be prevented from using statics, because it wouldn't be possible to determine if the particular attribute will change in the future.
I'm not even sure if that covers all of the possibilities JSX does.
var node = (elementOpen('div', key, ['class', 'test', 'key', key], id, x), elementClosed('div');
console.log(node); // =>

function renderArbitrary(node) {
    if (isElement) {
        // scrape tag, key, attributes, and recurse into children
    } else if (isTextNode) {
        text(node.data);
    } else if (isString) {
        text node.data;
    } else if (isObject) {
        _.each(node, renderArbitrary);
    }
};

I think this is an issue with the differences between the renderers (React v iDOM), not the JSX -> iDOM compilation.

Is there any way we can support the text case? This basically gets rid of the possibility of using dynamic text content minus using idom directly.

Is there any way we can support the text case?

Certainly, let me work on that.


test: migrate api unit tests to vitest

Motivation
Consolidate the testing frameworks and migrate to vitest.
Description
Migrate api unit tests to vitest.
Steps to test or reproduce

Run all tests

:tada: This PR is included in v1.13.0 :tada:


release: 0.5.2

Codecov Report

Merging #142 (21f85bc) into master (c30fe70) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #142   +/-   ##
=======================================
  Coverage   89.24%   89.24%
=======================================
  Files           7        7
  Lines         186      186
  Branches       20       20
=======================================
  Hits          166      166
  Misses         20       20

Flag
Coverage Δ

node-12.x
89.24% <ø> (ø)

node-14.x
?

node-16.x
?

Flags with carried forward coverage won't be shown. Click here to find out 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 c30fe70...21f85bc. Read the comment docs.


@ everyone exploit in event titles

When setting up an event using /events create and entering @everyone into the title option the bot will ping @everyone in the next [RSVP Event Setup] message if the bot has either admin permissions or the permission to mention @everyone.
Currently you can only avoid this by removing the permissions from the bot and/or users.

Close this issue


App Layout Shell

User Story
As a user,
I want to navigate through a well-structured application that includes a Landing Page, Dashboard, Discover page, Profile page, and Text Editor page,
So that I can easily access and manage my writing projects, discover content, and interact with my profile.
Acceptance Criteria

Landing Page
Given the user is on the Landing Page,
When they visit the page,
Then they should see:

A login/sign-up modal that can be triggered from the main page.
A hero image that captures the essence of the application.

Dashboard
Given the user is on the Dashboard page,
When they view the page,
Then they should see:

A navigation menu with links to:
-- Dashboard
-- Discover
-- Profile
A "Create New" button prominently displayed.
A section for Zen quote API with dynamically fetched content.
A "Continue Reading" section with links to ongoing or recent works.
A "Continue Writing" section with links to current writing projects.
A footer with:
-- Link to the US CW site
-- Link to Grammarly
-- Link to additional writing resources
-- Project Group License/CW

Discover
Given the user is on the Discover page,
When they view the page,
Then they should see:

A navigation menu with links to:
-- Dashboard
-- Discover
-- Profile
A section to view all text content available.
A footer with:
-- Link to the US CW site
-- Link to Grammarly
-- Link to additional writing resources
-- Project Group License/CW

Profile
Given the user is on the Profile page,
When they view the page,
Then they should see:

A navigation menu with links to:
-- Dashboard
-- Discover
-- Profile
User information including:
-- Username
-- First name
-- Last name
-- Email
-- Change password option
(Nice to have) Badges and rating information.
A user image (profile picture).
A footer with:
-- Link to the US CW site
-- Link to Grammarly
-- Link to additional writing resources
-- Project Group License/CW

Text Editor Page
Given the user is on the Text Editor page,
When they use the page,
Then they should see:

A navigation menu with links to:
-- Dashboard
-- Discover
-- Profile
A text editor section with:
-- Title field
-- Option to attach to existing work
-- Text field for writing
-- Integration with Grammarly API for text editing assistance
-- Save button
-- Edit button
-- Post button
-- Trash/Delete icon for removing content
A comments section that:
-- Pulls in any related comments specific to the chapter/content being edited
-- Includes a "View More" option for additional comments
A footer with:
-- Link to the US CW site
-- Link to Grammarly
-- Link to additional writing resources
-- Project Group License/CW


overnight wireless charging black screen

Describe the bug
Every morning after overnight wireless charging, the iPhone is blocked on black screen and I'm forced to reboot it (Volume up, Volume down, Power)

iOS Version: 12.1.1 beta
iOS Device: iPhone 8 Plus
unc0ver Version: 3.1.1

Place an "x" between the brackets if true:

[x] this is a bug others will be able to reproduce
[ ] this issue is present with all tweaks uninstalled(except for default packages) or disabled
[x] this issue is present after a rootfs restore
[x] this issue is present on the latest version of unc0ver

Have you tried the latest version? Offer details if you can. Could be a compatibility issue with a tweak installed. Try experimenting with iCleaner Pro and see what happens.

Yes it's the latest version (updated to 3.2.0)
thank you, I'll try iCleaner.

Don't work!


Instrumenting JDBC connections independently from Tomcat

Hi, partially a question, partially feature request: whats currently the recommended way to instrument JDBC connections not running on Tomcat? Custom segments?
Any thoughts on if it's possible to  provide this functionality in the SDK without depending on Tomcat?

Hi @softprops @aleksandersumowski,
Thank you for your feedback. Currently the SQL/Postgres support on the SDK is based on tomcat JDBC interceptor. Right now you could manually wrap the database calls with beginSubsegment, endSubsegment and add metadata/annotations to the subsegment to record extra information. For more instrumentation details please refer to this stack overflow question https://stackoverflow.com/questions/49638813/can-i-use-aws-xray-to-trace-mysql-queries-without-tomcat-or-spring.
Having said that, we will definitely look at supporting non-Tomcat JDBC so that the SDK automatically capture all useful information for you. Please let us know which specific package you are using so we can prioritize the work. Any PR is always welcome.

I'm personally using Postgres in a Clojure project using clojure.java.jdbc library. I've seen the stackoverflow question but I couldn't find anything like StatementInterceptor for Postgres ...

also: the programme is doing Kinesis stream processing, so it would be nice to be able to instrument Kinesis Client Library workers - eg starting a segment automatically when a processing of a record begins

For now it feels that using datasource-proxy might be the best solution atm

It looks like datasource-proxy is a good option for wrapping queries with begin/end subsegment and adding necessary metadata to it. Please let me know if you still have problem getting it work with X-Ray.
Kinesis support is in our backlog and we will do our best to deliver more features requested by customers. Please stay tuned.

FWIW: I found the TracingDataSource class in aws-xray-recorder-sdk-sql works well if anyone else is here trying to work out how to get this working with Spring.
https://stackoverflow.com/questions/60672795/how-do-i-set-up-aws-x-ray-sql-instrumentation-for-hikari-based-projects-without/60672796#60672796

Resolved by aws-xray-recorder-sdk-sql module released in v2.4.0.


No license specified in this repository

Do you have any plans to declare a license of this repository?
I'm interested in this library and I want to use your TypeScript or JavaScript codes in my project.
But there are no license specified for now, so their all rights are reserved by you.
I'm glad if you consider to add open source license like MIT.

This code is under refacting (see #1).
You can use this repo as MIT now, and I would try to review and merge the PR soon.

@y2361547758

This code is under refacting (see https://github.com/y2361547758/hca.js/pull/1).
You can use this repo as MIT now, and I would try to review and merge the PR soon.

Thank you! I understand that.


Build process should validate the PDF as single page

This issue is dependent on issue #3
The VC spec relationship diagram uses a custom page size so that when exporting as a PDF it will be one very large page for the purposes of navigating the diagram in the PDF.
Ultimately the build process should validate that the exported PDF is a single page and if it is not the build should fail. This will maintain the integrity of the PDF export and help police the growth of the diagram where adjusting the page size was overlooked.
In the future other diagrams may exist in this repo and be exported as part of the same PDF in which case the 1 page size would not apply but some finite known page size could be validated.

The map generation has been changed from manual creation in draw.io to auto-rendered via kumu.io. The change makes this issue moot.  The PDF generation is done via the kumu.io interface and renders as a single page. There is no kumu.io API for automating data imports or PDF generation.
This comment will close this issue.


[WIP] [DO NOT MERGE] The PR for DEMO purpose on 12th of March, by Studio 5 team

High-level description
!!! The PR for DEMO purpose on 12th of March, by Studio 5 team !!!
Corresponding DC/OS tickets (required)

DCOS-ID JIRA title / short description.

Related tickets (optional)

DCOS-ID JIRA title / short description.

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[ ] Change log from the last version integrated (this should be a link to commits for easy verification and review): example
[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain.
[ ] Test Results: [link to CI job test results for component]
[ ] Code Coverage (if available): [link to code coverage report]

@OleksandrBielov , let's use this PR for DEMO case on 12th of March
CC: @vadymzagorodko , @jongiddy


GitHub links still point to "ProjectReunion"

The numerous links to the GitHub project all point to the old code-name. They should be updated to point to the Windows App SDK github directly instead.

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

ID: 69b0cc3d-3662-21c9-ec5f-9793616ea5fc
Version Independent ID: 96289e4e-417b-28b9-8f1c-d561e3afab22
Content: Build desktop Windows apps with the Windows App SDK - Windows apps
Content Source: hub/apps/windows-app-sdk/index.md
Product: reunion
Technology: get-started
GitHub Login: @mcleanbyron
Microsoft Alias: mcleans

Thanks for your feedback. These links have now been updated to point directly to the latest GitHub repo URL.


In cursor mode cursor seems to get stuck at images

Thank you for making this awesome product! On linux at least the cursor seems to get stuck whenever it encounters an image. The only way i found to unstuck is to use mouse to click elsewhere.

This will be in 0.30.0.


Kong IP-Restriction Plugin is not working behind AWS Network Load Balancer

Kong Version: 2.6.3
EKS Version: 1.23
Load Balancer Type: Network Load Balancer (L4)
Current Issue:
I have deployed Kong Helm Chart in EKS cluster on AWS.
I have my application deployed as well in the same cluster which is serviced using Kong Gateway.
My requirement is that only certain IP ranges should be able to access the application.
I enabled ip-restriction plugin globally using KongClusterPlugin.
To test, I added only my IP address but when I try to access the application I see:

1
I added the IP of aws-node pods from the cluster in the plugin list, I can access the application.  But it also allows everyone to access that is it applies no restriction at all.
2
I followed this document as suggested in other issues reported similar to mine:
https://docs.konghq.com/kubernetes-ingress-controller/1.3.x/guides/preserve-client-ip/
Note:- I cannot set service.spec.externalTrafficPolicy to Local as am not creating service of type LoadBalancer.
I tried following Proxy Protocol method since am using L4 load balancer.  I added the below environment variables in Kong:
  KONG_TRUSTED_IPS: ${VPC_CIDR}
  KONG_REAL_IP_HEADER: "proxy_protocol"
  KONG_REAL_IP_RECURSIVE: "on"
  KONG_PROXY_LISTEN: "<IP_ADDRESS>:8000 proxy_protocol, <IP_ADDRESS>:8443 ssl proxy_protocol"

After adding this configuration, when I hit the application, I still see Your IP address is not allowed.
When I checked the load balancer target groups, it didn't have proxy protocol v2 as enabled.  I added the annotation service.beta.kubernetes.io/aws-load-balancer-proxy-protocol: "*" but even then it didn't get enabled when the load balancer is created.
3
In addition to method 2, I enabled proxy protocol v2 manually for the target groups and disabled 'preserve client IP address'.
Now when I hit the application, I get 400 Bad request for http and Error: SSL connect error for https
Expected Behavior
If my IP is listed in ip-restriction plugin, then I should be able to access the application.

Dear contributor,
We're closing this issue as there hasn't been any update to it for a long time. If the issue is still relevant in the latest version, please feel free to reopen it. We're more than happy to revisit it again.
Please have a look at our pledge to the community for more information.
Sincerely,
Kong Gateway Team


Plot muscles between [0, 1]

I really like the idea, I will push something to make it a little more generic!


Please explain --pretransform-ckpt-path

Which ckpt should I use in  --pretransform-ckpt-path to train my model from scratch? I have tried weights from DAC but without success. The latest version uses oobleck as an encoder, does it need some kind of pretransform?

Yes, this is equivalent to the VAE part in Stable Diffusion, you need to train it yourself. However there is a open source version just released, maybe you could try the VAE from this: https://huggingface.co/stabilityai/stable-audio-open-1.0


Removing GetSheet implementation with nulls

@timothodge helping me build my project today discovered that GetSheet implementation with all the nulls implemented creates ambiguity for the other implementations that don't have the nulls implemented. This MR removes the other implementations that creates this ambiguity!

Example of program.cs sample to GetSheet without passing nulls to the method

Example of running the project with the new changed GetSheet


Sbt assembly: Error on opening database: the engine 'remote' was not found.

OrientDB Version: 2.2.2
Java Version: 8
OS: Centos
Expected behavior
should connect to the remote database.
Actual behavior
Error on opening database: the engine 'remote' was not found.
Steps to reproduce
val uri: String = "remote:XXX.XX.XX.XX/database/MYTEST"
val username: String = "root"
val password: String = "123"
val factory: OrientGraphFactory = new OrientGraphFactory(uri, username, password)
graph = factory.getTx

I use sbt in order to assembly a fat jar file. The orient..-client jar is included. However, I still get the error "Error on opening database: the engine 'remote' was not found".
This is an extract from build.sbt:
lazy val commonSettings = Seq(
  organization := "org.test",
  version := "0.1",
  scalaVersion := "2.11.8",
  assemblyOption in assembly := (assemblyOption in assembly).value.copy(includeScala = true),
  assemblyMergeStrategy in assembly := {
    case PathList("META-INF", xs @ _*) => MergeStrategy.discard
    case PathList("reference.conf") => MergeStrategy.concat
    case x => MergeStrategy.first
  }
)

val orientDBGraph = "com.orientechnologies" % "orientdb-graphdb" % "2.2.2"
//...

lazy val standalone = (project in file("./standalone"))
  .settings(
    commonSettings,
    libraryDependencies ++= Seq(sparkSQL, sparkGraphx, sparkMLLib,
      orientDBGraph, spingoCore, scalaHttp,
      spray, spingoCore, spingoPlayJson, spingoJson4s,
      spingoAirbrake, spingoAkkaStream, elasticSpark,
      jacksonScala,jacksonDataformat,jacksonCore,
      jacksonAnnotations,jacksonDatabind
    )
  )
dependencyOverrides += "com.typesafe.akka" %% "akka-stream" % akkaVersion
dependencyOverrides += "com.fasterxml.jackson.core" % "jackson-core" % "2.8.9"
dependencyOverrides += "com.fasterxml.jackson.core" % "jackson-databind" % "2.8.9"
dependencyOverrides += "com.fasterxml.jackson.core" % "jackson-annotations" % "2.8.9"
dependencyOverrides += "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.8.9"
dependencyOverrides += "com.fasterxml.jackson.module" % "jackson-module-paranamer" % "2.8.9"

Hi @LianaN,
The remote engine is part of orientdb-client jar that should be include by the orientdb-graphdb  ( the hierarchy is orientdb-graphdb -> orientdb-server -> orientdb-client) can you double check that the dependency is resolved correctly ?
Regards

Hi @LianaN
if you are doing a single executable jar consider using a solution that support Resource append. With maven we advice this
https://orientdb.com/docs/last/Tutorial-Installation.html#building-a-single-executable-jar-with-orientdb
Thanks

Hi @maggiolo00,
This link leads to a non-existing page. Could you please update it?
Thanks.


Backend Get q&A using ID

Describe the bug
There is a bug in back end related to req.body but it is a get route. beacuse of it it doesn't returning the data.
Expected behavior
get Question and answer by id work properly.
Additional context
Add any other context about the problem here.
Have you read the Code of Conduct?
Write your answer here.
yes.

@Kajol-Kumari  can you please assign this to me.


Crash due to wgpu during startup on Wayland

Bevy version
v0.14.0
Relevant system information

Rust: v1.82.0-nightly (5f6b9a922 2024-07-19)
OS: Arch Linux with kernel v6.10.1-arch1-1

What you did
App::new().add_plugins(DefaultPlugins).run()

What went wrong
2024-07-26T21:40:39.730796Z ERROR wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
    setup_loader_term_phys_devs:  Failed to detect any valid GPUs in the current config
2024-07-26T21:40:39.730807Z ERROR wgpu_hal::vulkan::instance:     objects: (type: INSTANCE, hndl: 0x5d5f80d8b9d0, name: ?)
2024-07-26T21:40:39.730810Z ERROR wgpu_hal::vulkan::instance: enumerate_adapters: Initialization of an object has failed
2024-07-26T21:40:39.731380Z  INFO bevy_render::renderer: AdapterInfo { name: "NV172", vendor: 65541, device: 0, device_type: Other, driver: "OpenGL", driver_info: "4.3 (Compatibility Profile) Mesa 24.1.4-arch1.2", backend: Gl }
2024-07-26T21:40:39.780780Z  WARN bevy_pbr::ssao: ScreenSpaceAmbientOcclusionPlugin not loaded. GPU lacks support: TextureFormat::R16Float does not support TextureUsages::STORAGE_BINDING.
2024-07-26T21:40:39.780925Z  INFO bevy_winit::system: Creating new window "App" (Entity { index: 0, generation: 1 })
2024-07-26T21:40:39.781217Z  INFO winit::platform_impl::linux::x11::window: Guessed window scale factor: 1
2024-07-26T21:40:39.791330Z ERROR wgpu_core::device::global: surface configuration failed: incompatible window kind

Additional information
     description: VGA compatible controller
       product: GA102 [GeForce RTX 3080 Ti]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       logical name: /dev/fb0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom fb
       configuration: depth=32 driver=nouveau latency=0 mode=2560x1440 resolution=2560,1440 visual=truecolor xres=2560 yres=1440
       resources: iomemory:400-3ff iomemory:440-43f irq:243 memory:84000000-84ffffff memory:4000000000-43ffffffff memory:4400000000-4401ffffff ioport:5000(size=128) memory:85000000-8507ffff

Let me know if anything else is needed!

Looks like winit is using the X11 backend. Maybe something with XWayland is broken on your machine. What happens when you enable bevy's wayland feature?

I'll try it and get back to you in a week or so, I'm away from my desktop ATM.
But even if it solves the issue, that would mean I need to provide two binaries for Linux distribution which is not ideal.

That's not how that works. You can have both features enabled. Bevy will prefer Wayland but seamlessly fall back to X11 as needed.

Oh, okay I'll try and let you know then.
Btw, why isn't it enabled by default then?

Because there has historically always been some kind of problem on Wayland affecting a portion of users. Sometimes it's our fault (https://github.com/gfx-rs/wgpu/issues/5505), sometimes not (https://github.com/gfx-rs/wgpu/issues/4775). On the other hand though, there have also been issues that were solved by turning the Wayland feature on (maybe yours is one of those), so it's hard to say.
I will personally try to push for Wayland-By-Default once https://github.com/gfx-rs/wgpu/issues/5505 gets resolved. Hopefully nothing else "major" crops up until then.

Ohh you don't have a Vulkan driver. Wayland is currently broken on OpenGL (as linked in my previous comment). You might want to install vulkan-noveau given you're not using the proprietary drivers?

Installing the driver fixed the issue :partying_face:
Though if there is a way to improve the error messages, they should be improved IMO. Like detecting OpenGL is being tried to be used in Wayland and logging an error saying it's not supported.
Thanks!


Adding new / old TS0011 and TS0013 version.

Putting in comments for 2 family and adding TS0011 and TS0013 to the current TS0012 version.
Looks like have making changing of other classes but i have moving then together in family:
# NoNeutralSwitch family = without tuya cluster and Identify.
# Switch_2 family = Normal NoNeutralSwitch (without tuya cluster) and with Identify.

Other with tuya classes is not touched.
Fixes: https://github.com/zigpy/zha-device-handlers/issues/2090

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

7 of 7 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 83.558%

Totals

Change from base Build<PHONE_NUMBER>:
0.01%

Covered Lines:
6769

Relevant Lines:
8101

💛  - Coveralls

User feedback from the current version in the PR https://github.com/zigpy/zha-device-handlers/issues/2090#issuecomment-1381752161.

Codecov Report
Base: 83.54% // Head: 83.55% // Increases project coverage by +0.01% :tada:

Coverage data is based on head (1fb77ea) compared to base (cec721e).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #2091      +/-   ##
==========================================
+ Coverage   83.54%   83.55%   +0.01%
==========================================
  Files         251      251
  Lines        8095     8101       +6
==========================================
+ Hits         6763     6769       +6
  Misses       1332     1332

Impacted Files
Coverage Δ

zhaquirks/tuya/ts001x.py
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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

See https://github.com/zigpy/zha-device-handlers/issues/2090#issuecomment-1383332911
Maybe a small change is still needed?

Not small its need one new device class then its one new device family (without time cluster).

I see. So a separate PR for that?

I hate rebasing its only make problem so i preferring putting in this then have getting it working OK in the issue but i can doing on new if you like.

Wasn't sure what you want to do. Just do whatever is best for you 👍

Thanks D


Configure Renovate to update release branches

Description
See #755. I hope this config enable updates on main and v* but only for dockerfiles or github-actions. Also removed cdnurl as it was from OG.
Testing instructions
Can't really validate what it will do until merged. It passed npx --yes --package renovate -- renovate-config-validator. It is also  possible to run locally using LOG_LEVEL=debug npx renovate --platform=local --repository-cache=reset > output.txt but it doesn't take into account the branches (see https://docs.renovatebot.com/modules/platform/local/) so the best I could do is test it while deleting the branch matching to ensure it either detected an update or not based on the rest of the config.

[ ] Review code
[ ] Check Actions build

Agile board tracking
Closes #755

Harbor is having an issue at the moment so the docker step fails.

Harbor still has some issues, will merge anyway as didn't need to run for this change anyway.


GitHub API dataCorrupted error

Trying to get the comments on a PR.
Code:
let group = DispatchGroup()
group.enter()
_ = danger.github.api.issueComments(
    owner: "foo",
    repository: "bar",
    number: danger.github.issue.number) { (response: Response<[Comment]>) in
    switch response {
    case .success(let comments):
            // do stuff
    case .failure(let error):
            print("[ERROR]: ", error)
    }
    group.leave()
)
group.wait()

Issues:

I needed to add the DispatchGroup logic otherwise it seemed to end before getting the response back from the Octokit
I get: [ERROR]: dataCorrupted(Swift.DecodingError.Context(codingPath: [], debugDescription: "The given data was not valid JSON.", underlyingError: Optional(Error Domain=NSCocoaErrorDomain Code=3840 "Invalid value around character 1." UserInfo={NSDebugDescription=Invalid value around character 1.})))

Not really sure how to even debug. Any idea why this is happening/how to fix?

The issue comment function comes from https://github.com/nerdishbynature/octokit.swift so that is probably a good starting point.
The dependency was recently updated https://github.com/danger/swift/pull/417, but to doesn't seem that this change is related to the issue.


element.click() in Firefox doesn't work when element is outside of viewport

Till now protractor 2.x.x Firefox, unlike Chrome, could find and click elements that were outside of the viewport, which was a huge advantage over Chrome. However, after upgrading to 3.0.0 it's no longer the case. Additionally, unlike Chrome, it doesn't raise any error when I call element.click() on an element that is outside of the viewport, it just doesn't do anything. I need to add element.scrollIntoView() before every element.click() call, but it gets more complicated if I e.g. have any element with position fixed at the top, as it can cover the element I tried to scroll to and it won't work anyway.
I'm not sure if this change was introduced in Protractor 3.0.0 itself or in the new webdriver 2.48.2.

It's gotta be the new version of webdriver.  You'll have to talk to them


Romanian locale update

cc @bumbu please review

Updated, ready for merge
@bumbu, multumesc pentru review :)

Looks good. Merging.


[update-checkout] Windows dependencies weren't checked out

Is your feature request related to a problem? Please describe.
A standard Swift on Windows toolchain builds ICU, SQLite 3, libxml2 and curl (zlib) from source, but these repositories aren't checked out by default.
Describe the solution you'd like
update-checkout should be able to check out all the repositories that are necessary to build Swift, instead of requiring manual clones  or fetching while building.
Add these repositories to update-checkout-config.json. ICU in Windows toolchain is newer than that on Linux, and possibly we can bump Linux version or alias it as icu-windows. SQLite requires a slightly different way of building, which may result in additional build tools to be used.
Describe alternatives you've considered
vcpkg can be used for building and integrating libraries with CMake, but it's not used in standard build process yet.
Additional context
Add any other context or screenshots about the feature request here.

Is this solved by https://github.com/apple/swift/pull/69555? @compnerd


[web] Fix paths fetched by flutter.js

flutter.js fetches main.dart.js and flutter_service_worker.js using relative paths. That works in the default case of most flutter web apps, but when an app uses <base href="/foo/"> or use the PathUrlStrategy, things break.
This PR adjusts all requests made by flutter.js to take <base href="..."> into account.
Fixes https://github.com/flutter/flutter/issues/116360

I extracted this PR out of https://github.com/flutter/flutter/pull/117691 because it looks like that one will take a while to land. So let's fix the actual issue now, and worry about improving the ergonomics of generated files later.

Hi @ditman @mdebbar quick question, is this fix available on the stable channel? I'm having problems with this https://github.com/flutter/flutter/issues/119492 Thanks in advance.

Hello friends, ty for your hard work with Flutter....I just wanted to ask if u have already a date of release for this commit on the stable channel? My web project isn't working with flutter 3.7.0 due to this issue (as reported in https://github.com/flutter/flutter/issues/116360 too).

Hello friends, ty for your hard work with Flutter....I just wanted to ask if u have already a date of release for this commit on the stable channel? My web project isn't working with flutter 3.7.0 due to this issue (as reported in #116360 too).

Neither mine

@leynier @RamiroGarrido @Sipioteo there has been a stable release very recently (last week), so it's unlikely that this will get to stable until the next release (in about 3 months), unless it goes through the cherry-pick process.
Before we even think of cherry-picking: Have you verified that what's currently in channel master fixes your issues?

Hello friends, ty for your hard work with Flutter....I just wanted to ask if u have already a date of release for this commit on the stable channel? My web project isn't working with flutter 3.7.0 due to this issue (as reported in https://github.com/flutter/flutter/issues/116360 too).

@leynier @RamiroGarrido @Sipioteo there has been a stable release very recently (last week), so it's unlikely that this will get to stable until the next release (in about 3 months), unless it goes through the cherry-pick process. Documentation.
Before we even think of cherry-picking: Have you verified that what's currently in channel master fixes your issues?

Ty for your response ditman!...I wasn't sure to downgrade to my previous flutter version, but now I am.... to answer your question: I updated my web project from 3.3.10 to 3.7.0 three days ago, so I'm sure this issue it's not fixed yet on the stable channel...Blessings

I wasn't sure to downgrade to my previous flutter version, but now I am...

Have you considered upgrading to flutter master, rather than downgrading to 3.3?

Have you considered upgrading to flutter master, rather than downgrading to 3.3?

I thought about it, but I rather wait since the master channel may have broken code, according to the wiki (https://github.com/flutter/flutter/wiki/Flutter-build-release-channels)...I think is better to avoid a bug on my production environment...ty for your suggestion though...maybe the other people reading this thread might give it a shot and report back to us...

@leynier @RamiroGarrido @Sipioteo there has been a stable release very recently (last week), so it's unlikely that this will get to stable until the next release (in about 3 months), unless it goes through the cherry-pick process. Documentation.
Before we even think of cherry-picking: Have you verified that what's currently in channel master fixes your issues?

Yeah, I tried. But some of the packages are not compatibles with the master version (missing a vsync param into an animated widget, I don't remember which one right now).
I have to use an older version of flutter right now, so if it's possible to cherry pick it would be a really great move.
Thank you!

I have found a temporary solution.
Put the new flutter.js file into your web folder (in the root of the project).
When you will build it will replace the generated one and it will work (I don't think it work well with deferred but you can try.)
Best to all, waiting for the official integration.

Workaround for every project:

apply changes to flutter\packages\flutter_tools\lib\src\web\file_generators\flutter_js.dart and save
remove flutter\bin\cache\flutter_tools.stamp
run flutter doctor to Rebuild flutter tool

When new stable is available:
run git reset --hard in flutter folder otherwise it won't find new releases.

As far as I can tell, the latest Flutter stable release that includes this bug has broken every Flutter web app that uses paths?
This seems like it should qualify for an extremely urgent cherry pick into stable?
For anyone else coming across this, here's a complete fix:

Get my working flutter.js from master: https://gist.github.com/stx/2b121f94388bc0f06c8a743a18233ac1
Put this file at web/flutter_override.js
In web/index.html, change <script src="flutter.js" defer></script> to <script src="/flutter_override.js" defer></script>

@stx yeah, I'll bring this up to the next cherry-pick. (/cc @mdebbar)

@stx have you tried to pass the correct entrypointUrl and serviceWorkerUrl to the loadEntrypoint call, as described here?
https://github.com/flutter/flutter/issues/116360#issuecomment-1364181861
I'd say passing /YOUR_APP_BASE/main.dart.js and /YOUR_APP_BASE/flutter_service_worker.js?v= should fix the issues without needing to change the flutter.js file itself.

@ditman I didn't see that solution. Yep, works nicely!

Thanks everyone for the feedback. I filed an issue to cherry-pick this PR into the stable channel: https://github.com/flutter/flutter/issues/120197

Updated the description at the top answering the FAQ about this being cherry-picked, and how to work-around this until the fix arrives.

As far as I can tell, the latest Flutter stable release that includes this bug has broken every Flutter web app that uses paths?
This seems like it should qualify for an extremely urgent cherry pick into stable?
For anyone else coming across this, here's a complete fix for the stable branch that will work on CI systems and without having to mess with stable/master switching:
In web/index.html, change this:
        _flutter.loader.loadEntrypoint({
          serviceWorker: {
            serviceWorkerVersion: serviceWorkerVersion,
          }
        })

to this:
      _flutter.loader.loadEntrypoint({
        entrypointUrl: "/main.dart.js",
        serviceWorker: {
          serviceWorkerVersion: serviceWorkerVersion,
          serviceWorkerUrl: "/flutter_service_worker.js?v=",
        },
      );

Taken from #116360 (comment).

It is not working when I am using "PathUrlStrategy()".

@Frank3K have you figured out how to use your solution within flutter 3.22?

@Frank3K your code doesn't work if you refresh the page. Flutter still tries to find main.dart.js under the path you're currently in instead of looking at the base.
This code works for me even after refreshing the page:
<script>
    {{flutter_js}}
    {{flutter_build_config}}
    const serviceWorkerVersion = {{flutter_service_worker_version}};

    window.addEventListener('load', () => {
      _flutter.loader.loadEntrypoint({
        entrypointUrl: "/main.dart.js",
        serviceWorker: {
          serviceWorkerVersion: serviceWorkerVersion,
          serviceWorkerUrl: "/flutter_service_worker.js?v=",
        },
        onEntrypointLoaded: async (engineInitializer) => {
          const appRunner = await engineInitializer.initializeEngine({
              hostElement: document.querySelector("#app-wrapper"),
          });
          appRunner.runApp();
        }
      });
    });
  </script>

But I haven't been able to replicate the same behavior when migrating from loadEntryPoint to load.
entrypointUrl seems to just have ceased to exist with no alternative 🤷♂

Hi @cerealexx @Frank3K. I'm having the same issue mentioned here, but sadly I'm at a loss as to what file I need to be modifying with your supplied code. Could you please tell me which one it is? Thanks, Andy.

This is the flutter_bootstrap.js file.

@MirzaCickusic For 3.22 this should work:
{{flutter_js}}
{{flutter_build_config}}

const serviceWorkerVersion = {{flutter_service_worker_version}};

let baseUri = document.baseURI;
if (baseUri.endsWith('/')) {
    baseUri = baseUri.slice(0, -1);
}

_flutter.loader.load({
    config: {
      canvasKitBaseUrl: `${baseUri}/canvaskit/`,
    },
    serviceWorkerSettings: {
      serviceWorkerVersion: serviceWorkerVersion,
      serviceWorkerUrl: `${baseUri}/flutter_service_worker.js?v=${serviceWorkerVersion}`,
    },
    onEntrypointLoaded: function (engineInitializer) {
      engineInitializer.initializeEngine().then(function (appRunner) {
        appRunner.runApp();
      });
    },
});

FWIW, this worked for me however I did have to downgrade Flutter from v3.24.0 to v3.22.3


chore(deps): Bump rules_java version from ? to 7.3.2

Motivated by https://github.com/bazelbuild/bazel/issues/18743, in the context of https://github.com/salesforce/bazel-vscode-java/issues/85.

This passes, BUT ... https://github.com/bazelbuild/rules_java/issues/159 which I found from https://github.com/bazelbuild/rules_jvm_external/issues/1013 which I'm hitting in https://github.com/enola-dev/enola/pull/426 seems to say this rules_java version shouldn't be used (even though it appears to work, here; but not on Java 21) with Bazel 6.4.0 instead of 7.0.0... I'll see if switching to using it in MODULE.bazel instead of WORKSPACE.bazel makes some error appear, as that issue says it apparently will.

Ah yes, now it fails:
$ bazelisk test //...
ERROR: Bazel version 6.4.0 is not compatible with module<EMAIL_ADDRESS>(bazel_compatibility: [>=7.0.0])
ERROR: Error computing the main repository mapping: Bazel compatibility check failed

That makes this blocked on #390...

That makes this blocked on https://github.com/enola-dev/enola/pull/390..

Actually, I've cherry-picked this into #390, that's easier than keeping this separate here.


module:Twitter': uninitialized constant Twitter::Grape (NameError)

hi i am trying to use your sample code first i installed the gem grape and then i created a directory and created a file name as grape_sample.rb with code
module Twitter
class API < Grape::API
version 'v1', :using => :header, :vendor => 'twitter'
format :json

helpers do
  def current_user
    @current_user ||= User.authorize!(env)
  end

  def authenticate!
    error!('401 Unauthorized', 401) unless current_user
  end
end

resource :statuses do

  desc "Return a public timeline."
  get :public_timeline do
    Status.limit(20)
  end

  desc "Return a personal timeline."
  get :home_timeline do
    authenticate!
    current_user.statuses.limit(20)
  end

  desc "Return a status."
  params do
    requires :id, :type => Integer, :desc => "Status id."
  end
  get ':id' do
    Status.find(params[:id])
  end

  desc "Create a status."
  params do
    requires :status, :type => String, :desc => "Your status."
  end
  post do
    authenticate!
    Status.create!({
      :user => current_user,
      :text => params[:status]
    })
  end

  desc "Update a status."
  params do
    requires :id, :type => String, :desc => "Status ID."
    requires :status, :type => String, :desc => "Your status."
  end
  put ':id' do
    authenticate!
    current_user.statuses.find(params[:id]).update({
      :user => current_user,
      :text => params[:status]
    })
  end

  desc "Delete a status."
  params do
    requires :id, :type => String, :desc => "Status ID."
  end
  delete ':id' do
    authenticate!
    current_user.statuses.find(params[:id]).destroy
  end

end

end
end
and config.ru with code
equire 'rubygems'
require 'rack'
require './grape_sample'
run Twitter::API
and then run command
rackup config.ru
and getting error
home/ritesh/rails/grape_sample.rb:2:in <module:Twitter>': uninitialized constant Twitter::Grape (NameError) 	from /home/ritesh/rails/grape_sample.rb:1:in <top (required)>'

I had the same problem.When I add require 'grape' in my rb file,I get this:
rackup config.ru
/Library/Ruby/Gems/2.0.0/gems/activesupport-4.2.0/lib/active_support/ordered_hash.rb:3:in <top (required)>': undefined method add_builtin_type' for Psych:Module (NoMethodError)
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:69:in require' 	from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:69:in require'
from /Library/Ruby/Gems/2.0.0/gems/grape-0.10.1/lib/grape.rb:19:in <top (required)>' 	from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:128:in require'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:128:in rescue in require' 	from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:39:in require'
from /Users/lpy/automan/test.rb:1:in <top (required)>' 	from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:54:in require'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:54:in require' 	from /Users/lpy/automan/config.ru:3:in block in '
from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/builder.rb:55:in instance_eval' 	from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/builder.rb:55:in initialize'
from /Users/lpy/automan/config.ru:in new' 	from /Users/lpy/automan/config.ru:in '
from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/builder.rb:49:in eval' 	from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/builder.rb:49:in new_from_string'
from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/builder.rb:40:in parse_file' 	from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/server.rb:299:in build_app_and_options_from_config'
from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/server.rb:208:in app' 	from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/server.rb:336:in wrapped_app'
from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/server.rb:272:in start' 	from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/lib/rack/server.rb:147:in start'
from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.0/bin/rackup:4:in <top (required)>' 	from /usr/bin/rackup:23:in load'
from /usr/bin/rackup:23:in `'
config.ru:
require 'rack'
require 'rubygems'
require File.dirname(FILE) + '/test'
run Twitter::API
test.rb:
require 'grape'
module Twitter
class API < Grape::API
version 'v1', using: :header, vendor: 'twitter'
format :json

helpers do
  def current_user
    @current_user ||= User.authorize!(env)
  end

  def authenticate!
    error!('401 Unauthorized', 401) unless current_user
  end
end

resource :statuses do

  desc "Return a public timeline."
  get :public_timeline do
    Status.limit(20)
  end

  desc "Return a personal timeline."
  get :home_timeline do
    authenticate!
    current_user.statuses.limit(20)
  end

  desc "Return a status."
  params do
    requires :id, type: Integer, desc: "Status id."
  end
  route_param :id do
    get do
      Status.find(params[:id])
    end
  end

  desc "Create a status."
  params do
    requires :status, type: String, desc: "Your status."
  end
  post do
    authenticate!
    Status.create!({
      user: current_user,
      text: params[:status]
    })
  end

  desc "Update a status."
  params do
    requires :id, type: String, desc: "Status ID."
    requires :status, type: String, desc: "Your status."
  end
  put ':id' do
    authenticate!
    current_user.statuses.find(params[:id]).update({
      user: current_user,
      text: params[:status]
    })
  end

  desc "Delete a status."
  params do
    requires :id, type: String, desc: "Status ID."
  end
  delete ':id' do
    authenticate!
    current_user.statuses.find(params[:id]).destroy
  end

end

end
end

@funny-code Your problem is different. I found https://github.com/tenderlove/psych/issues/181 too. Care to open a new issue and maybe provide a repro?


Adding Cyclic Sort Algo In Java

Cylic Sort is a sorting algorithm ideally used if the question
reads "given range of numbers from 0 to N or 1 to N"
Approach used :
Check if the number is in the correct index, if not swap, and then continue iterating.

Cylic Sort is a sorting algorithm ideally used if the question
reads "given range of numbers from 0 to N or 1 to N"
Approach used :
Check if the number is in the correct index, if not swap, and then continue iterating.

Cylic Sort is a sorting algorithm ideally used if the question
reads "given range of numbers from 0 to N or 1 to N"
Approach used :
Check if the number is in the correct index, if not swap, and then continue iterating.

Is that fine? @Kumar-laxmi

Or should I create a new pr?

Done could you check

@VishalS-HK Why did you close this PR??


oc debug node fails because support-tools image unavailable

Describe the bug

$ ./oc debug node/gca-dev4-g77cl-master-0.c.gca-dev-00.internal
Starting pod/gca-dev4-g77cl-master-0cgca-dev-00internal-debug ...
To use host binaries, run chroot /host
Removing debug pod ...
error: Back-off pulling image "registry.redhat.io/rhel7/support-tools"
$
Version

4.6-2020-10-13-164102
How reproducible

100%
Log bundle

I didn't wait long enough into the cluster startup process.  After a little while this problem resolved itself.


⚠ Bofrost.nl has degraded performance

In b93636c, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 2266 ms

Resolved: Bofrost.nl performance has improved in 56dbebe.


refactor(#2):Refactory tier and first implementation of Sequelize (Model: Tags)

Notice: this PR is an epic. So it's the first implementation of Sequelize and refactory of tiers of the project.
What was done in this PR?

Splited responsibility of model (Repository, only get data and Model for entities)
Moved some bussines rules to Service tier (for example, create JWT token it isn't responsibility of model, so I moved to service)
Implementation of Sequelize class
Implementation first repository with Sequelize (Tags)
Implementation the relation N-M with Tags and PostTags
Initial setup of all models in Sequelize of all entities of the project

What is need for future with Sequelize?
I recommend split the implementation of Sequelize (because this, I implementation the first entity only in this PR). It's because will be more easy test the conversion of SQL to Sequelize in each PR.
So, my suggestion for next steps:

Open a new issue for each other entity that is need to convert SQL to Sequelize in repository (Answers, Posts, Comments, Users)
After finally all convert of repositories to Sequelize, it's need create the Migrations. Open a PR for it, as well.

Important: All endpoints was tested before open this PR, but will be good test all operations before merge.

@fabioalmeida100
Okay, so first of all great job!!

The splitting up part you said seems fine to me, and I think for that you should create the issues, as it would easier for you to plan and segregate your work. Sounds good?

Another proposal I have is that do you I should direct all the PRs of yours to a certain branch, like for say feature/sequelize, in which all your PRs related to sequelize and docker will be merged to, in frontend and backend both, and then after the whole docker setup alongwith the complete sequelization is done we can do a major update from feature/sequelize to master. What are your thoughts on this?

@fabioalmeida100 New branch feature/sequelize has been made

@fabioalmeida100
In this step I am getting this

After that I used the docker engine to run it from there using the default settings and it got exited instantly and then in the console the error I got was for mysql

You need set up you .env @Mayank0255 . Show me you .env file... But, I think better continue this discuss in PR about Docker implementation...

@fabioalmeida100
Okay, so first of all great job!!

The splitting up part you said seems fine to me, and I think for that you should create the issues, as it would easier for you to plan and segregate your work. Sounds good?

Another proposal I have is that do you I should direct all the PRs of yours to a certain branch, like for say feature/sequelize, in which all your PRs related to sequelize and docker will be merged to, in frontend and backend both, and then after the whole docker setup alongwith the complete sequelization is done we can do a major update from feature/sequelize to master. What are your thoughts on this?

A1: for next months I can't work active in this project. My next free period for work active in this project is next year (I guess). So my suggestion is for you go ahead with this implementation (reviews, feedback and merge) and open the issues for other devs help improve the project. The implementation is ready to merge for master (is ready and work fine).
The refactory was done for make easy next conversion for Sequelize. The next changes will be only each repository (maybe in some models), so it's more easy for next contributes ;-)
A2: the implementation of Docker support don't depend on any other implementation. You can go ahead with merge for master if you want.
But, what I think about your suggestion with branch: I think it good for project organization. But, when you create another branch you need more attention for managing the sync in future and conflicts can happen... It's a trade-off that I would not add, because this implementation is ready and don't break the project.
You can have your project with Sequelize and raw queries, and it works fine. As the project is in evolution, other devs will be improving and convert other queries in other repositories.
I would do like this!
Ps: I'll follow this PR (reviews and feedback) till finish it.

This PR close #4, as well :-)

Opened all issues for convert raw queries to Sequelize:

https://github.com/Mayank0255/Stackoverflow-Clone-Backend/issues/12
https://github.com/Mayank0255/Stackoverflow-Clone-Backend/issues/13
https://github.com/Mayank0255/Stackoverflow-Clone-Backend/issues/14
https://github.com/Mayank0255/Stackoverflow-Clone-Backend/issues/15

Ps: the tags.repository is ready in this PR, here.

You need set up you .env @Mayank0255 . Show me you .env file... But, I think better continue this discuss in PR about Docker implementation...
This log shows that you don't set up your MySql host correctly.

Sure let's continue this discussion over there

@fabioalmeida100 New branch feature/sequelize has been made

@fabioalmeida100 What do you think about this?

@fabioalmeida100
Okay, so first of all great job!!

The splitting up part you said seems fine to me, and I think for that you should create the issues, as it would easier for you to plan and segregate your work. Sounds good?

Another proposal I have is that do you I should direct all the PRs of yours to a certain branch, like for say feature/sequelize, in which all your PRs related to sequelize and docker will be merged to, in frontend and backend both, and then after the whole docker setup alongwith the complete sequelization is done we can do a major update from feature/sequelize to master. What are your thoughts on this?

A1: for next months I can't work active in this project. My next free period for work active in this project is next year (I guess). So my suggestion is for you go ahead with this implementation (reviews, feedback and merge) and open the issues for other devs help improve the project. The implementation is ready to merge for master (is ready and work fine).
The refactory was done for make easy next conversion for Sequelize. The next changes will be only each repository (maybe in some models), so it's more easy for next contributes ;-)
A2: the implementation of Docker support don't depend on any other implementation. You can go ahead with merge for master if you want.
But, what I think about your suggestion with branch: I think it good for project organization. But, when you create another branch you need more attention for managing the sync in future and conflicts can happen... It's a trade-off that I would not add, because this implementation is ready and don't break the project.
You can have your project with Sequelize and raw queries, and it works fine. As the project is in evolution, other devs will be improving and convert other queries in other repositories.
I would do like this!
Ps: I'll follow this PR (reviews and feedback) till finish it.

Yes, this makes sense, will then merge this to master directly and then leave the other issues for the complete conversion to me, you and other devs as you said you are not free for a while, so I will remove you as the assignee of those particular split issues you just created so that other devs don't get repelled back.

@fabioalmeida100
Okay, so first of all great job!!

The splitting up part you said seems fine to me, and I think for that you should create the issues, as it would easier for you to plan and segregate your work. Sounds good?

Another proposal I have is that do you I should direct all the PRs of yours to a certain branch, like for say feature/sequelize, in which all your PRs related to sequelize and docker will be merged to, in frontend and backend both, and then after the whole docker setup alongwith the complete sequelization is done we can do a major update from feature/sequelize to master. What are your thoughts on this?

A1: for next months I can't work active in this project. My next free period for work active in this project is next year (I guess). So my suggestion is for you go ahead with this implementation (reviews, feedback and merge) and open the issues for other devs help improve the project. The implementation is ready to merge for master (is ready and work fine).
The refactory was done for make easy next conversion for Sequelize. The next changes will be only each repository (maybe in some models), so it's more easy for next contributes ;-)
A2: the implementation of Docker support don't depend on any other implementation. You can go ahead with merge for master if you want.
But, what I think about your suggestion with branch: I think it good for project organization. But, when you create another branch you need more attention for managing the sync in future and conflicts can happen... It's a trade-off that I would not add, because this implementation is ready and don't break the project.
You can have your project with Sequelize and raw queries, and it works fine. As the project is in evolution, other devs will be improving and convert other queries in other repositories.
I would do like this!
Ps: I'll follow this PR (reviews and feedback) till finish it.

Yes, this makes sense, will then merge this to master directly and then leave the other issues for the complete conversion to me, you and other devs as you said you are not free for a while, so I will remove you as the assignee of those particular split issues you just created so that other devs don't get repelled back.

Top @Mayank0255 ! You're the best, my friend! Nice man \o/

@fabioalmeida100 Haha thanks you are better :D


About  Hexagon at the junction of different cities

Hi,there,
I'm curious about the relationship between hexagon and city. 1 to N? or N to N?  Can each hexagon belong to a different city.

I think there's a bit of a confusion of what H3 does?
At res 0, a single hexagon not only engulfs a whole city or multiple cities, but it can engulf multiple countries.

Those hexagons can be subdivided and subdivided again (up to 16 divisions in total), like so:

This picture above is closer to city-level sizes (at res 3). It can be divided down to about the size of a coffee table (about 0.9 square meters) and at that resolution (res 15) you would be unlikely to ever have a hexagon that belongs to more than one city.
For a practical distinction when it might not be as clear-cut (say resolution 9 or 10 when we're dealing with hexagons slightly above or below the average city block size, and small cities that directly jut against each other), the polyfill algorithm uses the centerpoint of the hexagon to assign containment within the given geofence or not, and provides guarantees that two contiguous polygons (eg, two city boundaries) will have contiguous, non-overlapping sets of hexagons, like in these 4 different polygons-mapped-to-hexagon-sets for different regions of San Francisco:

I hope that clears things up?


adding constraints on distance

Can I do something like
Venue.near('New York').where("distance > 3 AND distance < 5")
Right now I am getting
PG::UndefinedColumn: ERROR:  column "distance" does not exist

Based and tested with mysql, distance isn't available in the where clause.  You could use having but a better option would be to modify your near call to something like:
Venue.near('New York', 5, min_radius: 3)
Refer to the source at:
https://github.com/alexreisner/geocoder/blob/8ba90c98712c23cdce72a0a85e05d73690ac54ad/lib/geocoder/stores/active_record.rb#L38-L49
and
https://github.com/alexreisner/geocoder/blob/8ba90c98712c23cdce72a0a85e05d73690ac54ad/lib/geocoder/stores/active_record.rb#L114-L151


For developers - onboarding documentation

For new (and old?) developers, clearly document (and keep up to date) best practices for developing, building, and testing locally.
For instance, when opening a PR, there are a series of checks. These should be documented with instructions on how a developer would (if and where possible) run through these checks locally. We should use pre-commit hooks, VS Code dev containers etc, where possible, but those should not replace documentation and manual steps.

Test

A few items on my radar

[ ] Demos may need easy options to fully remove ngrok and run locally with two agents, rather than one agent that assumes a mobile wallet will play the other part. NGROK is taken for granted however certain corporate security policies block any traffic to the ngrok domain.

[ ] Unit test suite runs well as a whole, but using the unittest suite for the testing of individual files or tests are either very slow ,because they are configured to always run with coverage, or do not run at all. We should explore and refine a configuration that is fully supported by a given development tool (like VSCode)

[ ] Find windows based python packages that allow for aca-py to be run natively on developers machine if possible.

Helpful to list the demos that you tried that had ngrok requirements, so that we can target them.
Our experience has been trying to maintain a useful environment on every platform (and variation of platform) is very hard, so we suggest that developers find ways to work on containers vs. native. Maintaining things to run on all developer platforms is a lot of overhead.  Doable, but not where we would like to spend our resources.

I would open a ticket asking how the last can be done.  How can a dev run a unit test in 2 seconds?  Someone must know :-)

I would like to see documentation simplified (lots and lots of different markdowns) and possibly gathered into streams: ACA-Py developer, ACA-Py user, ... business use cases?
The demos folder has a lot of stuff in it; possibly move things out (playground). Also, we should really clarify what the purpose is and who the demographic is... I feel like the demographic is more for business case, but was constantly getting pointed to the run_demo because it does X. Then it is a learning curve to go through the shell scripts to see how ACA-Py is configured and started, then work through the agent code to actually find out what is happening to connect two agents.
Do we need multi-demo? If so, it needs a better "script".
Also, BDD is inside demos; is that a demo? It is used in GitHub actions, but when I was looking for BDD tests, that is not where I expected to find them.  As a developer, I would love to run the BDD scripts and be able to set breakpoints in the running ACA-Py code... the BDD scripts are at least reasonably easy to follow and understand what is going on. I find the BDD tests much more helpful than unit tests. There is so much mock code in unit tests that it is difficult to determine what is going on to gain knowledge - like what does a payload for issue credential v2 look like?  I guess I'm saying I'd like to see those fleshed out and then promoted as a learning and testing tool.
ngrok - I agree with @swcurran about itemizing which demos absolutely need them (mobile) and which ones we can move away from the requirement. Moving everything to the same docker network is awkward but possibly doable. However, not all the components we want to use are in this repository... so we don't have control over other docker composes.  Having a demo openshift with the components we could load  (mediator, endorser, ledger) is useful, but a maintenance/dev ops headache - and not sure open source projects should heavily lean on bcgov or other for infrastructure. Most everything we need has a docker compose so we should stick with that and expect that devs could run everything (in non-HA) locally for developing / debugging. Perhaps it's as simple as having a second service in each docker compose that doesn't depend on ngrok and we document how to start with that and the limitations. Again, that may only apply to this repository, but could spread to others we contribute toward. (See issue #2275)
I know there is work to get past Python 3.6, so once that work is done I think we need to go through the various docker images in the repo and standardize them. The demos and bdd  I don't think are exactly the same as a production image, that's a little concerning. We also need to update our requirements (I know that we can't update requests until we move to 3.9 - we don't use the code where the security flaw is but we are out of date).
In the devcontainer PR, @swcurran mentioned docker-in-docker... I think that is worth spending a little more time on since we do have (and rely) so many docker files and docker composes...
When we get to plugins as a more important feature, we must provide an easy way for dev teams to debug them. I know it is a real pain for the traction team, so I am sure it is for others. That can fold in with issue #2277.

New structure of the https://aca-py.org site helps.  An update path through the docs would be helpful...always.


integrate second edition, with minimal changes

Add the gatsby-source-secondedition plugin. I've tried to make the changes as minimal as possible so it will more easily a guide for those adapting other starters, or beginning from scratch. This is not complete - perhaps most importantly, I haven't touched the README - but it should now be possible to preview your site by:

forking this repo
setting your access token in gatsby-config.json
running npm run develop

Key changes (should be relevant to those adapting almost any other starter):

Add gatsby-source-secondedition plugin, configure in gatsby-config.js (access token is left blank so it will throw on first run).
Because Second Edition nodes do not have frontmatter data, create title and date fields (alongside the slug field). For regular markdown nodes, these are simply copied/duplicated from frontmatter. All this in gatsby-node.js.
Use those new fields throughout, viz. index.js, blog-post.js, and the gatsby-plugin-feed config in gatsby-config.js.
Use gatsby-remark-images-remote rather than gatsby-remark-images, so that images are downloaded from Instagram and processed along with any other images in the repo (as well as better performance when deployed, the URLs returned by the Instagram API are transient - good for maybe 24 hours).

Note: this starter uses the title field pretty heavily, e.g. in the list of articles and for next/previous links. Second Edition articles don't (yet, at least) have titles as such so instead I use the intro field which is currently the first sentence of the Instagram post (this code, slightly messy, in gatsby-node.js). This works just okay - longer term, I should find a more image-focused starter.
One last change, not relevant to other starters:

use placeholder.com for the sample image in index.md, which does not cause gatsby-remark-images-remote to bork

Wow, temporary brain failure. I guess I'm not so familiar with working with forks. My apologies, and please ignore.


Click outside

Click outside popup doesn't appear?

Thank you for your issue.
Unfortunately I can't answer to all the reported issues without a little help from you.
Please, make sure to follow the issues template when you submit a new issue, in this way I will already have all the informations needed to understand the problem and help you with it.
I'm closing this issue for now, but feel free to open a new one making sure to follow all the instructions!
Thank you for your understanding.

@elie222 Some explanation on how to use will be great

A click outside hook may be better nowadays


sparklyr support for Databricks-Connect?

Databricks recently released Databricks-connect, which allow rstudio to execute spark job on a remote databricks spark cluster.
https://docs.azuredatabricks.net/user-guide/dev-tools/db-connect.html
However, currently they only support SparkR.
I wonder if there is an easy way to configure sparklyr to utilize this feature?

Thanks, yes, something we were already planning to investigate. We'll close this one and track progress with https://github.com/rstudio/sparklyr/issues/2089 instead.