First string token is always considered as docstring

In the docstring detection state machine, the first string token is always considered as docstring without considering the context. For example, the first strings in the following example are considered as docstrings:
"abcba".strip("ab")

On the opposite end, if multiple strings are implicitly concatenated then only the first string is considered as docstring:
"first" "second"

Python considers the entire string ("firststring") as the module docstring but the state machine will only say that "first" is docstring while "second" is a normal string.

Yeah, we need something more reliable here. I wish this could use our AST-based docstring detection -- that is, I wish we could just move these rules to the AST checker.
We could move them, but we'd then have to re-lex the strings in the AST for any implicit concatenations, which seems expensive.

We could move them, but we'd then have to re-lex the strings in the AST for any implicit concatenations, which seems expensive.

Why is this necessary, considering that python detects the whole string as docsttring?
Let's see if @dhruvmanila ends up refactoring our string representation anyway to represent string parts in the AST.

@MichaReiser -- Because the string could contain comments in-between the segments:
x = (
    "foo" # comment
    "bar"
)

This isn't a problem in the token-based model because we iterate over string segments and comment tokens. But in the AST, we'd need to delineate the string contents from the comments.

This isn't a problem in the token-based model because we iterate over string segments and comment tokens. But in the AST, we'd need to delineate the string contents from the comments.

I see, but we would only need to do this for strings where implicit concatenated is true. So it shouldn't be as many? But I guess it is now more complicated with the fstrings support.

I haven't explored it fully but I don't think it'll be an issue once the new AST node is merged.

I think we can now solve this.

I think we would need to move the existing rules which uses the state machine to be based on AST instead of tokens. There aren't many -- RUF001-003 and flake8-quotes rules. I think the only reason they're token based is because of implicit string concatenation.
The implementation should probably be in the semantic model.

No, the last rule (Q003) is remaining, maybe I'll pick that up this weekend. I remember that was a bit difficult because it supports PEP 701 syntax.


Bevy 0.15

Update to<EMAIL_ADDRESS>and<EMAIL_ADDRESS>I was able to compile and run my local project.

Tagging #30

Release v0.12.0 updates bevy_quinnet to bevy 0.15.
I had to release v0.11.0 first however due to breaking changes/udates for major dependencies (rustls and quinn), in case some users might need those new versions but are still using bevy 0.14.
bevy_replicon_quinnet has also been moved out of tree from this repository and lives in its own repository. This helps with releases in order to avoid waiting for a full replicon release before releasing quinnet.


Add analytics for 'view release deployment process'

Looks good. I'll likely merge it #48 later today and publish.


License?

Please add a license file to the repo so that we know how/if we can use/re-use the code.

I would also be interested in the license of this repository. Could you help with this, @oba11, please?

Just added it, sorry guys :)
https://github.com/namshi/docker-smtp/blob/master/LICENSE


m365 spfx project upgrade --output tour - Allow a "one click" script for tours as well as markdown files

See context here - https://twitter.com/DavidWarnerII/status/1300819767289241601
It would be great to have a "one click" button for tours as well as markdown files :)

Awesome suggestion! Would it work for us to mention in the first step that we'll provide a full script at the end so that you can browse through the changes but know that you don't need to run them one by one and will be able to run all changes in one go at the end?

It would be nice to include a reference in the first step to the step that contains the full script. This reference will generate a hyperlink so the user can easily jump to the relevant step.
https://github.com/microsoft/codetour#step-references

Thanks a lot guys :)

Following @garrytrinder suggestion, let's add the full script as the last step and then mention it at the beginning and include a link to the last step.

I'll grab this one.

Apologies, I've not been able to progress this due to changing priorities, opening up for someone else to pick up.


Missing parent: phosphatidylglycerol biosynthetic process (GO:0006655)

GO term ID and label for which you request a new superclass

phosphatidylglycerol biosynthetic process (GO:0006655)

New superclass (parent) suggested

is_a membrane lipid biosynthetic process?
(I'm not sure if this is always true, are there phosphatidylglycerols that are not part of membranes?

Reference(s), if appropriate
PMID:nnnnnnn

closing based on discussion in
https://github.com/geneontology/go-ontology/issues/26698


Update to Spatial Transformer processing logic

This has been up in the air for a little while, but there is a possibility to change the way that Spatial Transformer processes the layers.
The current method is to walk through the file tree that is outputted from Ripple Unzipple and put the paths of the files into an object for the processor to then iterate through and do all the stuff.
A possible improvement to the logic (maybe readability ) would be to make entries in the data tracker object of each of the files as they are being walked through in the initial step instead of just adding the paths to an object to iterate through. This would mean that there is better records if the tool fails with it's failsafe, but would also mean that in the intial walk through the kml's, kmz's, and gdb's would need to be looked in to make entries for each of their features.
I am still not completely sure if this would be a better method for the tool but it is something to think about.

Changes have been made for this issue on the https://github.com/cat-cfs/twobilliontoolkit/tree/Spatial-Transformer-Processor-Logic-Change branch.
Changes include:

a completely different logic for processing the spatial files after ripple unzipple runs with its output. Each entry in the datatracker is made as it is looking through the files and then the spatial processing starts after that.
There is a whole new KML processing functionality with geopandas and fiona.
the resume functionlity should work better with this now that all the entries are created at the same time
a catch all that throws an error to the log for unrecognized file types was put into the logic


[0.18.1] Fix potential NPEs in joins (#9760)

Backports the following commits to 0.18.1:

Fix potential NPEs in joins (#9760)

Clean backport


fix: Add shortcut to comment and uncomment code

Description
This PR adds option to comment/uncomment using CMD + /  on Mac or CTRL + /  on windows.
PR also restructures the codeEditor folder
Fixes #12482
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
Test Plan

[ ] https://github.com/appsmithorg/TestSmith/issues/1962
[ ] https://github.com/appsmithorg/TestSmith/issues/1963
[ ] https://github.com/appsmithorg/TestSmith/issues/1964

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

/ok-to-test sha=ff5239a

[ ] Plain text does not get commented in JS fields on the property pane and query editor
[ ] Selecting all on JS field and using keyboard shortcut does not comment the entire code block like it does on the editor
[ ] Trying to comment/uncomment on a multi-line code when cursor is outside the mustache brackets does not work
[ ] Commenting on the first line of a multi-line code causes the commenting characters to appear but not actually comment out the line - uncomment does not work here


feat: experimental "create-service" command

This is an experimental new command that mimics the CloudFoundry
"create-service" command, but runs all steps locally. The aim is to
speed up development by allowing for faster iteration when making
changes to brokerpaks.
Checklist:

[ ] Have you added or updated tests to validate the changed functionality? experimental
[ ] Have you added Draft Release Notes in docs/draft-release-notes.md? experimental
[x] Have you followed the [Conventional Commits specification]~(https://www.conventionalcommits.org/en/v1.0.0/#summary)?

omg i ❤ this.


ENYO-5700: Add additional type in Scrollable

Add type for prevent scroll move to reverse direction in RTL
Enact-DCO-1.0-Signed-off-by: Changgi Lee<EMAIL_ADDRESS>Checklist

[x] I have read and understand the contribution guide

[x] A CHANGELOG entry is included

[ ] At least one test case is included for this feature or bug fix

[x] Documentation was added or is not needed

[ ] This is an API breaking change

Issue Resolved / Feature Added
In current status, NLP server provide only direction type(ex. left, leftmost, right, rightmost, up, down, top, bottom) scroll info.
For this reason, scroll can be move reverse direction in RTL.
Resolution
Add additional type(previous, next, first, last) for scroll movement
Additional Considerations
Links
ENYO-5700
Comments
Enact-DCO-1.0-Signed-off-by: Changgi Lee<EMAIL_ADDRESS>

LGTM


Update openvpn-install.sh

added --state

Any explanation for this change?

Any explanation for this change?

to filter out packets

Why did you remove the position (1) of the rules?

Why did you remove the position (1) of the rules?

i forgot to add 1 sorry

@angristan as a note, Nyr does the same thing
@techroy23 why you changed -I to -A?


Question - How can you update your email?

Hi,
Does anybody know how to update the email so the Expiry notification goes to the new email address? Is it possible through letsencrypt-win-simple?
I found only this reference that it might be possible on the back end https://community.letsencrypt.org/t/how-do-i-update-a-registration-account-email/5222

This feature was added in cerbot with the 0.8 release. You can use it via certbot register --update-registration.

Thanks.

It's not possible to update a registration at this point, though you can actually clear the configuration folder to force creating a new one (by default it's C:\Users\xxx\AppData\Roaming\letsencrypt-win-simple for v1.9.4 or C:\ProgramData\letsencrypt-win-simple for v1.9.5-beta)

Actually, that is correct answer for me for now :)
Happy to do that till something else emerges.
I will test it and update here.
Thank you!


Typo:React Native Development

Report
There's a typo in Yoga.cpp that causes problems for react native development as it's one of the dependencies. A screenshot can be seen below. The problem is easily solved by changing | into ||.

Can this typo please be corrected.
Issues and Steps to Reproduce
Developing in React Native(react native cli), with Yoga as one of the dependencies. Using CocoaPods on M1 Mac.
Expected Behavior
Successful compile.
Actual Behavior
Syntax Error.
Link to Code
The code snippet with the type is here

Please see https://github.com/facebook/react-native/issues/36758. This was updated in React Native more than a year ago, and if you are seeing this, it is likely you are using an unsupported version of React Native with a current version of XCode.


Add cell execution_state

Closes #169

Can we standardize that allowed values are running (or executing) and idle?

Actually only "idle" is used in this PR. I will rebase it.

Yes, what I meant is that we probably should have some place to store source of truth for the enum values, this does not have to be addressed in this PR but would be good to settle on something soon.

I think this one is good to merge :tada:

Shall we merge this?

Hearing no objections I am going to merge this one :)

I will publish 3.0.0a3 now to integrate this with JupyterLab and jupyter-server-nbmodel

It looks like do not have sufficient rights to release (https://github.com/jupyter-server/jupyter_ydoc/actions/runs/10282910526/job/28455597267) @davidbrochart are you able to help here?

RuntimeError: Could not get user permission level, assuming user was not admin!

I opened follow-up https://github.com/jupyter-server/jupyter_ydoc/pull/259

@davidbrochart are you able to help here?

Sorry I'm off with a very limited access to Internet, I'll look at that in a week or so.

No worries, I will try asking someone else on the server meeting tomorrow to get rights to release. Are you able to get a quick look at https://github.com/jupyter-server/jupyter_ydoc/pull/259 so that I could release in an alpha that to unblock https://github.com/jupyterlab/jupyterlab/pull/16651?

Are you able to get a quick look at #259

Done, let me try and release 3.0.0a3.

Looks like 3.0.0a3 is out, but yes you should ask for release rights (I don't think I can give them to you).


Example 11 broken after removal of find_dofs

https://github.com/kinnala/scikit-fem/blob/5e52f0a984ec42b7b5669e4b02c5fb29b00bf3ef/examples/ex11.py#L21

Fixed in local branch. Adding test and pushing tomorrow.


⚠ Bofrost.com has degraded performance

In f884df5, Bofrost.com (https://www.bofrost.com) experienced degraded performance:

HTTP code: 200
Response time: 773 ms

Resolved: Bofrost.com performance has improved in 8001725.


Derby: contents of CLOBs/BLOBs get truncated in result view

I just tried the new Option "cache BLOB values" in DBeaver 3.6.1 and contents of BLOBs are now showing up in result view, but they are truncated at 8192 bytes for BLOBs and around 4k for CLOBs. Autocommit is set to off.
I'm still recieving messages like these in the error log:
for BLOBs:
Actual content length (8192) is less than declared: 18392
for CLOBs:
Actual content length (3999) is less than declared: 19822
I think CLOBs did not get truncated in a version of DBeaver around September of last year.

Can't reproduce. With BLOB caching I can see them in both auto-commit and transaction modes (make sure you enabled BLOB caching for this particular datasource).
What Derby version do you have? And specific options?

I've tested it using Derby <IP_ADDRESS> in embedded mode using a fresh install of DBeaver 3.6.1.
Right after inserting data into the table it seems fine, but when refreshing the table or restarting DBeaver, I get those warnings written in my first post and the content is truncated.
Yes I enabled BLOB caching for this datasource and I think I don't have any specific options (see below).

There was a bug in content reading (sometimes derby driver acts pretty strange - depending on actual LOB sizes).
Thanks for report.

Hello, I tested this in version 3.6.2 and retrieving large BLOBs now seems fine - thank you very much for your support!
But unfortunately there still seems to be a bug regarding the caching of larger CLOB values. Their content still gets truncated at around 4k in result view.


Add docstrings to deploy package

In this PR, I added docstrings to the functions in the deployment package. I added short docstrings for private functions and more detailed ones for public functions.

@xylar some of these docstrings are a little sparse, so can you let me know if there are any you would like me to explain in more detail? And in general, let me know if I said the wrong thing for any of them and I'll fix it.

Those are good changes, I will update this now.

Stand by, I needed to push to do linting and testing on PM since I was working on my mac

@altheaden, apologies for going ahead and committing the fix but I assume you're probably done for the day and I wanted to nudge things along.

@xylar No worries! I am not quite done but I wasn't making much headway with this so that's totally fine. Thanks for fixing it!


ADDING C++ Program File

Merge my request

Good work @03anjali! Keep learning and contributing!

Good work @03anjali! Keep learning and contributing!

Thank you sir for giving us the opportunity to learn and grow more. Looking forward to more contributions...


Improve name of "content" template folder

content is an ambiguous name for a folder that just contains email content. These all feel related to the submission process... maybe we should put that content there? Or maybe we should use another tool to manage emails, as we do with STARS.

Branch committed with these changes. Will be included in this week's deploy.

Change deployed. Closing.


Cannot read property 'ES6' of undefined

I got an error:
if (mongoose.Promise.ES6) {
                    ^
TypeError: Cannot read property 'ES6' of undefined
    at Query.exec (pathToProject/node_modules/mongoose-deep-populate/lib/plugin.js:88:25)

mongoose v 4.1.12
node v 0.12.7

nvm, i didn't pass mongoose


Refactor the search feature

Description:
Currently, we sync via RPC to a local "contractdb" for performing search operations. This method is inefficient and has a lot of other problems, including inaccurate reflection of account states (balances), and more.
There is already support for searching there state trie of a local geth node. However, the way it is currently implemented, it only works for small testnets. The EthLevelDB class first parses the complete state to create a list of all 'active' contracts in memory before search operations can be invoked. Obviously this is infeasible if the state trie is large.
To make this usable, it needs to be implemented in a way that allows users to iterate through contracts in the state trie either one-by-one, or by providing a search expression that invokes a callback every time a match is encountered.
Implementation details:Initial implementation ideas/instruction

Add a configuration file that lets the user set the path to a local leveldb. Include examples in the comments. E.g., on Mac OS it is found in ~/Library/Ethereum/geth/chaindata.

Refactor the LevelDB client class to allow one to iterate over contracts in the geth leveldb instead of reading all contracts into memory in advance.

Probably the best way to do this is using a Generator.

Refactor the search feature to invoke the new leveldb client class. Remove all references to contract storage.

Completely remove the old persistence layer (contractstorage.py), the ZODB requirement and the --init-db feature.

Once the implementation is done, search only works if a valid local leveldb exists. Otherwise, the user is shown an error message.

Using a python generator function should be a good fit for this

@birdofpreyru new challenge for the TopCoder crew :)

Here we go: https://www.topcoder.com/challenges/30066270

Thanks @birdofpreyru!

Does the search feature currently work?
Whenever I try to search I get the following output:
~/Projects/mythril feature/search*
❯ ./myth --search "func#changeMultisig(address)#" --leveldb ~/.ethereum/geth/chaindata
Traceback (most recent call last):
  File "./myth", line 9, in <module>
    mythril.interfaces.cli.main()
  File "/ext/b2/mythril/mythril/interfaces/cli.py", line 142, in main
    mythril.search_db(args.search)
  File "/ext/b2/mythril/mythril/mythril.py", line 224, in search_db
    self.ethDb.search(search, search_callback)
  File "/ext/b2/mythril/mythril/leveldb/client.py", line 80, in search
    for contract, m in self.get_active_contracts():
  File "/ext/b2/mythril/mythril/leveldb/client.py", line 72, in get_active_contracts
    for contract, md5 in self.get_all_contracts():
  File "/ext/b2/mythril/mythril/leveldb/client.py", line 53, in get_all_contracts
    for a in state.get_all_accounts():
  File "/ext/b2/mythril/mythril/leveldb/state.py", line 127, in get_all_accounts
    for address_hash, rlpdata in self.secureTrie.trie.to_dict().items():
  File "/home/dela/.pyenv/versions/3.6.4/lib/python3.6/site-packages/ethereum/trie.py", line 884, in to_dict
    d = self._to_dict(self.root_node)
  File "/home/dela/.pyenv/versions/3.6.4/lib/python3.6/site-packages/ethereum/trie.py", line 869, in _to_dict
    sub_dict = self._to_dict(self._decode_to_node(node[i]))
  File "/home/dela/.pyenv/versions/3.6.4/lib/python3.6/site-packages/ethereum/trie.py", line 229, in _decode_to_node
    o = rlp.decode(self.db.get(encoded))
  File "/home/dela/.pyenv/versions/3.6.4/lib/python3.6/site-packages/rlp/codec.py", line 217, in decode
    rlp = str_to_bytes(rlp)
  File "/home/dela/.pyenv/versions/3.6.4/lib/python3.6/site-packages/rlp/utils_py3.py", line 20, in str_to_bytes
    return bytes(value, 'utf-8')
TypeError: encoding without a string argument

Do you know how I can fix this issue?

Tbh I never tested this feature properly myself. I'm not getting this error, but the search also doesn't terminate because I'm running in on a fully synced node.
What's your environment:

OS
Python version
pip freeze

OS: Arch Linux
Python: 3.6.4
Pip Freeze:
aniso8601==3.0.0
asn1crypto==0.24.0
astroid==1.6.1
atomicwrites==1.1.5
attrdict==2.0.0
attrs==17.4.0
autobahn==18.6.1
Automat==0.6.0
BTrees==4.5.0
certifi==2018.4.16
cffi==1.11.5
chardet==3.0.4
click==6.7
coincurve==7.1.0
constantly==15.1.0
coverage==4.5.1
cryptography==2.2.2
cycler==0.10.0
cytoolz==<IP_ADDRESS>
dictionaries==0.0.1
eth-abi==1.1.1
eth-account==0.2.3
eth-hash==0.1.4
eth-keyfile==0.5.1
eth-keys==0.2.0b3
eth-rlp==0.1.2
eth-tester==0.1.0b27
eth-utils==1.0.3
ethereum==2.3.1
Flask==1.0.2
Flask-RESTful==0.3.6
future==0.16.0
hexbytes==0.1.0
hyperlink==18.0.0
idna==2.6
incremental==17.5.0
isort==4.3.4
itsdangerous==0.24
jedi==0.11.1
Jinja2==2.10
kiwisolver==1.0.1
lazy-object-proxy==1.3.1
MarkupSafe==1.0
matplotlib==2.2.2
mccabe==0.6.1
mock==2.0.0
more-itertools==4.1.0
numpy==1.14.2
pandas==0.22.0
parsimonious==0.8.0
parso==0.1.1
pbkdf2==1.3
pbr==4.0.4
persistent==<IP_ADDRESS>
pluggy==0.6.0
plyvel==1.0.4
py==1.5.3
py-ecc==1.4.2
py-flags==1.1.2
py-solc==3.1.0
pyasn1==0.4.3
pyasn1-modules==0.2.1
pycparser==2.18
pycryptodome==3.6.1
pyethash==0.1.27
pylint==1.8.2
pyOpenSSL==18.0.0
pyparsing==2.2.0
pysha3==1.0.2
pytest==3.6.1
pytest-cov==2.5.1
pytest-mock==1.10.0
python-dateutil==2.7.2
pytz==2018.4
PyYAML==3.12
repoze.lru==0.7
requests==2.18.4
rlp==0.6.0
scrypt==0.8.6
semantic-version==2.6.0
service-identity==17.0.0
six==1.11.0
toolz==0.9.0
transaction==2.2.1
Twisted==18.4.0
txaio==2.10.0
urllib3==1.22
watson-developer-cloud==1.3.5
Werkzeug==0.14.1
wrapt==1.10.11
yapf==0.20.2
z3-solver==<IP_ADDRESS>.post2
zc.lockfile==1.3.0
ZConfig==3.2.0
ZODB==5.4.0
zodbpickle==1.0.1
zope.interface==4.5.0

@b-mueller does searching still work for you when you specify the leveldb path?

Yes, at least I don't get any errors. Although the search never finished.

FYI, my Pypi packages:
asn1crypto==0.24.0
atomicwrites==1.1.5
attrdict==2.0.0
attrs==18.1.0
BTrees==4.5.0
certifi==2018.4.16
cffi==1.11.5
chardet==3.0.4
click==6.7
coincurve==7.1.0
coverage==4.5.1
cytoolz==<IP_ADDRESS>
dictionaries==0.0.1
docopt==0.6.2
eth-abi==1.1.1
eth-account==0.2.3
eth-hash==0.1.4
eth-keyfile==0.5.1
eth-keys==0.2.0b3
eth-rlp==0.1.2
eth-tester==0.1.0b27
eth-utils==1.0.3
ethereum==2.3.1
flake8==3.5.0
Flask==1.0.2
future==0.16.0
grip==4.5.2
hexbytes==0.1.0
idna==2.7
itsdangerous==0.24
Jinja2==2.10
laser-ethereum==0.17.12
Markdown==2.6.11
MarkupSafe==1.0
mccabe==0.6.1
mock==2.0.0
mockprocess==0.2
more-itertools==4.2.0
mythril==0.18.4
parsimonious==0.8.0
path-and-address==2.0.1
pbkdf2==1.3
pbr==4.0.4
persistent==<IP_ADDRESS>
pluggy==0.6.0
plyvel==1.0.4
py==1.5.3
py-ecc==1.4.2
py-flags==1.1.2
py-solc==3.1.0
pycodestyle==2.3.1
pycparser==2.18
pycryptodome==3.6.1
pyethash==0.1.27
pyflakes==1.6.0
Pygments==2.2.0
pysha3==1.0.2
pytest==3.6.0
pytest-cov==2.5.1
pytest-mock==1.10.0
PyYAML==3.12
repoze.lru==0.7
requests==2.19.0
rlp==0.6.0
scrypt==0.8.6
semantic-version==2.6.0
six==1.11.0
toolz==0.9.0
transaction==2.2.1
urllib3==1.23
Werkzeug==0.14.1
z3-solver==<IP_ADDRESS>.post2
zc.lockfile==1.3.0
ZConfig==3.2.0
ZODB==5.4.0
zodbpickle==1.0.1
zope.interface==4.5.0

I removed the files in my chaindata and ran geth. Searching works now.


Single path tan loading

Still needs to be tested

@henryre ready for re-review!  Can be tested when training new TANs

Ok will look soon!

@henryre Addressed all inline comments

@henryre changes made


关于tfkan中Conv3DKAN函数的使用

您好！在使用Conv3DKAN函数的过程中，我发现五维的输入经过函数处理后变为了四维，请问这是为什么？您辛苦了！

I'm not sure how you configure your Conv3DKAN layer.
The following is my code:
import tensorflow as tf
from tfkan.layers import Conv3DKAN

# x has (batch, spatial_1, spatial_2, spatial_3, channels) shape
x = tf.random.normal(shape=(1, 10, 32, 32, 3))
layer = Conv3DKAN(filters=8, kernel_size=3, strides=1)
y = layer(x)
print(y.shape)

and the output is
TensorShape([1, 8, 30, 30, 8])

which has 5D

当我运行您的示例时，我能得到同样的结果，但当我自己编写代码时，却总会遇到维度下降的问题：
def TokKANBlock(input_tensor, filters, kernel_size=(3, 3, 3), strides=(1, 1, 1)):
    # 第一层标准 3D 卷积
    x = tf.keras.layers.Conv3D(filters=filters, kernel_size=kernel_size, strides=strides, padding='same')(input_tensor)
    print(x.shape)

    # 第二层使用 KAN 的 3D 卷积
    x = Conv3DKAN(filters=filters, kernel_size=3, strides=1, padding="same")(x)
    print(x.shape)

    x = tf.keras.layers.Conv3D(filters=filters, kernel_size=kernel_size, strides=strides, padding='same')(x)
    print(x.shape)

    return x

def autoKAN(n_filters=16, n_classes=1, dropout_rate=0, grid_size=3, spline_order=3):
    inputs = tf.keras.layers.Input(shape=[None, None, None, 1])
    kan = TokKANBlock(inputs, filters=n_filters * 8, kernel_size=(3, 3, 3), strides=(1, 1, 1))

model1 = autoKAN()

#以下为运行结果

(None, None, None, None, 128)
(None, None, None, 128)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-40-9423babc311f> in <cell line: 21>()
     19
     20
---> 21 model1 = autoKAN()

3 frames
/usr/local/lib/python3.10/dist-packages/keras/src/engine/input_spec.py in assert_input_compatibility(input_spec, inputs, layer_name)
    251             ndim = x.shape.rank
    252             if ndim is not None and ndim < spec.min_ndim:
--> 253                 raise ValueError(
    254                     f'Input {input_index} of layer "{layer_name}" '
    255                     "is incompatible with the layer: "

ValueError: Input 0 of layer "conv3d_40" is incompatible with the layer: expected min_ndim=5, found ndim=4. Full shape received: (None, None, None, 128)

I have find where the problem is, we use the API of tensorflow to extract patches when processing 3D inputs(with (spatial_1, spatial_2, spatial_3) as follows:
patches = tf.extract_volume_patches(
    inputs,
    ksizes=[1, *self.kernel_size, 1],
    strides=[1, *self.strides, 1],
    padding=self.padding
)

I found that this API reduces one dimension when encountering undetermined tensors (virtual inputs created through tf.keras.layers.Input), resulting in the final output dimension not meeting expectations.😫
I will consider how to fix this issue. I'm sorry, before that, you can only use tensors of a certain size to initialize your model.

感谢您百忙中抽出时间进行回答，我理解了，您辛苦了！谢谢！


Rename ContractConfigurator-FieldResearch.frozen to ContractConfigura…

…tor-FieldResearch.netkan
Updated to version 1.2.2 recently.

Thanks for the heads-up!


[BEAM-8664] [SQL] MongoDb project push down

MongoDbTable should perform project push-down.
Add tests.

Based on top of #10061.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

Run sql postcommit

R: @TheNeuralBit
cc: @apilloud

Run sql postcommit

Run JavaPortabilityApi PreCommit
Run Java_Examples_Dataflow PreCommit
Run sql postcommit

Run sql postcommit

Run Java_Examples_Dataflow PreCommit

Run JavaPortabilityApi PreCommit

Run sql postcommit

It looks like the test failed in the post commit becase we didn't get anything out of system.profile, any idea what went wrong?

I think it is caused because @After drops the table.
Moving these lines to @Before should fix it.
https://github.com/apache/beam/pull/10095/commits/5c62169b1903107fe39205be47a3991800921164#diff-3660a76b56e047b917aef5fbf45fea3fR133-R135

Run sql postcommit


Upgrade to the latest version of Node18

Description of changes
Upgrade node 18 to the latest version available.
Things done
nix-build -E 'with import <nixpkgs> { }; callPackage ./pkgs/development/web/nodejs/update.nix { majorVersion = "18"; }'
/nix/store/ll82slvlqahf27wk65xabdnxv02cldj3-update-nodejs

This is the output from that command sequence.
I searched the pulls and could not find a pull that does the same thing.

https://github.com/NixOS/nixpkgs/pull/220107


[Bug Report] Bypass plugin

Is your feature request related to a problem? Please describe.
I need to be able to paste some text verbatim that happens to contain tabs.  Unfortunately, this plugin assumes that this is a table.
Describe the solution you'd like
A way to paste as if obsidian-excel-to-markdown-table were disabled
Describe alternatives you've considered
I've tried to "type" text using BetterTouchTool.
I've tried option+shift+cmd to paste without formatting.
Neither worked.

@ganesshkumar Worked, thanks!

Thanks for reporting the issue and testing out the update quickly :)

Btw, I don't copy from Excel. I just copy from tables from Apple Notes.  Still works just the same!
I imagine your plugin works for tables in many different apps too


Loosen required ruby to allow 3.0

I haven't tested this yet, but I need this to be able to test it.

More work will need to be done. This uses URI.escape which was removed: https://docs.knapsackpro.com/2020/uri-escape-is-obsolete-percent-encoding-your-query-string


Use kubectl exec to fix a test hanging issue

Replace calls to Kubernetes java client exec API with kubectl exec calls to temporarily fix a test hanging issue in Jenkins that has started to happen recently.

Jenkins job before the last commit (no hanging in testPatchAppV2): https://build.weblogick8s.org:8443/view/all/job/weblogic-kubernetes-operator-kind-new/894/.
Jenkins job with the latest: https (still running): //build.weblogick8s.org:8443/view/all/job/weblogic-kubernetes-operator-kind-new/902/


Verification

Issue
i cant verify my account. I get this error code:
Creating new account.
Traceback (most recent call last):
  File "jodelUser.py", line 16, in <module>
    j.verify(a)
  File "/usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg/jodel_api/jodel_api.py", line 171, in verify
    verification = self._read_verificiation(android_account)
  File "/usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg/jodel_api/jodel_api.py", line 183, in _read_verificiation
    return android_account.receive_verification_from_gcm()
  File "/usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg/jodel_api/gcmhack.py", line 128, in receive_verification_from_gcm
    return self.receive_verification_from_gcm(False)
  File "/usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg/jodel_api/gcmhack.py", line 98, in receive_verification_from_gcm
    raise Exception("socket closed by server")
Exception: socket closed by server

This is the Code
lat, lng, city = 48.148434, 11.567867, "Munich"
j = jodel_api.JodelAccount(lat=lat, lng=lng, city=city)
a = jodel_api.AndroidAccount()
j.verify(a)
print j.get_account_data()

i dont want to spam anything on jodel. I need only j.get_post_details_v3('postid'). However sometimes it works sometimes and sometimes i get errorcode 478
...
Environment
If you're reporting a bug, please attach the output of the following commands:
$ pip show jodel_api
Name: jodel-api
Version: 1.2.7
Summary: Unoffical Python Interface to the Jodel API
Home-page: https://github.com/nborrmann/jodel_api
Author: Nils Borrmann
Author-email<EMAIL_ADDRESS>License: MIT
Location: /usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg
Requires: requests, future, mock, varint, protobuf

$ pip -V
pip 9.0.1 from /home/t/.local/lib/python2.7/site-packages (python 2.7)

$ python -V
Python 2.7.12

$ python -c "import jodel_api; print(jodel_api.JodelAccount.version); print(jodel_api.JodelAccount.secret)"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg/jodel_api/__init__.py", line 6, in <module>
    from jodel_api.jodel_api import *
  File "/usr/local/lib/python2.7/dist-packages/jodel_api-1.2.7-py2.7.egg/jodel_api/jodel_api.py", line 6, in <module>
    install_aliases()
  File "/usr/local/lib/python2.7/dist-packages/future/standard_library/__init__.py", line 483, in install_aliases
    import test
  File "test.py", line 2, in <module>
    requests.get('https://api.github.com/user', auth=('user', 'pass'))
NameError: name 'requests' is not defined

Is the account verification still working? With the latest key I started to get Error=PHONE_REGISTRATION_ERROR when tried to verificate new account.
  File "C:\...\Python\Python36-32\lib\site-packages\jodel_api\gcmhack.py", line 74, in get_push_token     raise GcmException(r.text) jodel_api.gcmhack.GcmException: Error=PHONE_REGISTRATION_ERROR

I checked out the Gcm website and got this message: "Firebase Cloud Messaging (FCM) is the new version of GCM. It inherits the reliable and scalable GCM infrastructure, plus new features! See the FAQ to learn more. If you are integrating messaging in a new app, start with FCM. GCM users are strongly recommended to upgrade to FCM, in order to benefit from new FCM features today and in the future."
I think this is the issue, basically we need an update.

Meh, I'm not sure. They said the same thing a few months back when I wrote the thing. Pretty sure they can't disable the old endpoints, because of old devices without updates.

Thinking the same as @nborrmann. Maybe something changed in the data to GCM? I'm not familiar at all with GCM or FCM so just guessing..

Now the verification with GCM is working again! Maybe it was just some issues with the GCM connection or something else sketchy  🙄

Which steps do you take to add a new account? j.verify_account() or j.get_captcha() doesnt exist. I tried to take a look at the jodel_api.py and discoverd verify() verify_push() and _read_verification() but how do I exactly use them? I tried to print(j.verify) but I get no code in return. _read_verification() always wants a android_account but what is this?

rtfm 😊

I get:
File "/usr/local/lib/python3.5/dist-packages/jodel_api-1.2.10-py3.5.egg/jodel_api/gcmhack.py", line 74, in get_push_token
raise GcmException(r.text)
jodel_api.gcmhack.GcmException: Error=PHONE_REGISTRATION_ERROR
Is there some issue with the gcm? Could I use the same data I get from my phone or is there some workaround?
Seems like vaahtokarkki got it to work, did you make some changes to the jodel_api yourself or does it work for you right out of the box?

@Asdfgasdfg312 For me activation still occasionally fails on PHONE_REGISTRATION_ERROR and socket closed by server. I haven't figured out any pattern why it fails so I guess its just some issues with GCM and just have to deal with it.

Hmm ok, are you running python 2.7 or 3? Would it make any difference? I get PHONE_REGISTRATION_ERROR 100% of the time

Since 2 days the verification is needed to get any jodel. I tried to verify it using the code:
lat, lng, city = 48.148434, 11.567867, "Munich" j = jodel_api.JodelAccount(lat=lat, lng=lng, city=city) a = jodel_api.AndroidAccount() j.verify(a) print j.get_account_data()
But the responses are still empty, do you got a way to verify it correctly?


Add Provinces to users + associate invited users with the province of whoever invited them

This PR does a bunch of things

Creates the HealthcareProvince model
Inserts provinces to the DB via a data migration. We know what they are ahead of time and we don't want to be able to add new ones or change them.
Creates a ForeignKey relationship with HealthcareUsers: A user can have 1 province, whereas a province can be associated with many users
Adds Provinces to the admin panel, but doesn't allow them to be edited or updated
Shows the province a user is associated with in the admin panel
Allows a user to be assigned a province when creating a new user directly in the admin panel
When inviting a user, the province of the inviter is preloaded into the form so that it will be associated with the new user
Adds some CSS for <select> fields and disabled fields

Note that I was having trouble with migrations locally (I think because I kept updating the migrations file), and eventually I just dropped my DB and recreated it. Since we don't have any real data, it might be easier to do this on our heroku instance if it's causing errors.
Screenshots

description
screen

admin portal now has "Provinces" with a "view" link (no editing allowed)

List of provinces — pretty standard

Admin list of users shows provinces

When creating a new user through the admin interface, you can select their province

Users who are invited to the service see a readonly field with the same province as whoever invited them

This pull request introduces 1 alert when merging 335767a into 47bbcdd - view on LGTM.com
new alerts:

1 for Unused import

Fixed


Remove About_*** Help that is specific to Windows

There are a bunch of About topics which are very windows specific and need to be culled from the LInux distribution.
More generally, we need to have a mechanism for general About files, WIndows-only About files and Linux-only About files.
Examples:
about_Eventlogs
about_Group_Policy_Settings
about_PSSnapins
about_Windows_RT
about_WMI
about_WMI_Cmdlets
about_WQL
about_Workflows

https://www.youtube.com/watch?v=8iztXdjBDMw&feature=youtu.be

Yeah, there's some (like Workflows, Snapins, and Workflows) that need to go away altogether. Then there's the Windows vs. Linux ones. This needs to be done by 6.0.0 for sure.

Rather than remove, is there a way we can make about topics conditional to the OS PowerShell is running on?
Module authors will run into this where an about topic may not apply to an OS or they will want to have different topic content depending on the OS.  It sure would be nice to have a single, cross-platform module distribution.
Maybe use a module dir structure like the following (if it exists) to serve up OS-specific help:
help\Windows
help\Linux
help\macOS

Should we move the issue in PowerShell-Docs repo? /cc @SteveL-MSFT

@iSazonov I don't believe the help documents nor PowerShell Help has a mechanism to differentiate help for a specific OS.  We need to add that capability first before addressing in Doc repo.  cc @adityapatwardhan

Is this something that Update-Help could do?  Allow Update-Help to determine what OS it's running on and clobber the "abouts" that aren't appropriate?

@sdwheeler - Is the applicable OS part of the new schema?

I had proposed adding metadata for platform that could be useful here. I hadn't thought about it for About_ topics but no reason not to include it. The hard part building platform specific cab files.
I think we should include the help for all platforms but have Get-Help filter the view to the platform and have a parameter to select the platforms you want to see.

I agree with @sdwheeler that we should have one Help package for all platforms. On Windows I can need to read Unix topics and vice versa. (Also there are remoting scenarios.)
I do not think we need new filter/parameter for the same reason.

I think that instead of removing these docs we should instead update them to call out they are only applicable in specific OS, (if the whole doc is OS specific) or sections where they contain OS specific documentation

@sdwheeler now that the help has OS notes can this issue be closed?

Including the help content on all platforms is by design.  Help content has been updated to include OS-specific caveats.


Access to apiservers fails from any container

From kube-dns:
E0713 20:38:46.910179       1 reflector.go:216] pkg/dns/dns.go:154: Failed to list *api.Endpoints: Get https://<IP_ADDRESS>/api/v1/endpoints?resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout
E0713 20:38:46.910318       1 reflector.go:216] pkg/dns/dns.go:155: Failed to list *api.Service: Get https://<IP_ADDRESS>/api/v1/services?resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout
I0713 20:38:46.910438       1 dns.go:172] Ignoring error while waiting for service default/kubernetes: Get https://<IP_ADDRESS>/api/v1/namespaces/default/services/kubernetes: dial tcp <IP_ADDRESS>:443: i/o timeout. Sleeping 1s before retrying.

From random pod:
$ kubectl run curl --image=tutum/curl:latest yes
deployment "curl" created

$ kubectl exec -it curl-14193874-k3esx bash

# curl https://<IP_ADDRESS>
curl: (7) Failed to connect to <IP_ADDRESS> port 443: Connection timed out

# curl https://<IP_ADDRESS>:6443
curl: (7) Failed to connect to <IP_ADDRESS> port 6443: Connection timed out

Routes:
$ gcloud compute routes list
NAME                            NETWORK     DEST_RANGE     NEXT_HOP                  PRIORITY
default-route-4e889f0c670475f9  default     <IP_ADDRESS>/0      default-internet-gateway  1000
default-route-6aca960aaec01e82  kubernetes  <IP_ADDRESS>/0      default-internet-gateway  1000
default-route-b3f6dfcccde00a9b  kubernetes  <IP_ADDRESS>/24                            1000
default-route-fe4c4def818434df  default     <IP_ADDRESS>/16                            1000
kubernetes-route-10-200-0-0-24  kubernetes  <IP_ADDRESS>/24  <IP_ADDRESS>               1000
kubernetes-route-10-200-1-0-24  kubernetes  <IP_ADDRESS>/24  <IP_ADDRESS>               1000
kubernetes-route-10-200-2-0-24  kubernetes  <IP_ADDRESS>/24  <IP_ADDRESS>               1000

Firewall rules:
$ gcloud compute firewall-rules list
NAME                         NETWORK     SRC_RANGES      RULES                         SRC_TAGS  TARGET_TAGS
default-allow-icmp           default     <IP_ADDRESS>/0       icmp
default-allow-internal       default     <IP_ADDRESS>/16   tcp:1-65535,udp:1-65535,icmp
default-allow-ssh            default     <IP_ADDRESS>/0       tcp:22
kubernetes-allow-api-server  kubernetes  <IP_ADDRESS>/0       tcp:6443
kubernetes-allow-healthz     kubernetes  <IP_ADDRESS>/22  tcp:8080
kubernetes-allow-icmp        kubernetes  <IP_ADDRESS>/0       icmp
kubernetes-allow-internal    kubernetes  <IP_ADDRESS>/24   tcp:0-65535,udp:0-65535,icmp
kubernetes-allow-rdp         kubernetes  <IP_ADDRESS>/0       tcp:3389
kubernetes-allow-ssh         kubernetes  <IP_ADDRESS>/0       tcp:22

What am I missing?

Communications between "real" hosts works:
worker0:~$ curl --cacert /var/lib/kubernetes/ca.pem  https://<IP_ADDRESS>
Unauthorized

worker0:~$ curl --cacert /var/lib/kubernetes/ca.pem https://<IP_ADDRESS>:6443
Unauthorized

I used these commands to delete secrets on the cluster:
kubectl delete -f ../dns/skydns-rc.yaml (Don't know if it's necesary) kubectl get secrets --all-namespaces kubectl delete secrets default-token-pzwtx --namespace=kube-system kubectl delete secrets default-token-pnotr
A few seconds after removing the secrets, both are recreated.
Then I created again dns replication controller and it worked as expected.
Hope this help you.
PD: I don't know what secrets are for...

@sgonzalezO thanks for suggestion, but it seems to be another case.
After recreation of default secrets and RC result still the same:
I0714 16:29:14.814649       1 dns.go:172] Ignoring error while waiting for service default/kubernetes: Get https://<IP_ADDRESS>:443/api/v1/namespaces/default/services/kubernetes: dial tcp <IP_ADDRESS>:443: i/o timeout. Sleeping 1s before retrying.
E0714 16:29:14.817562       1 reflector.go:216] pkg/dns/dns.go:154: Failed to list *api.Endpoints: Get https://<IP_ADDRESS>:443/api/v1/endpoints?resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout
E0714 16:29:14.817934       1 reflector.go:216] pkg/dns/dns.go:155: Failed to list *api.Service: Get https://<IP_ADDRESS>:443/api/v1/services?resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout

We are also seeing this exact same issue (including it working from the host), though we are not using google cloud. Did you find a solution?

I saw ran into this, figured I'd share.  Took a lot of tcpdump to hunt it out.
In cloud platforms, you will most likely run into two issues:

routing
ACL/security groups for the docker pods to any other system (aka, the Kubernetes API).

When you see an error like this:
Failed to list *api.Service: Get https://<IP_ADDRESS>:443/api/v1/services?resourceVersion=0: dial tcp <IP_ADDRESS>:443: i/o timeout

There is a very good chance it is one of the above.  When kubedns accesses the API server using the service address (<IP_ADDRESS>/24), it will actually access the API server via the 10.240.x.x:6443 address.  I believe iptables is NAT'ing 10.32.x.x:443 to 10.240.x.x:6443.  I like to cheat when discovering issues like this, so I vigorously use tools like tcpdump. If you tcpdump on the kubelet server (or API server that answers), you'll see something like:
12:10:35.974682 IP <IP_ADDRESS>.48726 > <IP_ADDRESS>.6443: Flags [S], seq<PHONE_NUMBER>, win 29200, options [mss 1460,sackOK,TS val 36831829 ecr 0,nop,wscale 7], length 0

What you're seeing is kubedns performing the error listed by @Bregor .  You can reproduce the error by running curl -k https://<IP_ADDRESS> (just to generate traffic) in an interactive Kubernetes pod (command at the end of this post). After that, I used kubectl describe pods to find where it was running (what kubelet), then launched tcpdump on that specific kubelet.
After that, what you need to determine is if it's a routing issue or ACL/security group.  You now know which API server the request is going to from that tcpdump output.  tcpdump on that host and verify traffic arrives.  If you see no such traffic, it's most likely ACL/security group issues with your cloud provider.  Note that some restrict foreign CIDR traffic (if your VPC or whatever CIDR is <IP_ADDRESS>/16, <IP_ADDRESS>/16 is foreign and it may be filtering it by default).
If in the tcpdump you see the API server is attempting to answer the request, it most likely is a routing issue.  you'll want to route the 10.200.x.x/24 traffic to the appropriate kubelet.
TLDR; vigorous use of tcpdump to determine if it's a routing issue or ACL/security group issue.
Also a handy command for launching an interactive Kubernetes pod (using CentOS instead of Ubuntu because this Docker image has curl and host commands):
kubectl run -i -t centos7interactive2 --restart=Never --image=centos:7 /bin/bash

I ran into this same issue (not using google cloud). Solved by adding route to 10.200.x.x/24 on the controller/api node.
EX:
kubectl get nodes \
  --output=jsonpath='{range .items[*]}{.status.addresses[?(@.type=="InternalIP")].address} {.spec.podCIDR} {"\n"}{end}'

output:
<IP_ADDRESS> <IP_ADDRESS>/24
SSH onto the API server and run:
route add -net <IP_ADDRESS> netmask <IP_ADDRESS> gw <IP_ADDRESS>

The real fix for this issues is to ensure the --no-source-dest-check flag is set on EC2 instances. For example:
aws ec2 modify-instance-attribute \
  --instance-id ${CONTROLLER_0_INSTANCE_ID} \
  --no-source-dest-check

I've updated this guide with support for AWS that captures these requirements as well.
https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/01-infrastructure-aws.md
Let me know if this works.

This should be fixed with the latest updates to the guide. Please feel free to reopen this issue if that is not the case. See my previous comment regarding updated docs for amazon.

I have the same issue timed out cannot access to apiserver from a container,
[ root@redis-master:/data ]$ curl https://<IP_ADDRESS>:443/api
curl: (7) Failed to connect to <IP_ADDRESS> port 443: Connection timed out

Open new issue #128 since this is a close issue.

@kelseyhightower
I faced the same issue and when I modified the kube-proxy mode from iptables to ipvs, it worked...


[Autocomplete][joy] Make the popup indicator less opaque when disabled

[x] I have followed (at least) the PR section of the contributing guide.

Closes #36395
Preview: https://deploy-preview-36397--material-ui.netlify.app/joy-ui/react-autocomplete

Agree. Addressed!


viewForSupplementaryElementOfKind and bidirectional binding

Hi all,
In the collection view header we have a button, which state is shared with other controller using shared view model.
implementing collection view
optional func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView.:
...
//Custom dequeue method
let header = collectionView.dequeueReusableSupplementaryView(with: type,
                                                                         ofKind: headerType, for: indexPath)
self.sharedViewModel!.buttonState.bidirectionalBind(to: header.button.selected)
...

The main issue here - since viewForSupplementaryElementOfKind is called when the header is going to be shown, binding is going to be added multiple times.
I've tried storing header in the instance variable and escape using guard if viewForSupplementaryElementOfKind will be called several times. But for some reason, it seems that the header returned from dequeueReusableSupplementaryView breaks the previous bidirectionBinding, even though it has the same address in the memory.
Is there a possibility to check if the observable already has a binding? Or what would be the correct way to achieve bidirectional binding in collectionview header?
Thanks

So I've fixed the issue with introducing an addtional viewmodel, which stores the state of the button and restores on dequeueReusableSupplementaryView. So in dequeueReusableSupplementaryView no binding is happening anymore.


Javascript reference setSession docs are incorrect (recent change?)

Improve documentation
Link
https://supabase.com/docs/reference/javascript/auth-setsession

Describe the problem
The docs show using a refresh_token in two spots, but the parameter is listed as a session object and that was what they used to show I believe.
refreshSession() also seems strange...
Describe the improvement
A clear and concise description of the improvement.
Additional context
Add any other context or screenshots that help clarify your question.

I'm not sure why this hasn't been resolved. I guess the team is extremely busy. I'll write up a PR, but I'm unsure how soon it'll get merged.
I believe the contradiction on the page is because the parameters section comes from the code in the gotrue-js repo, but the rest of the page comes from code in the supabase repo.
As for refreshSession, it is correct. What is strange about it? Maybe something needs clarified.

@j4w8n Yeah, I did not pursue fixing in the docs as it got moved from there and it seems like several of the reference docs have been redone with error or missing info that existed just weeks ago in the v2 docs.  So I worried it was being done some other way as valid info was being thrown out like the process had changed and not just moving the old.
On refreshSession, I missed the brackets around refresh_session and am used to seeing objects spelling out in the docs like {refresh_session:refresh_session} but understand what they mean on closer look.


[SPARK-39015][SQL] Remove the usage of toSQLValue(v) without an explicit type

What changes were proposed in this pull request?
This PR proposes to remove the the usage of toSQLValue(v) without an explicit type.
Literal(v) is intended to be used from end-users so it cannot handle our internal types such as UTF8String and ArrayBasedMapData. Using this method can lead to unexpected error messages such as:
Caused by: org.apache.spark.SparkRuntimeException: [UNSUPPORTED_FEATURE] The feature is not supported: literal for 'hair' of class org.apache.spark.unsafe.types.UTF8String.
  at org.apache.spark.sql.errors.QueryExecutionErrors$.literalTypeUnsupportedError(QueryExecutionErrors.scala:241)
  at org.apache.spark.sql.catalyst.expressions.Literal$.apply(literals.scala:99)
  at org.apache.spark.sql.errors.QueryErrorsBase.toSQLValue(QueryErrorsBase.scala:45)
  ...

Since It is impossible to have the corresponding data type from the internal types as one type can map to multiple external types (e.g., Long for Timestamp, TimestampNTZ, and LongType), the removal approach was taken.
Why are the changes needed?
To provide the error messages as intended.
Does this PR introduce any user-facing change?
Yes.
import org.apache.spark.sql.Row
import org.apache.spark.sql.types.StructType
import org.apache.spark.sql.types.StringType
import org.apache.spark.sql.types.DataTypes

val arrayStructureData = Seq(
Row(Map("hair"->"black", "eye"->"brown")),
Row(Map("hair"->"blond", "eye"->"blue")),
Row(Map()))

val mapType  = DataTypes.createMapType(StringType, StringType)

val arrayStructureSchema = new StructType().add("properties", mapType)

val mapTypeDF = spark.createDataFrame(
    spark.sparkContext.parallelize(arrayStructureData),arrayStructureSchema)

spark.conf.set("spark.sql.ansi.enabled", true)
mapTypeDF.selectExpr("element_at(properties, 'hair')").show

Before:
Caused by: org.apache.spark.SparkRuntimeException: [UNSUPPORTED_FEATURE] The feature is not supported: literal for 'hair' of class org.apache.spark.unsafe.types.UTF8String.
  at org.apache.spark.sql.errors.QueryExecutionErrors$.literalTypeUnsupportedError(QueryExecutionErrors.scala:241)
  at org.apache.spark.sql.catalyst.expressions.Literal$.apply(literals.scala:99)
  at org.apache.spark.sql.errors.QueryErrorsBase.toSQLValue(QueryErrorsBase.scala:45)
  ...

After:
Caused by: org.apache.spark.SparkNoSuchElementException: [MAP_KEY_DOES_NOT_EXIST] Key 'hair' does not exist. To return NULL instead, use 'try_element_at'. If necessary set spark.sql.ansi.enabled to false to bypass this error.
== SQL(line 1, position 0) ==
element_at(properties, 'hair')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

How was this patch tested?
Unittest was added. Otherwise, existing test cases should cover.

cc @gengliangwang @MaxGekk FYI

Literal(v) is intended to be used from end-users so it cannot handle our internal types such as UTF8String and ArrayBasedMapData.

When I added two methods toSQLValue(), I supposed to use:

def toSQLValue(v: Any, t: DataType) with internal value
def toSQLValue(v: Any): String w/ external like String

If you need to pass somewhere an internal value, just use the first method. Why do you need to remove the second one, I didn't get.

def toSQLValue(v: Any): String w/ external like String

Actually, I think this is error-prone (e.g., see the reported and fixed case here). With def toSQLValue(v: Any, t: DataType), you can use it everywhere without thinking about internal or external.

you can use it everywhere without thinking about internal or external

Now, you have to convert String to UTF8String (maybe other values) everywhere which is inconvenient.

Can't you just use correct function, and don't remove another one. And add comments to functions. Removing the second function seems like unrelated to the fix.

Now, you have to convert String to UTF8String (maybe other values) everywhere which is inconvenient.

We actually don't need to convert. This works Liternal.create(a: String, StringType).

I thought that it's easier to have one function to use it everywhere vs having two to use. I can separate the fix if you still think it's arguable.

I can separate the fix if you still think it's arguable.

Isn't needed, if it is possible to point out the type in all cases and toSQLValue() can handle "external" types as well.

https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/literals.scala#L155-L164
https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/CatalystTypeConverters.scala#L500-L522
Here, all external types are listed - if they are some missing, it's a bug. They are converted to Literal(internal value).
If the given value isn't external type, they will be just Literal(v).
There seems two cases missing Char and collection.mutable.WrappedArray where both were added lately. I think they missed to fix ti here together.

+1, LGTM. Merging to master.
Thank you, @HyukjinKwon.

@HyukjinKwon Could you backport the changes to branch-3.3, please.

sure


App force update when a new version of app is available in playstore with backend config

App force updates when a new version of the app is available in the play store.

An option in the backend configuration with apkVersionId, and apkVersion details.
If Backend configuration is done to force an update, version details also need to be passed.

https://stackoverflow.com/questions/19244305/force-update-of-an-android-app-when-a-new-version-is-available

Dev testing in progress...

In backend we have configured a flag which name is "isAppForceUpdateEnabled"
If isAppForceUpdateEnabled flag is true then app force update feature will be triggered
If playstore's app has a new version then in app there would an alert populate which show user an alert message to force app update.
If there is any error occurred while populating alert message of app force update we are supporting to share error log with dev team.

Hi @arman-tdev and team,
For testing the force update feature, refer to the below links:
https://stackoverflow.com/questions/56087064/how-can-i-test-in-app-updates-in-android
https://developer.android.com/reference/com/google/android/play/core/appupdate/testing/FakeAppUpdateManager

Hi @arman-tdev ,
multiple users on the same device- If marks Info is already saved in the device make sure that data don't lose marks data.

Hi @arman-tdev ,
Also explore if an app is already open and if there is a version update in the play store, an event to be triggered on all key clicks on the app (Save All Marks, Scan, etc).


Fixed SQL acronym

Summary of changes
Typo correction only: 'SQL' stands for 'Structured Query Language' not 'Search and Query Language'.
Source: SQL Wikipedia article
Relevant Context

Feature: None
Relevant Pull Request: None

How Has This Been Tested?
Not required, text content change only.
Screenshots (if appropriate):
N/A
Further comments
None

Types of changes

[x] Content edit, File upload, content addition
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Technical Documentation Update
[ ] Other (please describe):

Does this introduce a breaking change?
Breaking change is defined as "A fix or feature that would cause existing functionality to change."

[ ] Yes
[x] No

Checklist:

[x] My code follows the code style of this project.
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have added/changed necessary documentation (if appropriate)
[x] All new and existing tests passed.

Lol, thank you so much @davidlpoole and please forgive my ignorance :sweat_smile:


fixed mysql plugin tests

Description
Fix for mysqlPlugin tests failing on WSL and Ubuntu.
The reason testcases were failing because queries to create tables was executed in a batch, batch returns result for each query executed. The problem was we were creating Mono from batch.execute and blocking on it. Since Mono is a single value publisher, blocking on it will only block till the result of first query. Later on test cases fail because not all create queries have completed by the time.
Using Flux instead of Mono solves that because it is a multi value publisher and we are calling blockLast on it, which will block until the result of last query, to make sure that all the queries have been executed when the block is complete.
Fixes #13998
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

NA

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

/ok-to-test sha=7e24ae212645d27818481a434021a89b6f44f16d

Hi @sidhantgoel can you please mention in the description why the tests were failing earlier and why the proposed change would fix it ?

Updated the description

/ok-to-test sha=47a4023


Add General Tasks

Pull Request

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#15
#14
#13  👈
#12
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @JackPlowman and the rest of your teammates on  Graphite

Merge activity

Oct 27, 2:37 PM EDT: A user started a stack merge that includes this pull request via Graphite.


TopDown Reconciliation Error Without All Forecasts

What happened + What you expected to happen
Reconcile method TopDown with average_proportions appears to require forecasts for all hierarchy levels even though in TopDown you should just need the forecasts at the top and the historical values for all combinations. I tried filling in all missing hierarchies in the Y_hat_df with dummy values like 1, but the top-down forecasts are impacted.
Am I missing something?
Versions / Dependencies
hierarchical_forecast ~ 0.4.2
Reproduction script
import numpy as np
import pandas as pd

from statsforecast.core import StatsForecast
from statsforecast.models import AutoETS

from hierarchicalforecast.core import HierarchicalReconciliation
from hierarchicalforecast.evaluation import HierarchicalEvaluation
from hierarchicalforecast.methods import TopDown

from hierarchicalforecast import utils

# Parameters for dataset creation
n_rows = 1000
date_range = pd.date_range(start='2020-01-01', periods=n_rows, freq='MS')
group_col_one_values = ['A', 'B', 'C']
group_col_two_values = ['X', 'Y', 'Z']

# Create the dataset
data = pd.DataFrame({
    'group_col_one': np.random.choice(group_col_one_values, size=n_rows),
    'group_col_two': np.random.choice(group_col_two_values, size=n_rows),
    'ds': date_range,
    'y': np.random.randint(1, 100, size=n_rows)
})

# Create Top Level to Generate Forecasts
top_data = data.groupby(by=['group_col_one', 'ds'])['y'].sum().reset_index()
Y_top_df, S_top_df, tags_top = utils.aggregate(top_data, [['group_col_one']])

# Create Historical Values of Both 'Top' & 'Bottom'
Y_hist_df, S_hist_df, tags_hist = utils.aggregate(data, [['group_col_one'], ['group_col_one', 'group_col_two']])

# Produce Top Level Forecasts to use for Disaggregation
fcst = StatsForecast(models=[AutoETS(season_length=12)],
                     freq='MS')
Y_hat_df = fcst.forecast(h=12, df=Y_top_df)
reconcilers = [
            TopDown(method='proportion_averages'),
        ]
hrec = HierarchicalReconciliation(reconcilers=reconcilers)
Y_rec_df = hrec.reconcile(Y_hat_df, S_hist_df, tags_hist, Y_hist_df)

Issue Severity
None

THanks for raising the issue; I can reproduce.
I'll have to think about this a bit; I agree with your point that forecasts should only be required for the Top, but the implemented checks prevent that. Before simply bypassing these checks in this case I need to test a bit further if nothing else breaks.

It is an interesting quirk of the design. I noticed it too but did not really think too much into it because in my current use cases, which do not use this library yet, I generate forecasts for all levels. Of course, I can appreciate that in production, if you and your practitioner(s) decide on a particular single-level approach, there is no need to exhaustively forecast at every level or mess about with reshaping Y_hat_df yourself, so thanks Olivier for looking into it! 👍
The forecasts for average_proportions should be the same regardless of the forecasts of the lower levels though, so that is a worry if you fill them with $1$ and get strange results? Actually, come to think of it, we do not even need the in-sample values of the "middle" levels for this scenario, just the top and bottom levels.


Reorganise and add preprocessor

This PR:

Creates a set of "input" nam files which are run through a human-friendly preprocessor to generate the "output" nam files
Moves these "output" nam files into the Lib/gfsubsets/data directory, to be used by a soon-to-come Python library.
Systematizes the additional codepoints in certain nam files (such as those using syllabic shaping and CJK punctuation).
Regenerates and updates the "output" nam files to match changes in Unicode 14 and 15.

The only codepoints removed from nam files are those which absolutely shouldn't be there. For example, when we had sample texts in transliterated Sanskrit, we tried adding things like DEVANAGARI SIGN AVAGRAHA to various subsets to try to make them work. That wasn't a good idea and they should be removed. Otherwise, everything else is a superset of what was there before.

Could we separate restructuring without changing the subset:codepoints mappings from altering what's actually in the subsetes? - the former is fine, the latter we want to be somewhat careful with as it will impact user traffic. It's hard to understand what mappings changed when it's all mixed together.

Could we separate restructuring
isn't that in the commit structure already?

I mean separate PRs as the natural way to review is per PR not per commit

OK, I split this into 2 PRs, #3 which is the do-nothing reorganisation, and then this one which applies on top of it.

Ty. If you set the base branch for this then we'll see the right diff by default. GH has become good about updating it on merge (e.g. merge #3, this one will then target main)

I merged the other PR, could you rebase this one and then I'll review.