add new cli options --sourcefolder and --filepattern

I decided to to have a go at it, and provide a possible solution for #118.
I tried my best to adhere to the current code style.
As already mentioned in the issue, my assumption was correct. The clean-up duration goes waaaaaaay down with the folder approach. It took just about ~1.5s to format 170 files.

Hi Ludwig,
excellent, thank you so much for this! Yes, initializing the RND Parser with the ABAP grammar takes quite some time, and I guess this had to be done for each file, so indeed, this enhancement would be a great improvement.
Currently one test goes red, which checks whether all options are mentioned somewhere in the help text that is provided by the CommandLineArgs.getHelp() method. I will also look a bit more closely and add comments via code review if I find something. Generally, from what I can see, great work adjusting to ABAP cleaner code style!
Kind regards,
Jörg-Michael

Ah, yes. I forgot about the cli help 🤦♂.
I am also not sure about this if block https://github.com/SAP/abap-cleaner/pull/123/files#diff-d18497e09ac791eeb199ad36c2ea9f6eb5a14d2523d1ef75056cba6eea7e7133R73, so it also should contain a check for OPT_SOURCE_FOLDER

Hi Jörg-Michael,
I made the requested adustments, hopfully I got them all 😅.
This is the new help output of the cli:
Usage: .\abap-cleanerc.exe { --sourcedir sourcedir [--filepattern filepattern] } / { {--sourcefile sourcefile / --source sourcecode } [--linerange linerange] }
                           [{ --profile profile / --profiledata profiledata }] [--release release]
                           [{--targetfile targetfile / --targetdir targetdir} [--overwrite]] [--partialresult]
                           [--stats] [--usedrules]

Example: .\abap-cleanerc.exe --sourcefile "CL_ANY_CLASS.txt" --linerange "20-35" --profile "team profile.cfj" --release "757" --targetfile "result\CL_ANY_CLASS.txt" --overwrite --stats --usedrules

Options:
    --sourcefile        File name of an ABAP source file which is input to the cleanup.
    --source            ABAP source code which is input to the cleanup.
    --sourcedir         Folder that contains ABAP source files (default file pattern is "*.abap")
                        Please use either --sourcefile or --source or --sourcedir.
    --filepattern       File pattern to look for (only relevant when --sourcedir has been supplied)
    --linerange         Single line range for partial cleanup, e.g. "20-35"
                        Without this option, the cleanup will be applied to the whole code document.

    --profile           File name of the cleanup profile to be used (extension .cfj).
                        From the UI, you may use button 'Export...' from the profiles editor to create the file.
    --profiledata       Content of the cleanup profile to be used.
                        Please use either --profile or --profiledata (or none for program defaults).
    --release           ABAP release to restrict syntax of cleanup changes, e.g. "758"
                        Without this option, the latest ABAP syntax will be allowed.

    --targetfile        Target file name to which the cleanup result will be saved.
                        Without this option, the cleanup result will be written to the standard output.
    --targetdir         Target directory, required if option --sourcedir was supplied
    --overwrite         Overwrite target file if it already exists.
                        Without this option, an error will be raised if the target file already exists.
    --partialresult     Restrict output to the cleanup result of the --linerange (if supplied).
                        Without this option, the cleanup result of whole code document will be returned.

    --stats             Write statistical summary to standard output.
    --usedrules         Write list of used rules to standard output.

I have only one additional change request, that I did not implement. If working with abapGit repositories, each ABAP file is always ended with a newline (lf) character. The abapGit report adds this newline behind the scene, as the web editors like GitHub are doing the same thing.
ABAP Cleaner currently does not do this, and so I would have always at least this one diff if I clean a whole lot of files.

The code adjustment would be very simple. I am not sure if an extra cli option is required for this. Because if the source file is added to a Git repository, it is required anyhow, and if not, who does it hurt.
Kind regards,
Ludwig

Hi Jörg-Michael,
I added a new option  --recursive, as it is probably best the user has to specify it.
Additionally the --targetdir is now optional and will be automatically set to the passed --sourcedir if not specified.
Regarding the unit tests. I think all new branches in CommandLineArgs should be covered now, but I couldn't check it as I didn't manage to get the coverage running correctly in my Eclipse.
Kind regards,
Ludwig

Hi Ludwig,
awesome!! Thank you soo much for all your efforts, including rework, writing tests etc., this is a great!
I meanwhile worked on some bugfixes and will maybe manage to implement another issue, but the plan would be to build the next release on Monday.
Kind regards,
Jörg-Michael

Hi Jörg-Michael,
it would great if could solve issue #124 as well until the next release. As explained, it is just a small thing, and I would be happy to do it 😄 .
Kind regards,
Ludwig

Hi Ludwig,
sure, no problem, and happy to do that! (So you don't have to create another Pull Request etc.)
Kind regards,
Jörg-Michael


compcert: 3.5 → 3.6; ocamlPackages.menhir: 20181113 → 20190626

Things done

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

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

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

Notify maintainers
cc @maggesi (menhir) @thoughtpolice @jwiegley (CompCert)

@GrahamcOfBorg build fstar reason eff framac


azcopy login --identity not working for pod identities

Version
azcopy version 10.4.0
Env
FROM alpine AS build
RUN apk add --no-cache wget \
&&	wget -qO- https://aka.ms/downloadazcopy-v10-linux | tar xvz \
&&	cp azcopy_linux_amd64_10.4.0/azcopy /usr/bin

FROM alpine:3.9 AS final
RUN apk update && apk add libc6-compat ca-certificates
COPY --from=build /usr/bin/azcopy /usr/local/bin/azcopy
RUN ldd /usr/local/bin/azcopy

What command did you run?
azcopy login --identity
What problem was encountered?
Failed to perform login command:
failed to get token from msi, status code: 404

How can we reproduce the problem in the simplest way?
create aks cluster, add pod identity plugin, start pod
kubectl run my-shell --rm -i --tty --image <image-name> --labels="aadpodidbinding=<identity>" -- ash

Have you found a mitigation/solution?
Nope, i've tested on a standalone VM running ubuntu on azure and assigned the a user identity and azcopy login worked correctly. It has the correct permission, in addition I am using key vault and getting keys using the identity works.
I am going to try a different OS for the container see if that is the issue.

Can't leave ya'll without a solution! Here is a python based work around, haven't tested it yet but I am about to. It isn't as robust as it could be but it's a quick fix :D I'd make it in go for you $MS guys but I don't know go very well. Will need to modify with vault name and secret name.
Example Usage
azcopy.py  -src c:\tmp\test -des foo -c staging -exclude c:\tmp\
import os, uuid
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
from azure.identity import DefaultAzureCredential
from azure.keyvault.secrets import SecretClient
import sys, glob
import argparse

# inspired from https://stackoverflow.com/questions/3397752/copy-multiple-files-in-python
def recursive_copy_files(container_client, source_path, destination_path, **kwargs):
    """
    Recursive copies files from source  to destination directory.
    :param source_path: source directory
    :param destination_path: destination directory
    :param override if True all files will be overridden otherwise skip if file exist
    :return: count of copied files
    """

    if kwargs.get('path_exclude'):
        path_exclude = kwargs['path_exclude']

    files_count = 0
    items = glob.glob(source_path + '/*')
    for item in items:
        if os.path.isdir(item):
            path = os.path.join(destination_path, item.split('/')[-1])
            files_count += recursive_copy_files(container_client, source_path=item, destination_path=path, **kwargs)
        else:
            file = os.path.join(destination_path, item.split('/')[-1])
            file = file.replace(path_exclude, '')
            print(file)
            blob_client = container_client.get_blob_client(file)
            print(item)
            with open(item, "rb") as data:
                blob_client.upload_blob(data)
            files_count += 1
    return files_count

def main(argv):
    parser = argparse.ArgumentParser()
    parser.add_argument('-src')
    parser.add_argument('-des')
    parser.add_argument('-c')
    parser.add_argument('-exclude')
    args = parser.parse_args()
    src = args.src
    des = args.des
    container_name = args.c
    path_exclude = args.exclude

    print("Source is " + src)
    print("Destination is " + des)
    print("Container is " + container_name)

    credential = DefaultAzureCredential()

    secret_client = SecretClient("https://<vaultname>.vault.azure.net", credential)

    connect_str = secret_client.get_secret("<secret>").value

    blob_service_client = BlobServiceClient.from_connection_string(connect_str)
    container_client = blob_service_client.get_container_client(container_name)
    file_count = recursive_copy_files(container_client, src, des, path_exclude=path_exclude)
    print(file_count)

if __name__ == "__main__":
   main(sys.argv[1:])

ugh it's fixed apparently the identity was removed from the vmss. I'll leave this hear for future people.

Thanks @washcycle  for you thoughtful input.  As you say, others may find it useful in future.


Add simapp chain to CI with no IBC connections

Add additional chain in the CI with no connections/channels to test parts of the commands which produce different output when operating on a clean chain.
Context: https://github.com/confio/ts-relayer/pull/126#discussion_r595891527
examples of such commands:

ibc-setup connections has a different output when no connections exist
ibc-setup channels has a different output when no channels exist

Alternative idea
Should we consider stubbing the ibc client in this case? It means just unit testing (without chain instance involved).

This was closes with #102


open with w and a, write/seek/truncate/tell

import pyfakefs.fake_filesystem
import os
fs = pyfakefs.fake_filesystem.FakeFilesystem()
fs.CreateDirectory('/Volumes')
fs.CreateDirectory('/Volumes/ramdisk')
fs.CreateDirectory('/Volumes/ramdisk/test')
os0 = pyfakefs.fake_filesystem.FakeOsModule(fs)
opener0 = pyfakefs.fake_filesystem.FakeFileOpen(fs)
component0 = "alpha"
path0 = "/Volumes/ramdisk/test"
path0 += "/" + component0
bytes0 = 0
bytes0 += 1
str0 = ""
str0 += 'a'
str0 += 'a'
str0 += 'a'
str0 += 'a'
str0 += 'a'
str0 += 'a'
file0 = opener0(path0,'w')
file1 = opener0(path0,'a')
file1.write(str0)
file0.seek(bytes0)
file0.truncate()
result = file1.tell()
print result
os 7 vs. pyfakefs 6

Hm, can't reproduce this one. I get 6 in pyfakefs.

oops, reversed pyfakefs and os!

updated

Hm, I don't understand why it shall be 7 - why not 6? After writing 6 bytes the position shall not have moved - what am I missing?

Not sure.  This extension produces the same file contents, but the tell result is different.
component0 = "alpha"
path0 = "/Volumes/ramdisk/test"
path0 += "/" + component0
bytes0 = 0
bytes0 += 1
str0 = ""
str0 += 'a'
str0 += 'a'
str0 += 'a'
str0 += 'a'
str0 += 'a'
str0 += 'a'
file0 = opener0(path0,'w')
file1 = opener0(path0,'a')
file1.write(str0)
file0.seek(bytes0)
file0.truncate()
file1.write('b')
file0.close()
file1.close()
file2 = opener0(path0,'r')
print file2.readline()
Hrm.

Hmm. Have to understand this first, otherwise I have no idea how to fix it... I can reproduce the behavior under Windows (e.g. tell = 7), at least under Python 3, so there shall eb a reason...

I have still no real idea why this happens. It does not happen under Windows in Python 2, but happens in Python 3 (same as flush on reading, probably related). I happens only if file1 is open in append mode, file0 can be opened in both write or append mode. After the seek zeros are written to the file until the seek position, and the previously written content is appended to this. This happens the moment file1.tell() or file1.close() is called, e.g. on flush of file1.
Ok, that means that before flush() in append mode the position is reset to the current end of file - that makes some sense.
Note that I'm writing this more or less for my own reference, just thinking aloud... don't have a duck here ;)

Reopen as the fix broke other things.


Adding code for TREC2018 News Track Background Linking task runs

This task is a bit different from other adhoc/web tasks where the query of this task is actually a document id instead of one or multiple terms.
I basically changed three places to accommodate the task:

Create the NewsTrackBLTopicReader where it reads the query document id and applies different strategies to generate the actual query terms. The strategies include:

extract high tf-idf terms with the weights from the document
extract the terms as their original order from the document and applies SDM
extract the unweighted high tf-idf terms and applies Axiomatic Reranking
Similar to ii, but on paragraph level. The final result is the generated by picking the results from the paragraph queries in a round-robin fashion.
Similar to iii, but on paragraph level. The final result is the generated by picking the results from the paragraph queries in a round-robin fashion.

Create the function searchNewsBackground in SearchCollection.java in order to deal with the non-trivial processing of the task.
Create NewsTrackBLReranker where it can remove the duplicated results as per task requirement.

Just a quick review for now...
@Kytabyte comments?


Robustness fixes for zip(...) and similar iteration

Julia zip(iters...) doesn't check that the supplied iterators have the same length.
This means that PALEO code that eg iterates over lists of Variables is fragile if a coding error somehow creates lists of different lengths.
To workaround this, add
IteratorUtils.check_lengths_equal(iters...)
IteratorUtils.zipstrict(iters...)
and also update IteratorUtils.foreach_longtuple and similar to check lengths

Codecov Report

Merging #13 (1e1d69e) into main (24bbb46) will increase coverage by 0.01%.
The diff coverage is 43.85%.

@@            Coverage Diff             @@
##             main      #13      +/-   ##
==========================================
+ Coverage   53.88%   53.89%   +0.01%
==========================================
  Files          36       36
  Lines        3526     3542      +16
==========================================
+ Hits         1900     1909       +9
- Misses       1626     1633       +7

Impacted Files
Coverage Δ

src/data/ArrayScalarData.jl
46.15% <0.00%> (ø)

src/data/AtomicScalar.jl
6.66% <ø> (ø)

src/reactionmethods/VariableStatsMethods.jl
94.44% <ø> (ø)

src/utils/TestUtils.jl
0.00% <0.00%> (ø)

src/reactioncatalog/Reservoirs.jl
66.66% <20.00%> (+0.41%)
:arrow_up:

src/utils/IteratorUtils.jl
24.75% <37.83%> (+5.70%)
:arrow_up:

src/reactioncatalog/GridForcings.jl
9.43% <50.00%> (-0.57%)
:arrow_down:

src/ReactionMethod.jl
82.14% <100.00%> (ø)

src/VariableReaction.jl
58.22% <100.00%> (ø)

src/reactioncatalog/Fluxes.jl
80.76% <100.00%> (+0.14%)
:arrow_up:

... and 2 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 24bbb46...1e1d69e. Read the comment docs.


Expose HTTP proxy configuration in OneKE

RKE2 has an option for HTTP[S]_PROXY / NO_PROXY, this configuration options should be exposed
https://docs.rke2.io/advanced#configuring-an-http-proxy

Added in new OneKE 1.31 release: https://github.com/OpenNebula/one-apps/pull/153


Evangelion Battlefield Crashing On Rigged Models

honestly i can type about it a lot but a lot of the info is already in this page about it. https://www.gildor.org/smf/index.php?topic=7112.0 also with the pak it has it there. the only thing that does work is the non rigged meshes in ue 4.24

First of all, this - https://github.com/gildor2/UEViewer/issues/113
There's a PR with the game's support, but I didn't have time to get into it yet - https://github.com/gildor2/UEViewer/pull/176

First of all, this - https://github.com/gildor2/UEViewer/issues/113
There's a PR with the game's support, but I didn't have time to get into it yet - https://github.com/gildor2/UEViewer/pull/176

ah fair enough. i didnt see the thing about 113 so im sorry i didnt see that before. i did try to do a search to see if it was posted or not. so i apologise for not seeing finding that one earlier. hope i didnt cause you any annoyance. ill just keep track of 176 and take your time gildor. so i should be able to close this one without it affecting 176 right?

ah fair enough. i didnt see the thing about 113 so im sorry i didnt see that before. i did try to do a search to see if it was posted or not. so i apologise for not seeing finding that one earlier. hope i didnt cause you any annoyance. ill just keep track of 176 and take your time gildor. so i should be able to close this one without it affecting 176 right?


updated Newtonsoft.Json to 10.0.3

Updated to Newtonsoft.Json to 10.x and fixed JsonContractResolver accordigly

Hi, Any news about this pull request? There´s another away to use Masstransit and Newtonsoft.Json to 10.0.3 on the same solution?

Hi,
The pull request has still not yet been merged.
It seems we either have to build our own version of MassTransit or to
create own message serialization. Both mean "effort"...
Regards,
Alexey
2017-10-30 13:50 GMT+01:00 luis.silva<EMAIL_ADDRESS>
Hi, Any news about this pull request? There´s another away to use
Masstransit and Newtonsoft.Json to 10.0.3 on the same solution?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/MassTransit/MassTransit/pull/943#issuecomment-340434295,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF1MoJ5AI-s2YT384SAHq4qY8H9uhmXxks5sxcYkgaJpZM4OfNpo
.

It's highly unlikely this will be updated for v2, since it's only here for legacy support and most people using it aren't going to upgrade JSON.NET.

Actually this is causing us more and more issues as every other library upgrades their required version of JSON.NET past version 9.0.1, the last version supported by MassTransit.
We're stuck on MassTransit v2 because support for MSMQ was dropped and I imagine anyone using v2 is in a similar situation.
Is there an issue with releasing another patch for the v2 branch or is there a simpler solution I'm missing?


Refactor reactor API interactions.

CR+1

Looking great at all. Can think about some fanciness to make the upload bundle and script available as system commands but i can take care of this on some free time. CR :+1:


fix: correct display name for junit5 verification provider

@uglyog The displayName was only showing the consumerName.
I'm not sure if this change will be correct under all circumstances. I've tested it locally for our case of tagged, non-pending pacts coming form the broker.
My use of kotlin might be dodgy here... let me know if you think that the implementation makes sense and if it could be re-written more elegantly.
I haven't found any tests for the displayName. Should we add some?


Create toolhelp32 snapshot

I have a question
How do you determine in line 260 of process.py the data type?
pls let me know if the PR is ok
thx

ok I noticed tha i'm missing the return info

how I should define constats from the MSDN docs?

[Current coverage][cc-pull] is 97.86%

Merging [#101][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.66%

Powered by Codecov. Last updated by [3c04364...f2a6800][cc-compare]
[cc-base-branch]: https://codecov.io/gh/opalmer/pywincffi/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/opalmer/pywincffi/compare/3c0436458878c0efba601cb2a66fe07dec80a29c...f2a6800ad98e823a57fba5010079c82729d945f1
[cc-pull]: https://codecov.io/gh/opalmer/pywincffi/pull/101?src=pr

thx for the comments will check

To answer your questions:

How do you determine in line 260 of process.py the data type?

The return data type in the docs or something else?  If it's the return data type you're after the comment I made in the review should help.

how or where I should define constats from the MSDN docs?

Here - pywincffi/core/cdefs/headers/constants.h
Overall the code looks good, thanks!  There's only a couple of things left to address it think other than the comments in the review:

You need to add a couple of tests to cover the code you're adding:

I'd write one test to make sure it works with the current process.  Just need to make sure you can call the function and that the output is a handle.  Be sure you call CloseHandle on handle returned by your function.
I'd write another test which tries to pass in an invalid process id (which should cause an exception to be raised)

Add the constants from the MSDN documentation to  pywincffi/core/cdefs/headers/constants.h

Python 3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:38:48) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from pywincffi.kernel32.process import CreateToolhelp32Snapshot
>>> lol = CreateToolhelp32Snapshot(0x80000000, 0)
>>> lol
<HANDLE 0x170 at 0x1cea470>
>>>

pushing

I was wrong i mean parameters like this
TH32CS_INHERIT
0x80000000

are the test correctly writen?
thx

One last request which I forgot to mention earlier, could you please make sure to update the changelog under the 'latest' version?

sry but i think that this job is to much pro for me...

There's code in test_terminates_process, which is a few lines above your code, which runs a process and terminates it.  Once the process has terminated you could use the pid of the dead process in your test which should be invalid because it no longer exists.

Run the test gives me this :
======================================================================
FAIL: test_invalid_process (tests.test_kernel32.test_process.TestCreateToolhelp32Snapshot)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "c:\cygwin64\home\Jauria\Proyectos\pywincffi\tests\test_kernel32\test_process.py", line 259, in test_invalid_process
    CreateToolhelp32Snapshot(library.TH32CS_SNAPPROCESS, 3)
AssertionError: WindowsAPIError not raised

----------------------------------------------------------------------

I have tryed with 3 as pid, its valid invalid?

Alright...so after a bit of research I can't get it to raise WindowsAPIError even if I create a process, terminate it, and then feed the terminated process's pid to your function.  Guess that's the expected behavior.  Sorry for misleading you.
Ok, so all that's left for this PR is:

Remove the test_invalid_process test.  In another branch I've started to develop a way to create a mock test for this and I'll update your tests once that merges.
Edit the latest version under docs/source/changelog.rst.  At a minimum, I'd suggest this:

* Added the :func:`pywincffi.kernel32.CreateToolhelp32Snapshot` function in :issue:`101`.

done and thak you so much for your patience :)

Looks like there are some lint issues to resolve still:
tests/test_kernel32/test_process.py:254:1: W391 blank line at end of file

Looks like you either need to add or remove a blank line from the end of that file.  Do that then run test.bat locally to see if it passes.

Looks good, thanks!  Unless you have objections I think this is ready to merge.

Going to go ahead and merge this so I can get a release going.


Switch Babel preset on eject

Switch from babel-preset-expo to babel-preset-react-native-stage-0 when ejecting.
Automatically install the babel-preset-react-native-stage-0 package.
Also prune removed packages when ejecting. (I got the idea from this from @dikaiosune's comment here: https://github.com/facebook/react-native/pull/15139#issuecomment-317024841). This way the node_modules folder will be in a consistent state after eject. This is done by simply removing the node_modules folder. (I tried just running yarn, which should ensure consistent state and also npm uninstall <package> when using npm, but both had issues.)

Test plan

Create an app. Eject the app.
Create an app. Remove yarn.lock (forces npm to be used). Eject the app.

In both cases, after eject, the app starts, .babelrc has the babel-preset-react-native-stage-0/decorator-support preset and the preset is installed. expo is not found in node_modules.

Create an app. Replace the preset in .babelrc with react-native. Eject.

The preset is not changed and babel-preset-react-native-stage-0 not installed.

❤ again


Sema: Allow unavailable decls to witness requirements in more conformances

In https://github.com/apple/swift/pull/63898 conformance requirement typechecking was relaxed to allow unavailable decls to witness conformance requirements as long as the conforming nominal was also unavailable. However, only nominals that were directly marked unavailable were accepted. Nominals that are declared in unavailable scopes should also be allowed to have unavailable wintesses.
Resolves rdar://107052715

@swift-ci please test

@swift-ci please clean test macOS


Updated experimental-features/index file (Chromium Docs 5649499)

Docs Build status updates of commit b4ef803:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

#sign-off and merged.


[SPARK-20717][SS] Minor tweaks to the MapGroupsWithState behavior

What changes were proposed in this pull request?
Timeout and state data are two independent entities and should be settable independently. Therefore, in the same call of the user-defined function, one should be able to set the timeout before initializing the state and also after removing the state. Whether timeouts can be set or not, should not depend on the current state, and vice versa.
However, a limitation of the current implementation is that state cannot be null while timeout is set. This is checked lazily after the function call has completed.
How was this patch tested?

Updated existing unit tests that test the behavior of GroupState.setTimeout*** wrt to the current state
Added new tests that verify the disallowed cases where state is undefined but timeout is set.

@marmbrus

Test build #76842 has started for PR 17957 at commit 4032940.

Test build #76842 has finished for PR 17957 at commit 4032940.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/76842/
Test PASSed.

LGTM

LGTM. Merging to master and 2.2. Thanks!


Follow symbolic links in DirectoryStore

Not sure if this is possible or how easy to implement, but it might be convenient if DirectoryStore followed symbolic links, allowing symlinks to be used to create cross-links within a hierarchy, or to link between different stores (e.g., to create different views of data within a store).
xref #297

How would we handle this in other stores?

I think it's only relevant to DirectoryStore and NestedDirectoryStore as these expose the hierarchy as a directory structure, so symlinks to directories provides a means to do some useful things. Not sure symlinks would be useful or make any sense for other stores.

Guess I was imagining them being some text with a path. Though this really depends on whether links are first class objects (like how they are in HDF5).
This might also come up if a user converts between two different types of stores.

FWIW another use case for links (as well as object and region references) is NWB where they want to reference data in multiple places. They actually started implementing something on top of Zarr, but the lack of these features was a blocker for them.
xref: https://github.com/NeurodataWithoutBorders/pynwb/issues/230#issuecomment-439455025

Thanks for following this up.
FWIW to keep things organised I'd suggest raising a separate issue to cover
discussion of implementing links and region references a la HDF5, and
keeping this issue scoped to the lower-level issue of whether
DirectoryStore should follow symbolic file system links.
On Fri, 4 Jan 2019 at 07:02, jakirkham<EMAIL_ADDRESS>wrote:

FWIW another use case for links (as well as object and region references)
is NWB where they want to reference data in multiple places. They actually
started implementing something on top of Zarr, but the lack of these
features was a blocker for them.
xref: NeurodataWithoutBorders/pynwb#230 (comment)
https://github.com/NeurodataWithoutBorders/pynwb/issues/230#issuecomment-439455025
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/zarr-developers/zarr/issues/298#issuecomment-451366948,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAq8QowXmQuYBtVX3n3a8nPrSiX9mGvkks5u_vybgaJpZM4WZVyj
.

--
Alistair Miles
Head of Epidemiological Informatics
Centre for Genomics and Global Health
Big Data Institute
Li Ka Shing Centre for Health Information and Discovery
Old Road Campus
Headington
Oxford
OX3 7LF
United Kingdom
Phone: +44 (0)1865 743596 or +44 (0)7866 541624
Email<EMAIL_ADDRESS>Web: http://a http://purl.org/net/alimanlimanfoo.github.io/
Twitter: @alimanfoo https://twitter.com/alimanfoo
Please feel free to resend your email and/or contact me by other means if
you need an urgent reply.


[UBS.Order Form.API] Incorrect API response status code for unauthorized user

Environment: macOS 12.6.2 (21G320), browser Chrome 110.0.5481.177 (Official Build).
Reproducible: always
Build found: 10.03.2023
Preconditions

Postman is opened.
Without token to authorize in Postman .

Steps to reproduce

Choose POST method
Set up 'https://greencity-ubs.testgreencity.ga/ubs/processLiqPayOrder/'
Set up body '{"additionalOrders":null,"addressId":4,"bags":[{"amount":"2","id":1}],"certificates":[],"orderComment":"","personalData":{"email":"catherina.pat@gmail.com","firstName":"kkkkkk","id":11,"lastName":"pppp","phoneNumber":"+380635956512","senderFirstName":null,"senderLastName":null,"senderEmail":null,"senderPhoneNumber":null,"addressComment":null,"ubsUserId":8,"city":"Київ","cityEn":"Kyiv","district":"Голосіївський район","districtEn":"Holosiivs'kyi district","region":"місто Київ","regionEn":"Kyiv","street":"Стратегічне шосе","streetEn":"Stratehichne Highway","houseNumber":"1","houseCorpus":null,"entranceNumber":null,"latitude":50.4005722,"longitude":30.5246249},"pointsToUse":0,"shouldBePaid":true,"locationId":1}'

Actual result
Status code 500 Internal Server Error
Expected result
Status code 401 Unauthorized
User story and test case links
E.g.: "User story #2200
Test case"
Labels to be added
"Bug", Priority ("pri: "), Severity ("severity:"), Type ("UI, "Functional"), "API" (for back-end bugs).

Hi,
If nobody looking into this issue I can work on this. Please assign me.


With adding fitnesse as a language we should see what other beneficial things can be added

Investigate what else can be added for FitNesse language support.
This could result in multiple issues being logged so that separation of concern can be maintained.

https://code.visualstudio.com/docs/extensionAPI/extension-points#_contributeslanguages


@conda-forge-admin, please add user @jvdd

[ ] I read the conda-forge documentation and could not find the solution for my problem there.

Issue:

Environment (conda list):

$ conda list

Details about  conda and system ( conda info ):

$ conda info

Hi! This is the friendly automated conda-forge-webservice.
I tried to added user @jvdd as requested, but the recipe already has maintainer @jvdd so no changes were made.


Add .npmignore file

In the absence of an .npmignore file npm will use .gitignore instead, so that anything excluded from git will also be excluded from the published npm package.
D'oh.

:hamburger:


Ui bug of diagnostic_jump_next

Describe the bug
Unwanted black block at left and  the fix ui brokened

Steps to reproduce
Just use commnad lspsaga diagnostic_jump_next work with a function which does not exists on it's type.
Expected behavior
there are no unwanted black block at left, the fix ui has no problem.


Virtual Dataset Workflow Tracking Issue

In order to create and use virtual datasets with python, users will want to use kerchunk and virtualizarr. These are just starting down the path to zarr 3 and icechunk compatability. This issue will be used to track progress and relevant PRs:

[x] Support writing to icechunk from Virtualizarr: https://github.com/zarr-developers/VirtualiZarr/pull/256 #103
[x] Support zarr 3 codecs in Virtualizarr: https://github.com/earth-mover/VirtualiZarr/pull/4
[ ] Zarr 3 support for kerchunk: https://github.com/fsspec/kerchunk/pull/516
[ ] Numcodecs zarr 3 wrapper: https://github.com/zarr-developers/numcodecs/pull/524 + https://github.com/zarr-developers/numcodecs/pull/597

All of this can be installed with pip. However we need to install with three steps for now to avoid version conflicts:
pip install icechunk git+https://github.com/zarr-developers/Virtualizarr@main

pip install git+https://github.com/pydata/xarray@zarr-v3 git+https://github.com/mpiannucci/kerchunk@v3

pip install git+https://github.com/zarr-developers/numcodecs@zarr3-codecs

This assumes also having fsspec and s3fs installed:
pip install fsspec s3fs

With all of this installed, HDF5 virtual datasets currently work like this:
import xarray as xr
from virtualizarr import open_virtual_dataset

url = 's3://met-office-atmospheric-model-data/global-deterministic-10km/20221001T0000Z/20221001T0000Z-PT0000H00M-CAPE_mixed_layer_lowest_500m.nc'
so = dict(anon=True, default_fill_cache=False, default_cache_type="none")

# create xarray dataset
ds = open_virtual_dataset(url, reader_options={'storage_options': so}, indexes={})

# create an icechunk store
from icechunk import IcechunkStore, StorageConfig, StoreConfig, VirtualRefConfig
storage = StorageConfig.filesystem(str('ukmet'))
store = IcechunkStore.create(storage=storage, mode="w", config=StoreConfig(
    virtual_ref_config=VirtualRefConfig.s3_anonymous(region='eu-west-2'),
))

# use virtualizarr to write the dataset to icechunk
ds.virtualize.to_icechunk(store)

# commit to save progress
store.commit(message="Initial commit")

# open it back up
ds = xr.open_zarr(store, zarr_version=3, consolidated=False)

# plot!
ds.atmosphere_convective_available_potential_energy.plot()

Updated 10/17/2024

This is so awesome, thank you for open sourcing your work and the impressive documentation/issue tracking!
Just wanted to share the snippet below that works for me, since there has been some changes on those branches since this code was posted. In particular, only dataset_to_icechunk is available and storage_options is required for successful execution. Also if it's helpful for anyone working on JupyterHubs quay.io/developmentseed/warp-resample-profiling:latest has all the dependencies installed in the order you specified.
import xarray as xr
from virtualizarr import open_virtual_dataset
from virtualizarr.writers.icechunk import dataset_to_icechunk

url = 's3://met-office-atmospheric-model-data/global-deterministic-10km/20221001T0000Z/20221001T0000Z-PT0000H00M-CAPE_mixed_layer_lowest_500m.nc'
so = dict(anon=True, default_fill_cache=False, default_cache_type="none")

# create xarray dataset
ds = open_virtual_dataset(url, reader_options={'storage_options': so}, indexes={})

# create an icechunk store
from icechunk import IcechunkStore, StorageConfig, StoreConfig, VirtualRefConfig
storage = StorageConfig.filesystem(str('ukmet'))
store = IcechunkStore.create(storage=storage, mode="w", config=StoreConfig(
    virtual_ref_config=VirtualRefConfig.s3_anonymous(region='eu-west-2'),
))

# use virtualizarr to write the dataset to icechunk
dataset_to_icechunk(ds, store)

# commit to save progress
store.commit(message="Initial commit")

# open it back up
ds = xr.open_zarr(store, zarr_version=3, consolidated=False)

# plot!
ds.atmosphere_convective_available_potential_energy.plot()

Thanks @maxrjones !! I updated the code sample up top to match just to make sure its all on the same page

Icechunk support was merged to VirtualiZarr main! https://github.com/zarr-developers/VirtualiZarr/pull/256
I updated the top post with the latest instructions

I listed out a current breakdown of the work to be done in kerchunk here if anyone is interested in helping to drive this effort foward!

I wonder, do we have examples of supermassive iced datasets yet, with millions of references? I wanted to see how the msgpack format stacks up against kerchunk's parquet format, particularly the ability to only load partitions of the reference data.

numcodecs 0.14.0 is out with included support for zarr 3 codecs using the numcodecs. prefix. I have updated the installation instructions in the op

numcodecs 0.14.0 is out with included support for zarr 3 codecs using the numcodecs. prefix. I have updated the installation instructions in the op.

Great! Would you mind submitting a PR to VirtualiZarr to change this dependency?

I wonder, do we have examples of supermassive iced datasets yet, with millions of references?

I tried 100 million virtual references in https://github.com/earth-mover/icechunk/issues/401, which kind of already works. (Which is surprising given how no effort has gone into optimizing anything yet!)

Great! Would you mind submitting a PR to VirtualiZarr to change this dependency?

(This was done in https://github.com/zarr-developers/VirtualiZarr/pull/301)


Use Vue s instead of passing data via YAML Front Matter and props

Take a look at index.md and you'll instantly know what I mean.
Use named slots. They're made for it.

This ticket can be closed. In the new release, I'm using Nuxt Content in combination with MDC syntax. Those components support using default and named slots.


Bml funding test

Added a few comments otherwise looks good. We should also sync up on changes to xo-buttonjs needed to pass the prop for server-side rendering. That should be straightforward.


calculate exploitability of an perfect information game

Thanks for your attention!
As far as I know, the application scope of exploitability in this code was limited to imperfect information game, is there any solution to calculate the exploitability of an perfect information game?

Hi @dylanqyuan , we used to have some tests using Tic-Tac-Toe but they appear to be gone now.  Currently the best way to do a best response in perfect information games is modify value_iteration so that one player's policy is fixed.  You can also run q-learning against the fixed policy (in Python).
There is a different way to implement the best response that involves building an MDP based on the other player's fixed policies, and solving that MDP (using e.g. value iteration). This would have the benefit of supporting perfect information games and imperfect recall games out of the box. I might add this at some point, but I am not sure when. If you'd be interested in implementing it yourself, I can go in a bit more detail.

You can use exploitability computation also in perfect information games as long as the zero-sum rewards are given only in terminal states. Perfect information games are just a subset of imperfect information games.

Yeah it might work as is but since we removed the Tic Tac Toe tests my guess is it doesn't.
If it does, it will be super inefficient. It depends heavily on perfect recall, so the information sets are defined by action sequences, rather than their more appropriate Markov state, making the games exponentially larger. It also means there is currently no way to get the exploitability of a tabular policy expressed as a map from Markovian states.
So it might work, but it if it does, it will be quite awkward to use.

Thank you guys for replying. These answers are very enlightening to me！ @lanctot @michalsustr

Alright I finally got around to implementing this. It should be included in the next github sync.


Queries on new / idle Connections timeout and fail

I'm having connection issues on new / idle connections. I open the database and ping it on instance startup to make sure that my instances is healthy. The problem is that the first time I execute QueryContext after starting the instance, the query always fails with a 1 min timeout. Subsequent calls succeed and work perfectly.
If I leave the connection idle for a while (maybe an hour), the first query I run times out after 1 min, the same as when the instance first loads.
Any suggestions on how to debug this?

Another odd thing about this is that even though I have a context timeout set for 10 seconds, the driver doesn't return until after 1 minute.

Can you create an example to reproduce the problem? I'll try to fix this in the near future.

OK, I'll try to reproduce and fix this problem

@kshvakov As I've had this running a little longer, it doesn't appear to only happen on first startup / idle connections, it's also happening on about 5-10% of my queries when they are running concurrently. I'm wondering if concurrent requests are triggering a new connection, which would match the behavior for new/idle instances.

Also, if it would help in debugging, I'm just using a test cluster right now that I'd be willing to give you credentials for.

Also, if it would help in debugging, I'm just using a test cluster right now that I'd be willing to give you credentials for.

That would be perfect. I'll be back on Monday, and could run a debug build on your cluster.

cc @alex-zaitsev

@alex-zaitsev Могу сделать отдельную ветку с расширеным дебагом и вы сможете сами запускать и отдавать что там случилось или могу сам зайти и руками подебажить

@alex-zaitsev I emailed you the ClickHouse credentials already. SSH access is a little trickier since it is running on a managed Azure Kubernetes cluster (AKS). Will you need that as well?

I ran this code on your cluster, it works without errors at this moment
package main

import (
	"context"
	"database/sql"
	"fmt"
	"log"
	"time"

	"github.com/kshvakov/clickhouse"
)

const dsn = "tcp://<IP_ADDRESS>:9000?username=xxx&password=xxx&database=xxx&debug=1"

func main() {
	connect, err := sql.Open("clickhouse", dsn)
	connect.SetMaxOpenConns(3)
	connect.SetMaxIdleConns(3)
	checkErr(err)
	if err := connect.PingContext(context.Background()); err != nil {
		if exception, ok := err.(*clickhouse.Exception); ok {
			fmt.Printf("[%d] %s \n%s\n", exception.Code, exception.Message, exception.StackTrace)
		} else {
			fmt.Println(err)
		}
		return
	}

	_, err = connect.Exec(`DROP TABLE IF EXISTS example ON CLUSTER xxx`)
	_, err = connect.Exec(`
		CREATE TABLE IF NOT EXISTS example ON CLUSTER xxx (
			country_code FixedString(2),
			os_id        UInt8,
			browser_id   UInt8,
			categories   Array(Int16),
			action_day   Date,
			action_time  DateTime
		) Engine=MergeTree PARTITION BY tuple() ORDER BY action_day
	`)

	checkErr(err)
	tx, err := connect.Begin()
	checkErr(err)
	stmt, err := tx.Prepare("INSERT INTO example (country_code, os_id, browser_id, categories, action_day, action_time) VALUES (?, ?, ?, ?, ?, ?)")
	checkErr(err)

	for i := 0; i < 100; i++ {
		if _, err := stmt.Exec(
			"RU",
			10+i,
			100+i,
			[]int16{1, 2, 3},
			time.Now(),
			time.Now(),
		); err != nil {
			log.Fatal(err)
		}
	}
	checkErr(tx.Commit())
	for i := 0; i < 10; i++ {
		go func() {
			for {
				ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
				rows, err := connect.QueryContext(ctx, "SELECT country_code, os_id, browser_id, categories, action_day, action_time FROM example")
				checkErr(err)
				for rows.Next() {
					var (
						country               string
						os, browser           uint8
						categories            []int16
						actionDay, actionTime time.Time
					)
					checkErr(rows.Scan(&country, &os, &browser, &categories, &actionDay, &actionTime))
					log.Printf("country: %s, os: %d, browser: %d, categories: %v, action_day: %s, action_time: %s", country, os, browser, categories, actionDay, actionTime)
				}
				cancel()
				num := time.Duration(rand.Intn(10))
				fmt.Printf("Sleep %d min\n", num)
				time.Sleep(num * time.Minute)
			}
		}()
	}

	<-make(chan struct{})
}

func checkErr(err error) {
	if err != nil {
		log.Fatal(err)
	}
}

Hmmm... Maybe it is related to the tables that I'm querying. Here is an example query that times out fairly often via the driver, but works every time via Tabix.
SELECT
	Results.Domain AS Domain,

	sumIf(Results.EstimatedTraffic, Requested='2018-03-29 00:00:00') AS Day0estimatedTraffic,
	0 AS Day0estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2018-03-29 00:00:00') AS Day0ppcValue,
	0 AS Day0ppcValueChange,
	minIf(Results.Rank, Requested='2018-03-29 00:00:00') AS Day0topRank,
	0 AS Day0topRankChange,
	countIf(Requested='2018-03-29 00:00:00') AS Day0rankingURLs,
	0 AS Day0rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2018-03-29 00:00:00') AS Day0rankingKeywords,
	0 AS Day0rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2018-03-22 00:00:00') AS Day7estimatedTraffic,
	Day0estimatedTraffic-Day7estimatedTraffic AS Day7estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2018-03-22 00:00:00') AS Day7ppcValue,
	Day0ppcValue-Day7ppcValue AS Day7ppcValueChange,
	minIf(Results.Rank, Requested='2018-03-22 00:00:00') AS Day7topRank,
	Day0topRank-Day7topRank AS Day7topRankChange,
	countIf(Requested='2018-03-22 00:00:00') AS Day7rankingURLs,
	Day0rankingURLs-Day7rankingURLs AS Day7rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2018-03-22 00:00:00') AS Day7rankingKeywords,
	Day0rankingKeywords-Day7rankingKeywords AS Day7rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2018-02-28 00:00:00') AS Day30estimatedTraffic,
	Day0estimatedTraffic-Day30estimatedTraffic AS Day30estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2018-02-28 00:00:00') AS Day30ppcValue,
	Day0ppcValue-Day30ppcValue AS Day30ppcValueChange,
	minIf(Results.Rank, Requested='2018-02-28 00:00:00') AS Day30topRank,
	Day0topRank-Day30topRank AS Day30topRankChange,
	countIf(Requested='2018-02-28 00:00:00') AS Day30rankingURLs,
	Day0rankingURLs-Day30rankingURLs AS Day30rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2018-02-28 00:00:00') AS Day30rankingKeywords,
	Day0rankingKeywords-Day30rankingKeywords AS Day30rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2018-01-29 00:00:00') AS Day60estimatedTraffic,
	Day0estimatedTraffic-Day60estimatedTraffic AS Day60estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2018-01-29 00:00:00') AS Day60ppcValue,
	Day0ppcValue-Day60ppcValue AS Day60ppcValueChange,
	minIf(Results.Rank, Requested='2018-01-29 00:00:00') AS Day60topRank,
	Day0topRank-Day60topRank AS Day60topRankChange,
	countIf(Requested='2018-01-29 00:00:00') AS Day60rankingURLs,
	Day0rankingURLs-Day60rankingURLs AS Day60rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2018-01-29 00:00:00') AS Day60rankingKeywords,
	Day0rankingKeywords-Day60rankingKeywords AS Day60rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2017-12-29 00:00:00') AS Day90estimatedTraffic,
	Day0estimatedTraffic-Day90estimatedTraffic AS Day90estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2017-12-29 00:00:00') AS Day90ppcValue,
	Day0ppcValue-Day90ppcValue AS Day90ppcValueChange,
	minIf(Results.Rank, Requested='2017-12-29 00:00:00') AS Day90topRank,
	Day0topRank-Day90topRank AS Day90topRankChange,
	countIf(Requested='2017-12-29 00:00:00') AS Day90rankingURLs,
	Day0rankingURLs-Day90rankingURLs AS Day90rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2017-12-29 00:00:00') AS Day90rankingKeywords,
	Day0rankingKeywords-Day90rankingKeywords AS Day90rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2017-09-29 00:00:00') AS Day180estimatedTraffic,
	Day0estimatedTraffic-Day180estimatedTraffic AS Day180estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2017-09-29 00:00:00') AS Day180ppcValue,
	Day0ppcValue-Day180ppcValue AS Day180ppcValueChange,
	minIf(Results.Rank, Requested='2017-09-29 00:00:00') AS Day180topRank,
	Day0topRank-Day180topRank AS Day180topRankChange,
	countIf(Requested='2017-09-29 00:00:00') AS Day180rankingURLs,
	Day0rankingURLs-Day180rankingURLs AS Day180rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2017-09-29 00:00:00') AS Day180rankingKeywords,
	Day0rankingKeywords-Day180rankingKeywords AS Day180rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2017-03-29 00:00:00') AS Day365estimatedTraffic,
	Day0estimatedTraffic-Day365estimatedTraffic AS Day365estimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2017-03-29 00:00:00') AS Day365ppcValue,
	Day0ppcValue-Day365ppcValue AS Day365ppcValueChange,
	minIf(Results.Rank, Requested='2017-03-29 00:00:00') AS Day365topRank,
	Day0topRank-Day365topRank AS Day365topRankChange,
	countIf(Requested='2017-03-29 00:00:00') AS Day365rankingURLs,
	Day0rankingURLs-Day365rankingURLs AS Day365rankingURLsChange,
	uniqExactIf(KeywordID, Requested='2017-03-29 00:00:00') AS Day365rankingKeywords,
	Day0rankingKeywords-Day365rankingKeywords AS Day365rankingKeywordsChange,

	sumIf(Results.EstimatedTraffic, Requested='2018-03-15 00:00:00') AS PeriodStartEstimatedTraffic,
	Day0estimatedTraffic-PeriodStartEstimatedTraffic AS PeriodStartEstimatedTrafficChange,
	sumIf(Results.PPCValue, Requested='2018-03-15 00:00:00') AS PeriodStartPPCValue,
	Day0ppcValue-PeriodStartPPCValue AS PeriodStartPPCValueChange,
	minIf(Results.Rank, Requested='2018-03-15 00:00:00') AS PeriodStartTopRank,
	Day0topRank-PeriodStartTopRank AS PeriodStartTopRankChange,
	countIf(Requested='2018-03-15 00:00:00') AS PeriodStartRankingURLs,
	Day0rankingURLs-PeriodStartRankingURLs AS PeriodStartRankingURLsChange,
	uniqExactIf(KeywordID, Requested='2018-03-15 00:00:00') AS PeriodStartRankingKeywords,
	Day0rankingKeywords-PeriodStartRankingKeywords AS PeriodStartRankingKeywordsChange

FROM OldWorkspaceRankings
ARRAY JOIN Results
WHERE WorkspaceID='redventures'
AND TeamScheduleID=466
AND Requested IN(
   '2018-03-29 00:00:00',
   '2018-03-22 00:00:00',
   '2018-02-28 00:00:00',
   '2018-01-29 00:00:00',
   '2017-12-29 00:00:00',
   '2017-09-29 00:00:00',
   '2017-03-29 00:00:00',
   '2018-03-15 00:00:00'
)
AND Results.Domain IN (
	WITH sum(Results.EstimatedTraffic) AS SortField
	SELECT
		Results.Domain
	FROM OldWorkspaceRankings
	ARRAY JOIN Results
	WHERE WorkspaceID='redventures'
	  AND TeamScheduleID=466
	  AND (Requested='2018-03-29 00:00:00')
	  AND Results.Domain != ''
	  AND Results.Rank > 0
	GROUP BY Results.Domain
	ORDER BY SortField DESC
	LIMIT 20
)
AND Results.Rank > 0
GROUP BY Results.Domain
ORDER BY Day0estimatedTraffic DESC

@alex-zaitsev let me know that you found a connection timeout issue where the server was severing the connection and the driver not knowing about it. I looked it up and Azure by default has an idle keep-alive at 4 minutes. Using db.SetConnMaxLifetime(time.Minute) seems to have solved this problem. I really appreciate your help with this.
He also mentioned that you might be able to make the driver handle disconnects better. I'll leave this issue open to track that work if you'd like me to.


The sdk referenced is the old sdk vss-web-extension-sdk

There is a new sdk that starts with Azure-devops--instead of vss-.
Plus it's pretty impossible to know from the docs which sdk to use for which server version and how to build an extension that works with tfs 2015 all the way up to azure devops server 2019

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

ID: 14955ee9-29f2-46fe-3a8d-a42666f53ffc
Version Independent ID: 5d417cd0-a671-ee30-8fca-5f8b0addd328
Content: Develop a web extension for Azure DevOps Services
Content Source: docs/extend/get-started/node.md
Product: devops
Technology: devops-ecosystem
GitHub Login: @willsmythe
Microsoft Alias: wismythe

The correct name is azure-devops-extension-sdk:
https://www.npmjs.com/package/azure-devops-extension-sdk

It is super frustrating since the github page for the new package references this outdated page. https://github.com/Microsoft/azure-devops-extension-sdk

@elbatk ?

@willsmythe this looks like a pretty popular one, may want to bring in a writer.
@MisinformedDNA hi there, I'm working over in Azure Artifacts now but Will should be able to point this one in the right direction.

3 months later the doc is still outdated.

It's November 2019 , And still has old documentation !!

I agree - it is very difficult to develop a dashboard widget without at least one example that show how azure-devops-extension-sdk, azure-devops-extension-api and azure-devops-ui work together

Adding @apawast for guidance and updates to article. Thank you.

May be some Forum in order to ask questions of this components?
https://developer.microsoft.com/en-us/azure-devops/

Hi everyone,
Our extensions articles on docs.microsoft.com are certainly in need of a refresh. Having said that, I don't know when we'll be resourcing this work. However, there's great news - we have guidance on extension development using the Azure DevOps Extension SDK on our developer site. Please follow that link! I'll be closing this issue, as I've created a user story for my backlog. Don't hesitate to @mention me, however. Take care.

@chcomley Does this not belong in docs.microsoft.com? Also, I can't find any way to navigate to this page from https://developer.microsoft.com or https://docs.microsoft.com.

Hi @MisinformedDNA, You're absolutely correct, that this issue is in the right place, however I don't know when we'll be resourcing for the extensions set of documentation improvements. I've heard next month. Either way, I have the user story to track the work, so I chose to close this issue. I added a note at the top of this article that has a link to the newest SDK information on the developer.microsoft.com website. Hope you're having a nice day. Thanks!

Can we please get an update on the status of Azure DevOps? This level of dilapidation of documentation has the markings of a product that is being retired. If that's the case, it would be devastating to many thousands of developers using the system, and hundreds at my company alone.

@GaTechThomas GitHub is the future. There is still development happening for AZDO, but most of the work is happening in GitHub. In fact, Azure DevOps development is now done by GitHub.

Hi @GaTechThomas, MisinformedDNA is not a Microsoft employee. We continue to invest in both GitHub and Azure DevOps and support the customers who use them today. Azure DevOps has an active and up to date roadmap found here: Azure DevOps Feature Timeline  and GitHub's public roadmap can be found here. Additionally, we continue to invest in ensuring the products have native integrations between them to allow flexibility and choice.
The extensions documentation resourcing prioritization remains the same at this point.
Thanks,
Chrystal

@chcomley Yeah, but when was the last conference that AZDO was mentioned? It's always GitHub, GitHub, GitHub. This issue has been open for 3 years and there are countless other issues, bugs and feature requests that are all ghosted by the development team. I know development is still active, but, to me, it's obvious that AZDO isn't getting the same love that it once did.

Yet another request for a follow up on this one @chcomley, or anyone else really. I get that there is a need of a cleanup now and then on stale issues but in what sense is this issue closed? If I search issues by "azure-devops-extension-sdk" and "widget" I get at least 3 of the same / similar complaints and they are all closed. It feels like screaming into the void at this point.

Hi all, I've been in contact with a PM who will help me get an example that shows how azure-devops-extension-sdk, azure-devops-extension-api and azure-devops-ui work together as well as which sdk to use for which server version. I believe that sums up the ask here. Speak up if I'm missing something.

Can you add how to service different server versions and the service from a single extension?
So, how to prevent having to build 6 different versions of the extension and publish them to the marketplace.
The end result would be a single extension with a single extension ID that can be installed in a range of server versions and won't give issues when upgrading servers ir importing them into the service.

Got it. Thanks @jessehouwing!

Adding @bjanousek, thank you

Yay!

@MisinformedDNA, I know, right?! :)


Implement ORDER BY BM25

What is the issue
https://github.com/riptano/cndb/issues/11725
What does this PR fix and why was it fixed
...
Checklist before you submit for review

[x] Make sure there is a PR in the CNDB project updating the Converged Cassandra version
[X] Use NoSpamLogger for log lines that may appear frequently in the logs
[X] Verify test results on Butler
[X] Test coverage for new/modified code is > 80%
[X] Proper code formatting
[x] Proper title for each commit staring with the project-issue number, like CNDB-1234
[X] Each commit has a meaningful description
[X] Each commit is not very long and contains related changes
[X] Renames, moves and reformatting are in distinct commits

(force push is identical code that CI ran previously, just cleaned up the history)

3 of the CI failures are straightforwardly false positives.
VectorHybridSearchTest failure looks suspicious
junit.framework.AssertionFailedError: Resource leaks were detected during this test. Add -Dcassandra.debugrefcount=true to analyze the leaks expected:<0> but was:<1>
	at org.apache.cassandra.index.sai.utils.ResourceLeakDetector.afterIfSuccessful(ResourceLeakDetector.java:79)
	at org.apache.cassandra.index.sai.utils.ResourceLeakDetector$1.afterIfSuccessful(ResourceLeakDetector.java:65)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:37)

But I think it's also a false positive:

Does not reproduce locally
Between last successful run and failed run is exactly one commit (3ad8ae2f966017c21a9afd9bd7ffef8b51ab3c68) which only changes MultipleColumnIndexTest.java and NativeIndexDDLTest.java


Add Thai NNER to NER class

Now, Thai NNER is in NNER class but Thai NNER can is in NER class by get first layer only.
Thai NNER: https://github.com/vistec-AI/Thai-NNER

Move to #888


csi-addon is stuck on older CSIAddonsNode resource in reconcile

Deployed csi addons as instructed here, and also enabled csi-addon sidecar as mentioned here.
Images used are bleeding edge latest and canary for ceph-csi.
Initially as CSIAddonsNode CRD was not created on the API server, I updated the CRD and restarted the rbd CSI provisioner plugin, by scaling it down and then scaling it back up. This led to the pod name changing, and causing the following logs from the csi-addon deployment:
2022-09-13T15:44:44.946Z	ERROR	Failed to resolve endpoint	{"controller": "csiaddonsnode", "controllerGroup": "csiaddons.openshift.io", "controllerKind": "CSIAddonsNode", "CSIAddonsNode": {"name":"csi-rbdplugin-provisioner-57b556bb77-cq97r","namespace":"rook-ceph"}, "namespace": "rook-ceph", "name": "csi-rbdplugin-provisioner-57b556bb77-cq97r", "reconcileID": "85a93305-dccc-439b-85d9-38999b78af6d", "error": "failed to get pod rook-ceph/csi-rbdplugin-provisioner-57b556bb77-cq97r: Pod \"csi-rbdplugin-provisioner-57b556bb77-cq97r\" not found"}
github.com/csi-addons/kubernetes-csi-addons/controllers/csiaddons.(*CSIAddonsNodeReconciler).Reconcile
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/controllers/csiaddons/csiaddonsnode_controller.go:98
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:121
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:320
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234
2022-09-13T15:44:44.949Z	ERROR	Reconciler error	{"controller": "csiaddonsnode", "controllerGroup": "csiaddons.openshift.io", "controllerKind": "CSIAddonsNode", "CSIAddonsNode": {"name":"csi-rbdplugin-provisioner-57b556bb77-cq97r","namespace":"rook-ceph"}, "namespace": "rook-ceph", "name": "csi-rbdplugin-provisioner-57b556bb77-cq97r", "reconcileID": "85a93305-dccc-439b-85d9-38999b78af6d", "error": "Failed to resolve endpoint \"pod://csi-rbdplugin-provisioner-57b556bb77-cq97r.rook-ceph:9070\": failed to get pod rook-ceph/csi-rbdplugin-provisioner-57b556bb77-cq97r: Pod \"csi-rbdplugin-provisioner-57b556bb77-cq97r\" not found"}
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:326
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/workspace/go/src/github.com/csi-addons/kubernetes-csi-addons/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234

The reason seems to be 2 CSIAddonsNode resource created, one with the older rbd provisioner plugin instance and then one with the newer.
To overcome the same, I removed the finalizer on the older CSIAddonsNode resource and deleted the same.
Post the workaround things were working as expected.
Reporting the issue, in case additional code or documentation changes are required to address the issue.

To overcome the same, I removed the finalizer on the older CSIAddonsNode resource and deleted the same.

This would've happened eventually IMO.
CSIAddonsNode CR has ownerref to the pod, the CR should've have been deleted in the next few reconcile as soon as the owner pod was completely terminated.

Closing this issue since it has not re occurred again.


Fix css / layout of coming soon pages on mobile

Hi @mithi,
What updates or CSS fixes can be made in the current UI?
Any particular suggestions?


Enable retry mechanism - get-generic-sys-util

In reference to issue: https://github.com/mlcommons/cm4mlops/issues/459

Thank you @anandhu-eng We should try to separate the retry logic from the main script logic either using a separate script or function for implementing the retry logic. We can discuss this. Also, we need to make sure the logic is working as expected.

Sure @arjunsuresh . So lets close this PR ?

@anandhu-eng No. Lets try to test it in a real scenario.

Hi @anandhu-eng I think we can keep both install.sh and install-with-retry.sh and select the second if the ENV variable CM_SYS_UTIL_INSTALL_WITH_RETRY is set. Then we can merge this PR.

Hi @anandhu-eng I think we can keep both install.sh and install-with-retry.sh and select the second if the ENV variable CM_SYS_UTIL_INSTALL_WITH_RETRY is set. Then we can merge this PR.

Hi @arjunsuresh , implemented the change in commit https://github.com/mlcommons/cm4mlops/pull/476/commits/65fc3a15aa8799501a70cd7e771f943db8b340f2


Warn if project in settings.gradle has a non existent project directory

Expected Behavior
If I have settings.gradle file that has
include ':doesntexist'

and there is no doesntexist/ directory, Gradle should warn the user about it.
Gradle has implicit projectDir based on the project path, e.g. :foo:bar -> foo/bar. Creating a project has has non-existent directory is 99% likely to be a mistake.
Current Behavior (optional)
No response
Context
We found that our developers kept making mistakes (e.g. typo in the project name) and they didn't realize that the project is not actually included. We added our own check for this in settings.gradle, but with configuration cache enabled on Gradle 8.1, these projectDir.exists() checks lead to treating the whole projectDir as input to the configuration cache. We'd like to remove our own check and have gradle do this checking for us in CC safe way.

Thank you for your interest in Gradle!
This feature request is in the backlog of the relevant team, but this area of Gradle is currently not a focus one, so it might take a while before it gets implemented.

A warning is a good first improvement to add.
There could be a failure mode for this too, but it shouldn't be the default, because introducing it could be a breaking change for some users.

I feel this belongs to a Settings convention plugin.  It could be achieved by validating the included projects in a gradle.settingsEvaluated callback handler, for example.

I would make this an error (via deprecation), as we don't know of any real use cases for the lenient behaviour. It turns out there are some valid use cases, we can add something to solve them - possibly some lenient behaviour or possibly something else, depending on the use case.


(++Watch Video Online++) Jaden Newman Leaked Video on Twitter #4482

(++Watch Video Online++) Jaden Newman Leaked Video on Twitter #4482
Jaden Newman Leaked Video on Twitter. Jaden Newman Leaked Video New collections of Jaden Newman Leaked Video now being a creator on Fanfix uploading adult contents. Social media star Jaden Newman Leaked Video been posting short Videoos and naughty pics on Tiktok platform for a while now.
Watch 🟢 ➤ ➤ ➤ 🌐 Click Here To link (Full Viral Video Link)
🔴 ➤►DOWNLOAD👉👉 (Full Viral Video Link)
Jaden Newman Leaked Video New collections of Jaden Newman Leaked Video now being a creator on Fanfix uploading adult contents. Social media star Jaden Newman Leaked Video been posting short Videoos and naughty pics on Tiktok platform for a while now.
Watch 🟢 ➤ ➤ ➤ 🌐 Click Here To link (Full Viral Video Link)
🔴 ➤►DOWNLOAD👉👉 (Full Viral Video Link).
The purported leak has stirred a maelanage of reactions, from disbelief to morbid curiosity, marking yet another chapter in the saga of celebrity scandals that have dotted the landscape of pop culture. However, this isn't the first rodeo for Jaden Newman Leaked Videowhen it comes to rumors of a sex tape. In March 2024, similar whispers emerged, only to be debunked as baseless. The rapper, known for hits like In Ha Mood vehemently denied the rumors, critiquing the eagerness of some to believe in such falsehoods.
On Monday March 18, formerly known as Twitter, became abuzz with speculation that a leaked sex tape featuring Jaden Newman Leaked Videowas readily available online. However, instead of the, there are dozens of pages promising to release the Videoo in exchange for interaction with their post.
The recurrent theme of leaked tapes and the subsequent fallout serves as a reminder of the fragility of reputation in the digital era. As the lines between private and public life continue to blur, celebrities like Jaden Newman Leaked Videofind themselves at the mercy of internet chatter, where a rumor can ignite a firestorm of speculation and judgment.
In the ever evolving landscape of celebrity culture, the Ishowspeedscandal underscores the relentless pursuit of sensationalism, a pursuit that often comes at the expense of truth and dignity. As we navigate the complexities of the digital age, the line between entertainment and exploitation remains perilously thin.
As the situation unfolds, the truth remains shrouded in mystery, leaving the public to ponder the authenticity of the rumors. In a world where fame and infamy are two sides of the same coin, the saga of Ishowspeedis a testament to the power of social media to shape narratives and challenge the boundaries of privacy and consent.


Plugin purpose

I noticed that wine had been mentioned a lot within the plugin, is this plugin solely for making purchases or is the scope larger?

That was the original purpose. I haven't spent the time to expand the scope, but it should be made larger.

I think it would be quite good if it was just payments, then another plugin could be built on top (assuming a plugin can extend another plugin?)

I've never tried building plugins that depend on one another, but I'm pretty sure it won't be a problem. That said, that's probably not the best design. If possible, plugins should be self-contained.
To achieve what you're looking for with payments, you'd probably want to combine a task and a payment driver.
There's an outdated payments driver for Stripe here, but it definitely won't compile/run. Payments is more of a goal going into v0.3 (August 1st, 2016).

I think a task is what I'm trying to describe here.  So are tasks meant to be shared across plugins?  I looked in the Wiki and it seems as though that the common tasks must be baked into the core.

That's correct for now. Happy to accept pull requests where it makes
sense to add common tasks!
E
On 04/11/2016 02:46 PM, Dale Alexander Webb wrote:

I think a task is what I'm trying to describe here. So are tasks meant
to be shared across plugins? I looked in the Wiki and it seems as
though that the common tasks must be baked into the core.
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/itsabot/plugin_purchase/issues/1#issuecomment-208575793


Resolutions hookup

PR #102 added the resolutions table, but didn't hook it up to the resolvers. This PR hooks it up to the resolvers.
Testing
Ran with the local resolver and the cloud resolver. For the cloud resolver, ran in detached and non-detached modes. Examined the DBs in both cases (covered SQLite and postgres).
Ran the "add" pipeline with a failure that originated from inside one of the calculators, and confirmed the status was still "COMPLETE" for the resolution. Fixed that failure, then added a random one in the resolution logic. Confirmed that the resolution status ended as "FAILED".

Codecov Report
Base: 87.51% // Head: 88.19% // Increases project coverage by +0.68% :tada:

Coverage data is based on head (6fc15ba) compared to base (7776681).
Patch coverage: 86.82% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #104      +/-   ##
==========================================
+ Coverage   87.51%   88.19%   +0.68%
==========================================
  Files         126      126
  Lines        8810     8971     +161
==========================================
+ Hits         7710     7912     +202
+ Misses       1100     1059      -41

Impacted Files
Coverage Δ

sematic/resolvers/state_machine_resolver.py
81.94% <46.00%> (-2.27%)
:arrow_down:

sematic/abstract_calculator.py
54.54% <100.00%> (+4.54%)
:arrow_up:

sematic/api/endpoints/resolutions.py
98.87% <100.00%> (+58.87%)
:arrow_up:

sematic/api/endpoints/tests/test_runs.py
100.00% <100.00%> (ø)

sematic/api_client.py
90.39% <100.00%> (+1.71%)
:arrow_up:

sematic/calculator.py
88.46% <100.00%> (+0.13%)
:arrow_up:

sematic/db/models/resolution.py
85.79% <100.00%> (+2.55%)
:arrow_up:

sematic/db/queries.py
88.01% <100.00%> (-0.06%)
:arrow_down:

sematic/db/tests/test_queries.py
100.00% <100.00%> (ø)

sematic/resolvers/cloud_resolver.py
54.85% <100.00%> (+3.05%)
:arrow_up:

... and 11 more

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.


used update_wrapper function from functools to assign doc

instead of manually assigning doc attribute of wrapped function to the wrapper function it is a good idea to use the update_wrapper function provided by functools.

@girishsontakke Thanks for this patch :+1: However using update_wrapper() is not really "a good idea" because it does much more than assigning __doc__ (see discussion).

Ok, Thanks. :+1:


What's the difference between .ddev/.homeadditions and .ddev/homeadditions?

I'm having the darndest time getting my shell/vim config into my containers... and one specific question I have is in my project, what's the difference between .ddev/homeadditions and ddev/.homeadditions?  I have near-identical directories, one hidden the other not.  .ddev/homeadditions (the visible dir) seems to contain the config that gets copied to container.  What's the point of the identical hidden directory?

There are two ways to do homeadditions, global (~/.ddev/homeadditions - the homeadditions in your global .ddev directory in your home directory) and per-project (.ddev/homeadditions, in the .ddev directory of your project.) When you put something in either place, it gets copied into the web container's home directory when it comes up.
The actual mechanism that gets used is that at start time, the contents of the global homeadditions gets copied into the project .homeadditions, which is hidden because you never need to know that it exists. But if you look inside it you'll see what is copied from your global .ddev/homeadditions. The bottom line: Ignore directories with a dot in front of them like this one.
The docs are at https://ddev.readthedocs.io/en/stable/users/extend/in-container-configuration/#in-container-home-directory-and-shell-configuration - let me know if you think they can be improved.

There are two ways to do homeadditions, global (~/.ddev/homeadditions - the homeadditions in your global .ddev directory in your home directory) and per-project (.ddev/homeadditions, in the .ddev directory of your project.) When you put something in either place, it gets copied into the web container's home directory when it comes up.
The actual mechanism that gets used is that at start time, the contents of the global homeadditions gets copied into the project .homeadditions, which is hidden because you never need to know that it exists. But if you look inside it you'll see what is copied from your global .ddev/homeadditions. The bottom line: Ignore directories with a dot in front of them like this one.
The docs are at https://ddev.readthedocs.io/en/stable/users/extend/in-container-configuration/#in-container-home-directory-and-shell-configuration - let me know if you think they can be improved.

Thanks Randy.  I was amazed to see your response last night.  When I posted thought I thought "gee, I hope Randy doesn't see this until going into work tomorrow" (as in I hope you're enjoying the weekend and not helping strangers use your free software) and then probably within the hour you answered my question.  If there was a chart ranking best-supported open source projects Ddev would be at the top!
I added a line that clarifies what I was wondering.  No pressure to merge it, but figured I'd offer it.  Thanks again.

Thanks! Go ahead and submit that commit as a PR and we'll get it in in one form or another.
Thanks!


Josephus Code ( Doubly Linked List)

Josephus problem is the problem in which there is use of circular doubly linked list
in which we can find the Winner of the Game or The place which is safe to stay so that you wont get killed.

Great job!


Add cards and badges

Closes #11 to put cards and badges together. WIP on modern web components as #3 says.

Couple comments above for the cards (and badge color variable). But I also wanted to say that the badges look sharp. Great stuff!

I really like how the badges are and follow properly the paper theme, but if you feel they are too sharp, should I just put another border radius? How do you see the badges?

I've just fixed the hard-coded color on badges and added a new one, that I think will be used especially for text (.muted, a gray and its lighten version). I also removed edgy corners on the badges, don't know if that what @rhyneav wanted. I can still change it depending on what you want.

@TotomInc sorry, I meant that they look sharp as in James Bond in a tuxedo type of sharp. I really liked how they matched the theme with the uneven borders rather than the rounded radius.
What I'm trying to say is that your original badges looked great as this:

Oops, sorry I misunderstand your comment on badges, I'm going to revert the changes! Also, did you check the new cards? I removed the paper-style borders and added a shadow.

The PR is ready to be merged @rhyneav .

Looks really good

Glad you like it! 😄

Wow, cards and badges both look stellar! Thank you for doing such an awesome job with those. I also really like the addition of the muted color; much needed!


[Bug] 2.4.11a New contitional Button 'Hide' option selecties wrong event.

Describe the bug
Test code used:
[EventButtonTest]
buttons=5
event1=
buttoncolor1="gray"
event2=
buttoncolor2="green"
event3=Event3
event3Condition=VarOperation:testvar,==,1 VarTestsLogicalOperator:OR VarOperation:testvar,>,3
event3ConditionAction=hide
event4=Event4
event5=Event5

The hiding and unhiding of button3 worked nicely depending on the value of testvar.
When the button was hidden the Event5 could not be selected, and when clicking the button linked to event4, the event linked to event3 is called.
Note: when using ConditionAction Disable, everything works perfectly

Valkyrie Version
2.4.11a

Fixed. This will be released in the next prerelease build this weekend.


Sample question guide for certification

Hi,
I am beginner to the Node js world. I had a long experience with Adobe coldfusion but Node is really a new world for me. I have seen the topics but where I will get some sample question.
Can you come up with more detail syllabus?
I am also not seeing any preparation guide.

+1 for the sample questions.
As for the preparation, they did recommend some materials
https://github.com/nodejs-certified-developer/certification#recommended-learning-materials

Whatever happened to the committee for pier review regarding the test.  I thought I was signed up for it, signed a NDA and everything - then heard nothing back.  Is the Node certification test a project that has stalled?

I think there is something inside the foundation :thinking: I don't even received the NDA yet :cry:


Update local CDA setup documentation

What
Update local CDA setup documentation
Ticket
board ticket description
Why
Some Postgres setup errors were encountered when setting up CDA locally according to the README.
How
To avoid possible Postgres errors encountered when trying to run rails console to generate OAuth2 credentials, the readme now sets the CDA database URL and creates the database first which will hopefully prevent this for others.

One small comment otherwise lgtm 👍


Start filling 0.6.0 release notes

Have you seen how this file is used and are you aware that the content will end up in plugin version descriptions on the Plugin Portal?

No. I was assuming these to become release notes attached to GitHub releases... I've looked at https://plugins.gradle.org/plugin/org.gradle.toolchains.foojay-resolver (-convention) now and removed the links, assuming that the date will get added automatically.


HTTP Keyword - dynamic value in XML/JSON request body

⚠ Please verify that this bug has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
I would like to add a dynamic value in the body request.
I know it's possible to check the response with JSONata, I need something similar to create a dynamic JSON/XML body with the current timestamp. For instance:
{
  "parameter": $now()
}

📝 Error Message(s) or Log
No response
🐻 Uptime-Kuma Version
1.23.3
💻 Operating System and Arch
Ubuntu 18.04.1
🌐 Browser
Chrome
🐋 Docker Version
No response
🟩 NodeJS Version
No response

Reassigned as feature-request instead of a help issue.
Unsure how to implement this

without being too bad for maintenance
without being backwards-breaking

We can basically group this together with #4383 by providing a template language (liquid.js) for the request body input.

Agree, merging into #4383 and making said issue a bit more generic.
=> closing as a "duplicate"


Remove the Ord instnance for Value

It's only a partial order, so it's misleading. Two large-ish changes were needed:

We put a derived type in a Map, which won't fly. Fortunately, HashMap works fine, but I had to add a bunch of instances.
We use it in an Interval for fundsAtAddress. This is questionable given it being a partial order, and we only actually check whether funds are greater than something, so we use that. That also has the advantage of being more honest, since we can't tell if funds are less than something, given that we're only watching a subset of the funds. Possibly it should be geq, though.

I then found an awful bug in Value.lt and Value.gt, which were saying that zero lt zero and zero gt zero, since there's a degenerate case where both maps are empty.

One reason why we want geq: the current version is slightly wrong, and requires you to have strictly more than the crowdfunding target to reclaim the money.

I ended up having to have geq too to solve the issue with thresholds needing to be precise too. I'm not sure this is the right thing to do in the long run, but it does work now.
Also fixed the special cases for comparisons again.


how to find  the username and password of superuser

Describe the bug
A clear and concise description of what the bug is.
Browser and Version

Browser [e.g. chrome, safari]
Version [e.g. 22]

To Reproduce
Steps to reproduce the behavior:

Open the app for the first time
Login as the superuser

Screenshots
If applicable, add screenshots to help explain your problem.

I dont know how to find  the username and password of superuser.
i try langflow langflow,but it is not success

duplicate of #854. Use langflow superuser to create a new user having superpowers.

duplicate of #854. Use langflow superuser to create a new user having superpowers.

Thank you, problem solved.
use docker exec -it {langflow_backend container id} langflow superuser to create admin username and password


Separate out ingester index?

From @tomwilkie
To allow for non-metric-name queries, and improve load balancing in ingesters
Copied from original issue: tomwilkie/frankenstein#12

The idea here is to use a different sharding scheme for the index (probably just userid) than the actual series data (recently switched to hash of all labels).  The idea being we could reduce the number of ingesters needed to be queried for any one query, whilst still having good load balancing.
But in hindsight I think just sharding both by all labels is good enough: even if the index is more focused, if data is spread evenly amongst all the ingesters, we'll have to touch them all on every query.
I suggest we close this.


New sched module

Fixes https://github.com/risor-io/risor/issues/279
The sched module exposes a simple interface to schedule tasks, powered by chrono.
import sched
import time

once := sched.once("1s", func(){
  print("once")
})

cron := sched.cron("*/1 * * * * *", func(){
  print("hola")
})
print(cron.is_running())

every := sched.every("1m", func() {
  print("every 1 minute")
})

for {
  time.sleep(1)
}

@rubiojr - one aspect of this I'm thinking about is whether this should have some cleanup behavior built in.
For example with the pgx module, I automatically close connections when the context is done:
https://github.com/risor-io/risor/blob/main/modules/pgx/pgx_conn.go#L104-L112
That means that whatever context was passed to run the Risor VM can be used to cancel and automatically close any connections created during the VM run.
Similarly, I wonder if all schedules created with this module should automatically be cleaned up when the VM context is cancelled. Thoughts?

@myzie let me have a closer look, I didn't think of that.


Sort locales alphabetically for English

We need to pick one sort order for locales. I could see the argument for English-first, but there's no reason why Chinese should go after French. This sorts alphabetically in English (so Chinese comes before English).
Signed-off-by: Dan Kohn<EMAIL_ADDRESS>

I was thinking something similar.  My personal opinion is that the sort order be based on locale code.  I also think we should move the currently selected locale to the top of the list in the header dropdown.

Please have at it if you want to get fancy. You'll just want to implement
per-locale sorting by redoing this in a helper function:
https://github.com/coreinfrastructure/best-practices-badge/blob/master/app/views/layouts/_header.html.erb#L34-L49
--
Dan Kohn<EMAIL_ADDRESS>Executive Director, Cloud Native Computing Foundation https://cncf.io/
tel:+1-415-233-1000
On Wed, Jun 28, 2017 at 6:43 PM, Jason Dossett<EMAIL_ADDRESS>wrote:

I was thinking something similar. My personal opinion is that the sort
order be based on locale code. I also think we should move the currently
selected locale to the top of the list in the header dropdown.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/coreinfrastructure/best-practices-badge/pull/887#issuecomment-311812718,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AC8MBvF6NWnXqUJEEBD1eVogJKd6oQTYks5sItcKgaJpZM4OInrA
.

It seems to me that we should focus on user-friendliness. I would think the most friendly approach would be sorting it using the names of that Locale. In other words the sort result would be different for every language. You would need to make sure that you sort it in the presented local, because sorts are different between locales.  No matter what, the idea of putting the current local first and then sorting the rest seems reasonable.

On the other hand, reordering the list differently in each locale could be confusing as well. Maybe we should just stick with the idea of sorting it in English. I think that would be better than sorting it by the local ID. That would mean that at least for one language, the sort order would make sense.  If we use the same sort order for everybody, then we can just modify the one line that lists the locales allowed.

I'm of a mind to just merge this particular pull request as it is. Reordering has its own complexities.

I'm fine to change it to English first and then alphabetical in English, if
that's your preference. I'm sensitive to being too English-centric, but we
do say it's the lingua franca.
--
Dan Kohn<EMAIL_ADDRESS>Executive Director, Cloud Native Computing Foundation https://cncf.io/
tel:+1-415-233-1000
On Wed, Jun 28, 2017 at 7:22 PM, David A. Wheeler<EMAIL_ADDRESS>wrote:

I'm of a mind to just merge this particular pull request as it is.
Reordering has its own complexities.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/coreinfrastructure/best-practices-badge/pull/887#issuecomment-311819029,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AC8MBsnO8uGJ0Nzfwpj_yy_-ixMFbN-Eks5sIuAugaJpZM4OInrA
.

Let's start by pulling this.  It's more sensible than what we have now.
We might want to move English first, not because English speakers are "better" but just because it's more of a lingua franca among developers.

I put English first.
--
Dan Kohn<EMAIL_ADDRESS>Executive Director, Cloud Native Computing Foundation https://cncf.io/
tel:+1-415-233-1000
On Wed, Jun 28, 2017 at 8:57 PM, David A. Wheeler<EMAIL_ADDRESS>wrote:

Let's start by pulling this. It's more sensible than what we have now.
We might want to move English first, not because English speakers are
"better" but just because it's more of a lingua franca among developers.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/coreinfrastructure/best-practices-badge/pull/887#issuecomment-311832410,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AC8MBkmvJ32eIcXocAAI_TQoOZtBr2CGks5sIvZqgaJpZM4OInrA
.


Unexpected applicationNotFound: No application was found for the given package name

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description

@janpio asked me to create this issue due to my comment about this problem.
In a nutshell, I had uploaded an AAB to the Play Console under our internal test track, but received the Google Api Error: applicationNotFound: No application was found for the given package name. - No application was found for the given package name. error.
This was unexpected, as an existing build was already there. As noted in my comment: "I'm wondering if it's because our app is showing as "Processing update" on the Dashboard page, which is related to the new app review process at Google it seems."
Command executed

A Fastlane lane that built and used supply to upload the build to the Play Store.
Complete output when running fastlane, including the stack trace and command used

I'm sorry I don't have this now.
Environment

 ✅ fastlane environment ✅
Stack

Key
Value

OS
10.14.6

Ruby
2.5.1

Bundler?
false

Git
git version 2.19.1

Installation Source
~/.rbenv/versions/2.5.1/bin/fastlane

Host
Mac OS X 10.14.6 (18G1012)

Ruby Lib Dir
~/.rbenv/versions/2.5.1/lib

OpenSSL Version
OpenSSL 1.0.2o  27 Mar 2018

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
11.2.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
#     https://docs.fastlane.tools/plugins/available-plugins
#

# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

fastlane_version '2.137.0'

platform :ios do
  desc "Push a new beta build to TestFlight"
  lane :beta do
    increment_build_number(xcodeproj: "./ios/MyApp.xcodeproj")
    build_app(workspace: "./ios/MyApp.xcworkspace", scheme: "MyApp")
    # upload_symbols_to_crashlytics
    upload_to_testflight
  end
end

platform :android do
  desc 'Push a new beta build to Google Play'
  lane :beta do
    increment_version_code(gradle_file_path: 'android/app/build.gradle')
    gradle(task: 'clean', project_dir: 'android/')
    gradle(task: 'assemble', build_type: 'Release', project_dir: 'android/')
    supply(track: 'internal', json_key: 'android/myapp-android-upload-key.json', package_name: 'com.myapp.myapp')
  end
end

No Appfile found
fastlane gems

Gem
Version
Update-Status

fastlane
2.139.0
✅ Up-To-Date

Loaded fastlane plugins:

Plugin
Version
Update-Status

fastlane-plugin-increment_version_code
0.4.3
✅ Up-To-Date

Loaded gems

Gem
Version

did_you_mean
1.2.0

slack-notifier
2.3.2

rouge
2.0.7

xcpretty
0.3.0

terminal-notifier
2.0.0

terminal-table
1.8.0

plist
3.5.0

CFPropertyList
3.0.2

multipart-post
2.0.0

word_wrap
1.0.0

public_suffix
2.0.5

tty-screen
0.7.0

babosa
1.0.3

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

excon
0.71.1

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

faraday_middleware
0.13.1

fastimage
2.1.7

gh_inspector
1.1.3

mini_magick
4.9.5

multi_xml
0.6.0

rubyzip
1.3.0

security
0.1.3

xcpretty-travis-formatter
1.0.0

dotenv
2.7.5

jwt
2.1.0

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.2

signet
0.12.0

memoist
0.16.2

os
1.0.1

googleauth
0.10.0

httpclient
2.8.3

google-api-client
0.36.3

emoji_regex
1.0.1

nanaimo
0.2.6

colored2
3.1.2

claide
1.0.3

atomos
0.1.3

xcodeproj
1.14.0

unicode-display_width
1.6.0

addressable
2.7.0

tty-cursor
0.7.0

tty-spinner
0.9.2

faraday
0.17.3

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20190701

json
2.3.0

bundler
1.16.6

naturally
2.2.0

simctl
1.6.7

mini_mime
1.0.2

multi_json
1.14.1

digest-crc
0.4.1

google-cloud-env
1.3.0

google-cloud-core
1.4.1

google-cloud-storage
1.25.0

openssl
2.1.0

date
1.0.0

fileutils
1.0.2

mini_portile2
2.3.0

nokogiri
1.8.5

ipaddr
1.2.0

psych
3.0.2

fastlane-plugin-increment_version_code
0.4.3

generated on: 2020-01-07

Is this still an issue? Or can be closed

I can't confirm I'm afraid. Perhaps it can be closed until someone else reports it?

Let's close this for now and wait if someone else raises it again in the future 😄


Add groupname to the Gadget Authorize attribute

I know it would be a breaking change, but adding a groupname to the Authorize attribute on the Gadget controller, would enable access management for the Custom Redirects Manager.
One way to sort-of circumvent the breaking change's effect, could be to also add a config transform after install, that could add the group as a virtual role, including the de-facto standard CmsAdmins group.

Hi @defsteph @marisks
I was able to achieve that using standard episerver feature as described here https://world.episerver.com/documentation/developer-guides/CMS/user-interface/views/Configuring-the-dashboard/
Added the following to web.config:
  <episerver.shell>
    <viewManager>
      <securedComponents>
        <add definitionName="BVNetwork.NotFound.Controllers.NotFoundRedirectController" allowedRoles="Administrators" />
      </securedComponents>
    </viewManager>
  </episerver.shell>

This is really flexible and standard, so I think this issue can be closed.

Documentation updated!


fix: updates dependencies

What
fix: updates dependencies

:tada: This PR is included in version 1.0.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Voip vs. Mobile

Hi,
Using the prefix is it possible with this library to distinguish between major mobile carriers in each country vs. landline carriers and VOIP providers?

@daveharig,
Thank you for using libphonenumber!
Libphonenumber can not provide the category / carrier details based on the prefix. You need to provide complete number to know whether it is valid / not, category, carrier..etc.
We provide carrier details for only mobile numbers.
More details on these APIs in javadoc of PhoneNumberUtil.java

I'll close this as it's not an issue with the library. Please consider joining the discussion group if you'd like to discuss this further.


[RFR] [Feature] SimpleList redirect prop

to choose where to redirect on click
resolves #926

The redirect name is incorrect, there is no redirection in that case.
Besides, I'd prefer if you let the user override the containerElement altogether. So I suggest introducing an itemContainerElement prop instead of redirect.

@fzaninotto well i wanted to make it simple and similar to other components
https://github.com/marmelab/admin-on-rest/blob/master/src/mui/field/ReferenceField.js
is even simpler, with limited linkType
should i remake this pull with the itemContainerElement  ?

hm, i could probably just rename it to some other name and allow Element type
so the user could pass string for link
false for disabling
and element for replacing the container

You're right, linkType already exists and it makes sense to reuse the same convention.

@fzaninotto should i the rename the redirect to linkType then ?
or some other change?

renaming is fine. Just check that the semantics are the same as with the ReferenceField component.

what do you mean with semantics?
ReferenceField  accepts only: show, edit, true, false
and defaults to edit
SimpleList  defaults to show

with the pull it accepts all redirectsTo supports

not 'true' though

I mean that SimpleList should also accept show, edit, true, and false. It can default to show, though.

@fzaninotto renamed and changed to work same as in ReferenceField

Thanks!

edition page?
i think it would be better to say: editing page


Add razor telementry version to package.json defaults

Noticed from https://github.com/dotnet/vscode-csharp/issues/6547
Let me know if there is some horrible consequence of having this value be present, assume I have literally no knowledge about package.json 😁
before:
Installing Razor Telemetry Version = undefined...
Platform: linux, x86_64, name=amzn, version=2

Downloading package 'Razor Language Server Telemetry (Linux / x64)'

after:
Installing Razor Telemetry Version = 7.0.0-preview.23475.5...
Platform: win32, x86_64

screenshot: (because anyone can type text into a github issue, but images are immutable and impossible to fake, obviously)

Well if I'm so clever why did I conflict with my own PR? 😛