Standardize encoding/decoding of byte data on Java and Python sides

Right now they use slightly different mechanisms. Should data type be encoded in the key of the JSON message itself, or at a higher level?

I ran into a bug that might be associated with this. I got an error when trying to use image_process_fn in Acquisition which says:
File "C:\Users\lociuser\Miniconda3\envs\pyimagej\lib\site-packages\pycromanager\core.py", line 134, in _replace_bytes
    dict_or_list[key].split("@")[1], 16
ValueError: invalid literal for int() with base 16: 'PXI2Slot2'

The name is associated with a customized device adaptor for controlling laser scanning devices. Printing the value of dict_or_list[key] at the place where this error occurs gives: OpenScan-NIDAQ@PXI2Slot2, which is the name of the device @ the name of the acquisition card on this device. I think Mark @marktsuchida will know better what this string stands for.
This error does not occur and image_process_fn functions properly when this customized device adaptor is removed and leaving only the camera.

I think this is because the encoding makes use of @ for translating Java-Python. As a workaround, can you change the device adapter name in the mean time. I was hoping to build out a bunch of testing before actually changing any of this, so that I don't break other stuff in the process

I think this is because the encoding makes use of @ for translating Java-Python. As a workaround, can you change the device adapter name in the mean time. I was hoping to build out a bunch of testing before actually changing any of this, so that I don't break other stuff in the process

Do you mean that the encoding makes use of @ as a start point for the translation? Does this mean that @ should be avoided in the device name at this point?

Yeah something like that. I honestly don't remember all the details as I made it pretty hastily without advance planning (hence this issue). But Im pretty sure if you take the @ out of the name it will work.

Yeah something like that. I honestly don't remember all the details as I made it pretty hastily without advance planning (hence this issue). But Im pretty sure if you take the @ out of the name it will work.

It works! Thanks.


spin test with arguments does not work when spin test works alone

I am running into some weird behavior when upgrading spin recently. I am running spin on GH actions and locally: https://github.com/neurodata/scikit-tree/actions/runs/9441764126/job/26003160931
(sktree) (base) adam2392@arm64-apple-darwin20 scikit-tree % ./spin test -t ./sktree --coverage --gcov -- -m "slowtest"
Invoking `build` prior to running tests:
$ meson setup build --prefix=/usr -Db_coverage=true --reconfigure
The Meson build system
Version: 1.4.0
Source dir: /Users/adam2392/Documents/scikit-tree
Build dir: /Users/adam2392/Documents/scikit-tree/build
Build type: native build
Project name: scikit-tree
Project version: 0.8.0dev0
C compiler for the host machine: arm64-apple-darwin20.0.0-clang (clang 15.0.7 "clang version 15.0.7")
C linker for the host machine: arm64-apple-darwin20.0.0-clang ld64 609
C++ compiler for the host machine: arm64-apple-darwin20.0.0-clang++ (clang 15.0.7 "clang version 15.0.7")
C++ linker for the host machine: arm64-apple-darwin20.0.0-clang++ ld64 609
Cython compiler for the host machine: cython (cython 3.0.10)
Host machine cpu family: aarch64
Host machine cpu: aarch64
Compiler for C supports arguments -Wno-unused-but-set-variable: YES (cached)
Compiler for C supports arguments -Wno-unused-function: YES (cached)
Compiler for C supports arguments -Wno-conversion: YES (cached)
Compiler for C supports arguments -Wno-misleading-indentation: YES (cached)
Compiler for C supports arguments -DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION: YES (cached)
Library m found: YES
Program cython found: YES (/Users/adam2392/miniforge3/envs/sktree/bin/cython)
Program python3 found: YES (/Users/adam2392/miniforge3/envs/sktree/bin/python3.9)
Message: /Users/adam2392/miniforge3/envs/sktree/bin/python3.9
Message: /usr/lib/python3.9/site-packages/
Dependency OpenMP found: YES 5.0 (cached)
Build targets in project: 19

scikit-tree 0.8.0dev0

  User defined options
    prefix    : /usr
    b_coverage: true

Found ninja-1.11.1.git.kitware.jobserver-1 at /Users/adam2392/miniforge3/envs/sktree/bin/ninja
WARNING: Need gcovr or lcov/genhtml to generate any coverage reports
Cleaning... 0 files.
$ meson compile -C build
INFO: autodetecting backend as ninja
INFO: calculating backend command to run: /Users/adam2392/miniforge3/envs/sktree/bin/ninja -C /Users/adam2392/Documents/scikit-tree/build
ninja: Entering directory `/Users/adam2392/Documents/scikit-tree/build'
… <some build information that I removed>
ld: warning: -pie being ignored. It is only used when linking a main executable
$ meson install --only-changed -C build --destdir ../build-install
$ export PYTHONPATH="/Users/adam2392/Documents/scikit-tree/build-install/usr/lib/python3.9/site-packages"
$ export PYTHONPATH="/Users/adam2392/Documents/scikit-tree/build-install/usr/lib/python3.9/site-packages"
$ /Users/adam2392/miniforge3/envs/sktree/bin/python -c 'import sys; del sys.path[0]; import sktree'
$ pytest --pyargs ./sktree -m slowtest --cov-report=term --cov-report=html:/Users/adam2392/Documents/scikit-tree/build/coverage/ --cov=sktree
ImportError while loading conftest '/Users/adam2392/Documents/scikit-tree/sktree/conftest.py'.
sktree/__init__.py:67: in <module>
    raise ImportError(e) from e
E   ImportError: No module named 'sktree._lib.sklearn.__check_build._check_build'
E   ___________________________________________________________________________
E   Contents of /Users/adam2392/Documents/scikit-tree/sktree/_lib/sklearn/__check_build:
E   __init__.py               __pycache__               meson.build
E   _check_build.pyx
E   ___________________________________________________________________________
E   It seems that scikit-learn has not been built correctly.
E
E   If you have installed scikit-learn from source, please do not forget
E   to build the package before using it: run `python setup.py install` or
E   `make` in the source directory.
E
E   If you have used an installer, please check that it is suited for your
E   Python version, your operating system and your platform.

However, if I do ./spin install and then run things with pytest locally it works fine. I"m wondering if there is some issue with test discovery, or not using the pytest.ini options in pyproject.toml when using spin test?

https://github.com/numpy/numpy/issues/26525 is related. I'm hitting this on my mac dev environment running spin test in the numpy repo. Happy to help out with debugging, for now I'm downgrading to spin 0.8...

Unconditional pyargs was probably a mistake. I'll add some additional logic to better detect file-based tests.

Closed by #213


GetAllUsers() only returns mostly empty User struct, only the username and authentication method

Describe the bug
I'm fetching all users like so:
func fetchUsers(serviceManager artifactory.ArtifactoryServicesManager) ([]*services.User, error) {
	users, err := serviceManager.GetAllUsers()
	if err != nil {
		return nil, err
	}
	return users, nil
}

Unfortunately, the returned User struct only contains the usernames and authentication method, not any other information:
2023/06/29 12:19:24 {example-user   <nil> <nil> <nil> <nil>  oauth <nil> <nil>  <nil> <nil> <nil> <nil>}
I'm an admin on the instance. Any ideas?
Current behavior
returns almost empty user struct
Reproduction steps
No response
Expected behavior
No response
JFrog Client-Go version
v1.30.1
JFrog CLI version (if applicable)
No response
Operating system type and version
MacOS
JFrog Artifactory version
No response
JFrog Xray version
No response

Might not be a bug actually, but I later found out there's an additional call that needs to be executed to populate the user details.
I did it like so:
func fetchUserDetails(serviceManager artifactory.ArtifactoryServicesManager, username string) (*services.User, error) {
	params := services.NewUserParams()
	params.UserDetails.Name = username

	user, err := serviceManager.GetUser(params)
	if err != nil {
		return nil, err
	}
	return user, nil
}


Comparison with others js parsers

Congratulations for your parser and its very usefull "unparsing" part.
Here is a simple suggestion about the readme : why not add a short comparison with other js parsers (Chevrotain, Parsimmon, ANTLR4, PEG.js, Jison, Ohm-js) mentioning design principles, originality (ambiguities) and speed ?  If I read "nearley is über-fast and really powerful" and then look at the test here, nearly does not seem so fast compared to other parsers. So this "Use Nearly if you..." comparison paragraph might help users to discriminate use cases where nearly does the best (maybe left recursion, ambiguities).

The benchmark you linked to is misleading: JSON is a very simple language and very easy to parse. This gives the less powerful parsers an advantage. It also doesn't quite compare the same thing between each parser (some of them aren't building the parse tree).
I think the readme already does a good job of describing nearley. :-)


tests(toh-1/e2e): cleanup and updates incl. use of async/await

Supersedes #1785.

@wardbell @Foxandxss : ready for review. Jesus confirms that the toh-6 failure is a flake.


Install excludes directories without '/' prefix

https://github.com/rancher-sandbox/elemental/blob/6fd0d6d61a6a33306cd674c33a62e68df9c29921/pkg/elemental/elemental.go#L342
Implies that the directories considered are located in root (e.g. /run, /mnt, etc ) however it looks like it's not the case and dirs are passed by as-is down the path, hence it excludes also directories like /var/run.

Interesting, I guess this falls into the scope of rsync usage. We need to explore if adding the root slash (/) solves the issue and investigate how grsync maps these options to rsync. There could be some subtle detail to take into account in there.

Interesting, I guess this falls into the scope of rsync usage. We need to explore if adding the root slash (/) solves the issue and investigate how grsync maps these options to rsync. There could be some subtle detail to take into account in there.

yes indeed it needs some :eyes: and be verified, I was thinking as well that / as prefix might be enough, but some subtle detail might make /run map to /var/run as well (for example  without specifying explictly that it must start with "/", like with regexes instead that would be ^/run, same applies for every element in that list).
In any case we should at least enhance our suite to cover such scenarios so doesn't happen again.

Seems like grsync passes each string as --exclude=<string> argument to the rsync command. And according to the man page of rsync, --exclude=foo means it will match foo anywhere in the tree, which means run, var/run, and foo/bar/run will all be excluded.

if the pattern starts with a / then it is anchored to a particular spot in the hierarchy of files, otherwise it is matched against the end of the pathname. This is similar to a leading ^ in regular expressions. Thus /foo would match a name of "foo" at either the "root of the transfer" (for a global rule) or in the merge-file's directory (for a per-directory rule). An unqualified foo would match  a name of "foo" anywhere in the tree because the algorithm is applied recursively from the top down

Thanks @johnliu55tw ! good catch by spotting the issue. A fix is on https://github.com/rancher-sandbox/elemental/pull/165 and will follow up to make it available in the repositories


koans are broken (mostly from switch from cl to cl-lib I think)

thanks for these koans, they're really helpful to get started, makes emacs lisp a lot less intimidating and I feel confident to try debugging and editing plugins now :smiley:
At least in emacs 28 to first get the contemplate or run-test to work we need https://github.com/jtmoulia/elisp-koans/pull/20
then in doing the koans I had to edit case equalp subseq first second fourth typep copy-seq concatenate incf loop return evenp floor* multiple-value-list and values to their cl- equivalent.
also in line 63 of vectors.el:
(should-not (aref (list-to-bool-vector '(nil))))

I get error that aref expects two args not one, I changed it to:
 (should-not (aref (list-to-bool-vector '(nil)) 0))

adding second arg of 0 which I think is outside of the code we're intended to edit for that koan
also in cl-loops.el line 115:
      (should (eq ___ (find '("The Hobbit" "Bilbo")) pairs-in-table :test #'equal)))))

after changing it to cl-find I get error that find has too few arguments, I think the paren is misplaced and it should be:
      (should (eq ___ (find '("The Hobbit" "Bilbo") pairs-in-table :test #'equal))))))

If it's just a matter of making those changes I'm happy to edit it all and submit a pull request. But I'm also obviously just starting with emacs lisp so I'm not sure what is best, like I read it is recommended to use the built-in seq.el library that provide a lot of that stuff (find subseq etc) now rather using the cl-lib

Thanks @bo-tato! This would be a good stop-gap measure to be able to complete the koans, but I think you're right that it is worth seeking out the best equivalent elisp idioms.
@jtmoulia If this kind of review would be helpful, I am happy to help, perhaps in collaboration with @bo-tato if they're willing.

Hi @bo-tato -- I apologize for the late response.

I read it is recommended to use the built-in seq.el library that provide a lot of that stuff (find subseq etc) now rather using the cl-lib

Hm, I think it'd make sense to seq.el in addition to the cl koans, though perhaps with the cl koans being optional given it isn't the preferred approach. Given the cl koans are sprinkled throughout (?) there might be some unraveling to do


Merge 3.1.2 back to main

PR details
What is the purpose of this pull request? (put an "X" next to an item)
Please delete options that are not relevant.

[ ] Documentation update
[ ] Bug fix
[ ] New metadata support
[ ] Enhanced metadata
[ ] Add a CLI option
[ ] Add something to the core
[ ] Other, please explain:

What changes did you make? (Give an overview)
...
Is there anything you'd like reviewers to focus on?
...
Checklist

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] ESLint & Prettier are not outputting errors or warnings
[ ] README.md updated (if applicable)
[ ] CHANGELOG.md updated
[ ] ran npm run docs to update developer docs

mistake


Integration broken

This error originated from a custom integration.
Logger: custom_components.alfen_wallbox
Source: custom_components/alfen_wallbox/init.py:96
integration: Alfen Wallbox (documentation)
First occurred: 12:51:20 PM (1 occurrences)
Last logged: 12:51:20 PM
Unexpected error creating device <IP_ADDRESS> 'Timeout' object does not support the context manager protocol

Upgraded to 2.8.10 but that didn't help. Integration remains broken...

OK, fixed it. Please use asyncio instead of async_timeout.
So 2 files need to be fixed: init.py and config_flow.py

Please comment out this line in both files:
#from async_timeout import timeout
In both files change this line:
#            with timeout(TIMEOUT):
to:
            async with asyncio.timeout(TIMEOUT):

After this, restart HA and things should be working again...
Who can apply this in the code and release a new version?

Put in 2 pull requests now for this fix...

I'll later check on it

OK, fixed it. Please use asyncio instead of async_timeout. So 2 files need to be fixed: init.py and config_flow.py

Please comment out this line in both files:
#from async_timeout import timeout
In both files change this line:
#            with timeout(TIMEOUT):
to:
            async with asyncio.timeout(TIMEOUT):

After this, restart HA and things should be working again... Who can apply this in the code and release a new version?

Hi,
Same issue here. That fix as also working for me.
Thanks


Silent Push should not show title if app is in background or application is killed by user.

[REQUIRED] Step 1: Describe your environment

Xcode version: 11.3.1
Firebase SDK version: 6.13.0
Firebase Component: Messaging
Component version:  4.1.9
Installation method: CocoaPods

[REQUIRED] Step 2: Describe the problem
When silent push notification is received, notification title is shown even is content_available = true is set. Ideally it should not show the notification.
One other issue we are facing is if we don't set notification and title key in the payload. Notification is not received on iPhone.
Steps to reproduce:
Relevant Code:
this is below json sent to https://fcm.googleapis.com/fcm/send .
if we dont send notification dict, we does not receive any push notification.
As per the messaging docs https://firebase.google.com/docs/cloud-messaging/http-server-ref , 'notification' is optional. but in our case, we don't receive any push if we don't sent 'notification' object?
{
"notification":
{
"title": "test"
},
"content_available": true,
"priority":"high",
"to" : "et-5ne9wY3o:APA91..."
}
We have tested on iOS 12 and 13.
Note: when app is running, silent push works fine.

It looks like you're describing a system behavior on iOS and somehow your silent push is not being sent as a silent push. Can you try sending via APNs and including the content-available key?

If you sent silent push notification, "notification" section should NOT be set.
If app is killed by users, Apple system might not be able to delivery the notification. https://developer.apple.com/documentation/uikit/uiapplicationdelegate/1623013-application
If app is in background, you should be able to receive the notification.


Improve user-experience when things go bad

This is a meta issue to cover other concrete tasks to improve UX when builds fail or there are some infra problems.

[ ] ~~https://github.com/packit/packit-service/issues/927~~ changed to an epic itself
[x] #540
[x] #701
[x] #765
[x] https://github.com/packit/packit-service/issues/1145
[x] https://github.com/packit/packit-service/issues/1005
[x] #1035

The first task became an epic itself. Closing since the rest of the tasks is done. Nice!


Extend token lifespan on use?

Is there a way to "refresh" the token lifespan on use?
Currently, if change_headers_on_each_request is true, then each request generates a new set of headers with a new expiration, effectively extending the lifespan of the session.
However, if change_headers_on_each_request is false, there does not seem to be a way to extend the lifespan of the token when its used to authenticate.  Is there something I am missing, or is this intended behavior?

I think the conceptual idea is that you have the ability to just generate another token and use that, which serves as a refresh.
This is pure speculation on my part, and I know doesn't sounds like an answer to your question, but it's what I would do.

@campo is there a minimum limit on the token_lifespan? I want the token to only last 30.minutes but if I put anything lower than .week it doesn't authorize my user.

I've realized the same, @MrNagoo !
Did you solve that? @lynndylanhurley any ideas?

@ebosantos Yes, I converted it into seconds and it worked.

How? I'm trying 20 minutes and even config.token_lifespan = 1200.seconds is not working properly. Tks!!

ill look at my code tomorrow and let you know if I did anything else.

@MrNagoo @ebosantos Sorry for the delayed response. Off the top of my head, I don't recall any minimum limit from when I was using this code. Good luck sorting it out guys.

Ahh yes, it has come back to me. I think I did 1.week - x.seconds. Basically subtract a large number of seconds to get to however many minutes you need. Give that a try.

Just tried 2.weeks - 1209480.seconds and didn't work. No idea why it isn't working with a value less than 2 weeks. I'd appreciate if you have some new insights. Tks in advance.

DeviseTokenAuth.setup do |config|
  config.change_headers_on_each_request = true
  config.token_lifespan = 1800.seconds
  config.batch_request_buffer_throttle = 30.seconds
end

This is my entire devise token auth. I change the headers on each request because if you don't you will only have 30 min of activity, I want people logged out after 30 minutes of inactivity. I use the buffer throttle because I'm using angular with a decoupled rails api. The dashboard uses a bunch of requests and I don't want new tokens EVERY time. The default is 10 tokens, and without the throttle it's easy to have 10 tokens pretty quick from a dashboard. you can also up the token array to a higher number but 10 should suffice. The app I'm using this on is for a large logistics company and they haven't had issues.

Perfect! Tks very much, @MrNagoo

Sounds like we have a proposed solution here, closing for now.


Add options to improve accuracy of alm calculation

By default, the map2alm calculation internal to the xfaster algorithm uses ring
weights with the default (3) iterations to compute alms.  See here for a
discussion of the accuracy of this calculation:
https://healpix.sourceforge.io/html/fac_anafast.htm

and see here for documentation of the map2alm function:
https://healpy.readthedocs.io/en/latest/generated/healpy.sphtfunc.map2alm.html

To improve the accuracy, we add two new options that are passed to the healpy
map2alm function:

alm_pixel_weights, which enables using pixel-based weights, rather than
ring weights.  This option can only be used if lmax < 1.5 * nside.
alm_iter, which will default to None (i.e. keep the default number of
iterations that healpy uses, which is 3).  Set the number of iterations to a
higher integer value to improve the accuracy of the alms computed with ring
weights.

Verified these options do not affect normal operation, so merging this now.


bug: clean installation not working

I just cloned the repository and I am trying to install the project following our guidelines.
When running make test I get an error related to MySQL Client. If I run poetry install, same happens. Error below:
~ poetry install
Installing dependencies from lock file

Package operations: 1 install, 0 updates, 0 removals

  • Installing mysqlclient (2.2.3): Failed

  CalledProcessError

  Command '['/Users/lucasrodes/repos/etl/.venv/bin/python', '-m', 'pip', 'install', '--use-pep517', '--disable-pip-version-check', '--isolated', '--no-input', '--prefix', '/Users/lucasrodes/repos/etl/.venv', '--no-deps', '/Users/lucasrodes/Library/Caches/pypoetry/artifacts/8d/06/6e/1c5b3b4e470b853206aefe7e516af70e90a9a7bc819ee8495ab1257bea/mysqlclient-2.2.3.tar.gz']' returned non-zero exit status 1.

  at ~/.pyenv/versions/3.11.1/lib/python3.11/subprocess.py:571 in run
       567│             # We don't call process.wait() as .__exit__ does that for us.
       568│             raise
       569│         retcode = process.poll()
       570│         if check and retcode:
    →  571│             raise CalledProcessError(retcode, process.args,
       572│                                      output=stdout, stderr=stderr)
       573│     return CompletedProcess(process.args, retcode, stdout, stderr)
       574│
       575│

The following error occurred when trying to handle this error:

  EnvCommandError

  Command ['/Users/lucasrodes/repos/etl/.venv/bin/python', '-m', 'pip', 'install', '--use-pep517', '--disable-pip-version-check', '--isolated', '--no-input', '--prefix', '/Users/lucasrodes/repos/etl/.venv', '--no-deps', '/Users/lucasrodes/Library/Caches/pypoetry/artifacts/8d/06/6e/1c5b3b4e470b853206aefe7e516af70e90a9a7bc819ee8495ab1257bea/mysqlclient-2.2.3.tar.gz'] errored with the following return code 1, and output:
  Processing /Users/lucasrodes/Library/Caches/pypoetry/artifacts/8d/06/6e/1c5b3b4e470b853206aefe7e516af70e90a9a7bc819ee8495ab1257bea/mysqlclient-2.2.3.tar.gz
    Installing build dependencies: started
    Installing build dependencies: finished with status 'done'
    Getting requirements to build wheel: started
    Getting requirements to build wheel: finished with status 'error'
    error: subprocess-exited-with-error

    × Getting requirements to build wheel did not run successfully.
    │ exit code: 1
    ╰─> [30 lines of output]
        /bin/sh: pkg-config: command not found
        /bin/sh: pkg-config: command not found
        /bin/sh: pkg-config: command not found
        Trying pkg-config --exists mysqlclient
        Command 'pkg-config --exists mysqlclient' returned non-zero exit status 127.
        Trying pkg-config --exists mariadb
        Command 'pkg-config --exists mariadb' returned non-zero exit status 127.
        Trying pkg-config --exists libmariadb
        Command 'pkg-config --exists libmariadb' returned non-zero exit status 127.
        Traceback (most recent call last):
          File "/Users/lucasrodes/repos/etl/.venv/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 351, in <module>
            main()
          File "/Users/lucasrodes/repos/etl/.venv/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 333, in main
            json_out['return_val'] = hook(**hook_input['kwargs'])
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
          File "/Users/lucasrodes/repos/etl/.venv/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 118, in get_requires_for_build_wheel
            return hook(config_settings)
                   ^^^^^^^^^^^^^^^^^^^^^
          File "/private/var/folders/gd/59pzvyv54g1_2y72h60y6s_00000gn/T/pip-build-env-2c8jjapz/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in get_requires_for_build_wheel
            return self._get_build_requires(config_settings, requirements=['wheel'])
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
          File "/private/var/folders/gd/59pzvyv54g1_2y72h60y6s_00000gn/T/pip-build-env-2c8jjapz/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 295, in _get_build_requires
            self.run_setup()
          File "/private/var/folders/gd/59pzvyv54g1_2y72h60y6s_00000gn/T/pip-build-env-2c8jjapz/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 311, in run_setup
            exec(code, locals())
          File "<string>", line 155, in <module>
          File "<string>", line 49, in get_config_posix
          File "<string>", line 28, in find_package_name
        Exception: Can not find valid pkg-config name.
        Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
        [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip.
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.

  at ~/.pyenv/versions/3.11.1/lib/python3.11/site-packages/poetry/utils/env.py:1540 in _run
      1536│                 output = subprocess.check_output(
      1537│                     command, stderr=subprocess.STDOUT, env=env, **kwargs
      1538│                 )
      1539│         except CalledProcessError as e:
    → 1540│             raise EnvCommandError(e, input=input_)
      1541│
      1542│         return decode(output)
      1543│
      1544│     def execute(self, bin: str, *args: str, **kwargs: Any) -> int:

The following error occurred when trying to handle this error:

  PoetryException

  Failed to install /Users/lucasrodes/Library/Caches/pypoetry/artifacts/8d/06/6e/1c5b3b4e470b853206aefe7e516af70e90a9a7bc819ee8495ab1257bea/mysqlclient-2.2.3.tar.gz

  at ~/.pyenv/versions/3.11.1/lib/python3.11/site-packages/poetry/utils/pip.py:58 in pip_install
       54│
       55│     try:
       56│         return environment.run_pip(*args)
       57│     except EnvCommandError as e:
    →  58│         raise PoetryException(f"Failed to install {path.as_posix()}") from e
       59│

Does install pkg-config with brew install pkg-config or sudo apt-get install pkg-config works?

Should have been fixed by https://github.com/owid/etl/pull/2557/files


Effect is getting freeze when caught an error in catch.

My effects are getting freeze when either of the effect control goes to its catch block. To mitigate this, I am trying to dispatch an action from catch block using below line. It is getting dispatched but then also freezing the effects.
@Effect() accountLookupFormPostData : Observable<Action>= this.actions
      .ofType( AccountLookupActions.ActionTypes.ACCOUNT_LOOKUP_FORM_CLICK_POST_DATA )
      .map(toPayload)
      .switchMap(( accountLookupForm : FormGroup ) => {
          return this.accountLookupFormService.getAccountLookupResponse(accountLookupForm.value)
        .catch((responseError: Response) => {
           console.log("AccountLookupEffects : Caught Http Error in effects %o", responseError);
           let apiResponseErrors : Array<MessageModel> = [];
           apiResponseErrors.push(this.accountLookupFormService.apiErrorMessage('backEndError'));
           return of(this.accountLookupStore.dispatch(this.accountLookupActions.apiErrorHandler(apiResponseErrors)));
         })
    })
    .map((accountLookupResponse: AccountLookupResponseModel) => {
        console.log("AccountLookupEffects : accountLookupFormClick : call account lookup response ===>%o", accountLookupResponse);

        let apiResponseErrors: Array<MessageModel> = this.accountLookupFormService.validateAccountLookupResponse(accountLookupResponse)
        if ( AppUtil.isNull(apiResponseErrors) ) {
          return this.accountLookupActions.accountLookupResponse(accountLookupResponse);
        }
        else {
          return this.accountLookupActions.accountLookupOnError(apiResponseErrors);
        }

      });

Could you anyone suggest me what is the correct way to do it?

Your catch block should be returning an Observable of a new action instead of dispatching in the Observable

I have tried that as well and read somewhere that would have to return an Observable, but returning an Observable of a new action didn't work. I have tried
return of(this.accountLookupActions.apiErrorHandler(apiResponseErrors));
With the help of below code we're able to resolve this.
export function onErrorResumeEffects() : Observable<Action> {
       let  errorObservable$ = new ReplaySubject<any>();
       return errorObservable$.onErrorResumeNext();
}

Now we're returning above action from the catch block to unfreeze any effect. Please suggest me, is this correct?


Refactor bnpy data clustering apps

Currently the data clustering implementation the bnpy-based apps is functional, but can be slow to converge when too much training data is added. It can also be awkward to re-cluster after the model is updated. In order to have automatic region of interest selection in Peregrine, the clustering implementation should be sped up. Some ideas for enhancements:

use a representative sample for training instead of the entire dataset
instead of training and clustering for each part sequentially, create training data based on all parts first and then cluster
create a the Bnpy subclass of the base App class to streamline the apps themselves

Removing this from the Peregrine demonstration milestone, because of the capability implemented in #25. Updating the bnpy app is still planned, but lower priority for the moment.


[FLINK-29376] Set SHUTDOWN_ON_APPLICATION_FINISH to false only on 1.15 and above

What is the purpose of the change
If the user incorrectly sets a Flink version lower than 1.15 when using 1.15 or above:
image: flink:1.15
  flinkVersion: v1_14

then a spec change ends-up in exception and restart loop. In this PR we set SHUTDOWN_ON_APPLICATION_FINISH to false when Flink version is less than 1.15.
Brief change log

Set SHUTDOWN_ON_APPLICATION_FINISH to false only on 1.15 and above
Added unit test for all available Flink versions

Verifying this change

New unit test
Manually

Deploy app where
image: flink:1.15 flinkVersion: v1_14
Wait for RUNNING state
Change Flink config
Double check that Flink is re-deployed and in RUNNING state again

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changes to the CustomResourceDescriptors: no
Core observer or reconciler logic that is regularly executed: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

cc @gyfora


Wayland Support for the package

When starting a rom, Cemu crash instantly with this error :
On Vulkan :

On OpenGL

traduction : This program was not compiled with the EGL support required on Wayland so, either install EGL librairies and re-build or execute it under the X11 backend by defining GTK_BACKEND=x11 as env variable before starting the program.
I am on Wayland :

The appimage of the same version (0.32) works.
I don't know if it's a compiling or packaging issue so please tell me if this issue is relevant here.

Package version please:
$ rpm -q Cemu

Post the terminal output and Cemu log.

Start Cemu from terminal
Set API to Vulkan
Reproduce the crash
Copy and paste all terminal output from the start
Attach the log file ~/.local/share/Cemu/log.txt

Is your Nvidia dGPU the primary GPU?

I haven't done anything in the package regarding Wayland support.
Wayland is enabled by default in the upstream CMake config (ENABLE_WAYLAND=ON) and I didn't disable it (no ENABLE_WAYLAND=OFF).
As far as I can tell, everything builds correctly w.r.t. Wayland according to the build log of the latest package (various Wayland/EGL-related packages are present, no Wayland-specific errors).

package version : Cemu-2.0^20230415gita6e9481-1.fc37.x86_64
terminal output :

log.txt is not created (I don't have a log.txt in ~/.local/share/Cemu directory)
yes the Nvidia dGPU is the gpu used by Cemu in vulkan

Well there isn't anything for me to work with.
As a workaround, you can try setting GDK_BACKEND=x11 to use xWayland.
$ GDK_BACKEND=x11 Cemu

If it works, you can override the desktop file:
$ sed -e '/^Exec=/ c Exec=env GDK_BACKEND=x11 Cemu' /usr/share/applications/info.cemu.Cemu.desktop > ~/.local/share/applications/info.cemu.Cemu.desktop

Thank it work and I can confirm that log work (if cemu crash no log is writed) but i bother me that I still don't know why it doesn't work on Wayland

I don't know either, and I don't use Wayland so it's unlikely I will find out soon.


Getting InvalidSyntaxError

var animal = random(1, 3)
if animal = 1 then
print("You have Pikachu!")
elif animal = 2 then
print("You have Charmander!")
else then
print("You have Squirtle!")
end
I made the keywords lowercase and added a random function, but it says the if is causing an InvalidSyntaxError, the example works, and I don't know what I did differently, it says a token can't appear after another token.

At which episode are you?
Did you recopied manually the code or cloned this repo?
What are your modifications?
Can you share the code of what you modified?

ahh this is a year old and I don't have my old files because my old computer is pretty much broken, so I'm just going to close this since I can't recreate the issue and it's not really relevant anymore.


update transaction-emitter to use rest client and update related tests

Motivation
Start to migrate tests to call REST API (#9193)
The transaction-emitter is widely used across several test suites, start from here.
Test Plan
CI Build

/canary

:sunny: Canary successful

/help

Bors help and documentation

Bors is a Github App used to manage merging of PRs in order to ensure that CI is always green. It does so by maintaining a Merge Queue. Once a PR reaches the head of the Merge Queue it is rebased on top of the latest version of the PR's base-branch (generally master) and then triggers CI. If CI comes back green the PR is then merged into the base-branch. Regardless of the outcome, the next PR is the queue is then processed.
General

This project's Merge Queue can be found here.
This project requires PRs to be Reviewed and Approved before they can be queued for merging.
Before PR's can be merged they must be configured with "Allow edits from maintainers" enabled. This is needed for Bors to be able to update PR's in-place so that Github can properly recognize and mark them as "merged" once they've been merged into the upstream branch.

Commands
Bors actions can be triggered by posting a comment which includes a line of the form /<action>.

Command
Action
Description

Land
land, merge
attempt to land or merge a PR

Canary
canary, try
canary a PR by performing all checks without merging

Cancel
cancel, stop
stop an in-progress land

Cherry Pick
cherry-pick <target>
cherry-pick a PR into <target> branch

Priority
priority
set the priority level for a PR (high, normal, low)

Help
help, h
show this help message

Options
Options for Pull Requests are configured through the application of labels.

          Option
Description

Indicates that the PR is high-priority. When queued the PR will be placed at the head of the merge queue.

Indicates that the PR is low-priority. When queued the PR will be placed at the back of the merge queue.

Before merging the PR will be squashed down to a single commit, only retaining the commit message of the first commit in the PR.

/canary

:broken_heart: Test Failed - ci-test

:broken_heart: Test Failed - ci-test

/canary

I assume we are trying to replace json-rpc endpoint to rest endpoint, have you checked whether rest service is available on cluster? (AKA: service port? haproxy routine? etc), for last failure, I think in fn health_check(&mut self) -> Result<(), HealthCheckError>, it tried to create a new runtime in a runtime, which hitted thread 'main' panicked at 'Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.'

:broken_heart: Test Failed - ci-test

/canary

I assume we are trying to replace json-rpc endpoint to rest endpoint, have you checked whether rest service is available on cluster? (AKA: service port? haproxy routine? etc), for last failure, I think in fn health_check(&mut self) -> Result<(), HealthCheckError>, it tried to create a new runtime in a runtime, which hitted thread 'main' panicked at 'Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.'

It's same port with json-rpc port, and default on like json-rpc, so the rest endpoint is on.
Where you get that error message?

I assume we are trying to replace json-rpc endpoint to rest endpoint, have you checked whether rest service is available on cluster? (AKA: service port? haproxy routine? etc), for last failure, I think in fn health_check(&mut self) -> Result<(), HealthCheckError>, it tried to create a new runtime in a runtime, which hitted thread 'main' panicked at 'Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.'

It's same port with json-rpc port, and default on like json-rpc, so the rest endpoint is on. Where you get that error message?

https://github.com/diem/diem/actions/runs/1574565615, u can check logs in failed job

I assume we are trying to replace json-rpc endpoint to rest endpoint, have you checked whether rest service is available on cluster? (AKA: service port? haproxy routine? etc), for last failure, I think in fn health_check(&mut self) -> Result<(), HealthCheckError>, it tried to create a new runtime in a runtime, which hitted thread 'main' panicked at 'Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.'

It's same port with json-rpc port, and default on like json-rpc, so the rest endpoint is on. Where you get that error message?

https://github.com/diem/diem/actions/runs/1574565615, u can check logs in failed job

Do you mind pointing me to a specific join log?
The build was failed due to e2e test (1) job failed, but in the log, there is not error mentioning  thread 'main' panicked at 'Cannot start a runtime from within a runtime, and other jobs are canceled.

/canary

I assume we are trying to replace json-rpc endpoint to rest endpoint, have you checked whether rest service is available on cluster? (AKA: service port? haproxy routine? etc), for last failure, I think in fn health_check(&mut self) -> Result<(), HealthCheckError>, it tried to create a new runtime in a runtime, which hitted thread 'main' panicked at 'Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.'

It's same port with json-rpc port, and default on like json-rpc, so the rest endpoint is on. Where you get that error message?

https://github.com/diem/diem/actions/runs/1574565615, u can check logs in failed job

Do you mind pointing me to a specific join log? The build was failed due to e2e test (1) job failed, but in the log, there is not error mentioning  thread 'main' panicked at 'Cannot start a runtime from within a runtime, and other jobs are canceled.

U can check Run land blocking test in Forge job, I think it is failed as well

Run land blocking test in Forge

Thanks, found them. I think it needs better handling than just execute in a runtime then, I probably revert to use blocking reqwest call for now.

Run land blocking test in Forge

Thanks, found them. I think it needs better handling than just execute in a runtime then, I probably revert to use blocking reqwest call for now.

yea, we might better to change those stuff into async in H1, which will be much easier

/merge

@xli :bulb: This PR is currently being canaried, cancel the canary before queuing for landing

/cancel

/merge


[Target] Support obtain l2 cache size from target

This PR supports obtain l2 cache size from target. The API is
target.l2_cache_size_bytes

The l2 cache size is hardcoded in src/target/tag.cc.
This is useful for specializing schedule rules for different targets.
This PR is followup of #15332
cc @yzh119 @zxybazh

@zxybazh Thanks for the review


AnnData.raw is returning Nonetype (for HLCA)

Hi,
I downloaded HLCA data and gave it a variable name adata_all, then ran the following command
print('type of adata_all.raw:', type(adata_all.raw))
adata = adata_all.raw.to_adata()
I got this error
type of adata_all.raw: <class 'NoneType'>
AttributeError                            Traceback (most recent call last)
/tmp/ipykernel_366/1676474538.py in
1 print('type of adata_all.raw:', type(adata_all.raw))
----> 2 adata = adata_all.raw.to_adata()
3 adata = remove_sparsity(adata)
4 source_adata = adata
5 target_adata = query_data
AttributeError: 'NoneType' object has no attribute 'to_adata'
Thanks

Does the object have data in the raw slot? @LisaSikkema

Hi @MohammedZidane , where did you download the object from?

Hi lisa,
I downloaded it from
https://docs.scvi-tools.org/en/stable/tutorials/notebooks/query_hlca_knn.html

I see, that is actually just the embedding of the data, it doesn't have the raw counts. You can download the full HLCA from e.g. cellxgene, for all relevant links see the HLCA homepage:
https://github.com/LungCellAtlas/HLCA
It also has other information about the HLCA that might be helpful for you. Let me know if that works!

It looks like this issue has been resolved. Let me know if that's not the case!


Table of Contents -> Alphabetic Ordering

It would be easier to use this repo if the table of contents / terms at the beginning of the main README.md file were listed in alphabetical order, in case the user is trying to search for a particular term.

It could be an Index at the end of the document referenced in ToC. I think it makes sense to keep ToC as it's right now so it reflects real order of covered topics.

I agree with keeping it in it's current order. I found it more important to explain them in the order they expand in complexity rather than alphabetical.


Extend cross-domain linking with more user/session information

Extending the cross-domain linking capability with a new parameter format adding the information of cross-navigation to a URLEncoded(B64(contents)) value which will be placed in the cross-domain linker param (_sp).
The tracker now accepts a useExtendedCrossDomainLinker parameter of type ExtendedCrossDomainLinkerOptions:
{
/* Enables the new `_sp` format using the cross_navigation information */
 useExtendedCrossDomainLinker: true
}

{
/* Enables the new `_sp` format using the cross_navigation information plus collecting the link text in the `reason` parameter. */
 useExtendedCrossDomainLinker: { enableLinkText: true }
}

The default behaviour is not changed.
Notes:

Added testing-library/dom allowing us to test DOM interactions on unit type of tests.

About the choise of extended in the naming I was thinking that this in v3 will add the 'new' way (b64) with the  additional properties.
In v4 the old one would be removed and we would only keep this one.
If though we decide to keep the same formatting (split with dots), optional will be a better naming.


Use Helix Admin API

See https://opensource.adobe.com/helix-admin/index.html

depends on https://github.com/adobe/project-helix/issues/566

Ready when you are to activate the new version of admin.hlx3.page.
In the meantime you can test with admin2.hlx3.page.


System tests Overview

We would like to go over our existing system tests and understand what we are running:

tests (workload) in https://github.com/adoptium/aqa-tests/tree/master/system and possibility in https://github.com/adoptium/aqa-tests/tree/master/functional/SyntheticGCWorkload
JVM options (i.e., -Xgcpolicy:balanced vs -Xgcpolicy:gencon)
heap size
test duration
others

This exercise is related to the feature: Off-Heap Technology for Large Arrays in Region-Based Garbage Collector. We may need to add long-running tests for balanced GC with different heap sizes.
Modes: https://github.com/adoptium/TKG/blob/master/resources/modes.xml

Test
Mode
GC Policy + other jvm opts used
Load
Heap size
duration
Impl
platform
Description

DaaLoadTest_daa1_5m
Mode110,Mode610
-Xgcpolicy:gencon
DAA1 load

5m
OpenJ9, IBM
all
DAA is a Math's library that comes with IBM's sdk, its aim is to boost Math's performance, specially for z/OS based systems. This library is particularly useful to allow JIT optimisation on legacy programs such as COBOL that contain native data structures (e.g. Packed Decimal) that wouldn't otherwise be exploited by the JIT. DAA1, DAA2, DAA3 and DAA_all are a varied mix of test cases used to verify that the IBM Data Access Accelerator API functions work correctly in a load environment.

 -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

5m
OpenJ9, IBM

DaaLoadTest_daa2_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

5m
OpenJ9, IBM

DaaLoadTest_daa3_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

5m
OpenJ9, IBM

DaaLoadTest_daa_all_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

5m
OpenJ9, IBM

5m
OpenJ9, IBM

LambdaLoadTest_HS_5m
Mode150, Mode650, Mode1000
No GC option specified
lambda load

HotSpot

The SVT lambda tests are a series of JUnit tests which verify that lambda expressions are working as expected. Details in doc.

LambdaLoadTest_J9_5m
Mode110,Mode610
-Xgcpolicy:gencon

5m
OpenJ9, IBM
all

LambdaLoadTest_CS_5m
N/A
-Xgcpolicy:gencon -Xgc:concurrentScavenge

5m
OpenJ9, IBM
bits.64

LambdaLoadTest_special_J9_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

5m
OpenJ9, IBM

ParallelStreamsLoadTest_HS
Mode150, Mode650, Mode1000
No GC option specified
parallel streams load

HotSpot

ParallelStreamsLoadTest_J9
Mode110,Mode610
-Xgcpolicy:gencon

OpenJ9, IBM
all

ParallelStreamsLoadTest_CS
N/A
-Xgcpolicy:gencon -Xgc:concurrentScavenge

OpenJ9, IBM
bits.64

ParallelStreamsLoadTest_special_J9
Mode101, Mode103, Mode104, Mode107, Mode112, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

OpenJ9, IBM
modes disabled on Win

MathLoadTest_all_5m
Mode150, Mode650, Mode1000
No GC option specified
math load

5m
all
all
The Math suite contains simple tests which are designed to exercise the Math apis. Details here.

 -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.
math load

5m
OpenJ9, IBM

MathLoadTest_autosimd_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.
autosimd load

5m
OpenJ9, IBM

MathLoadTest_bigdecimal_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.
bigdecimal load

5m
OpenJ9, IBM

MiniMix_5m
Mode150, Mode650, Mode1000
No GC option specified
mix-more load

5m
all

Mix of Mauve, bigdecimal, lang, nio, concurrent load tests

MiniMix_aot_5m
N/A
N/A

-Xmx3g -Xms3g
5m
all

MiniMix_3h
Mode551, Mode110-CS
-Xgcpolicy:balanced, -Xgcpolicy:gencon -Xgc:concurrentScavenge'

3h
OpenJ9, IBM

ClassLoadingTest_5m
Mode150, Mode650, Mode1000
No GC option specified
Classloading load

5m
all

The Classloading suite contains tests which are designed to exercise different aspects of Java classloading. Details here.

ClassLoadingTest_CS_5m

-Xgcpolicy:gencon -Xgc:concurrentScavenge

5m
all
bits.64,^arch.arm

ClassLoadingTest_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.

5m
all

ConcurrentLoadTest_5m
Mode150, Mode650, Mode1000
No GC option specified
Concurrent load

5m
all

ConcurrentLoadTest runs concurrency unit tests in a load test environment.

DBBLoadTest_5m
Mode150, Mode650, Mode1000
No GC option specified
Direct Byte Buffer , nio

5m
all
^os.zos
The nio tests were written to test this Java NIO API when it was introduced, the nio2 tests were later written when the Java NIO API was extended (from Java  1.7) to cover new functionality, the most significant being asynchronous I/O.The Direct Byte Buffer load test  allocates direct memory ByteBuffers and dereferences them. Details here.

LockingLoadTest
Mode150, Mode650, Mode1000
No GC option specified
Locking, mini-mix

The Locker test was created to exercise lock contention against String and array objects.

NioLoadTest_5m
Mode150, Mode650, Mode1000
No GC option specified
nio load

5m
all
^arch.arm,^os.zos
The nio tests were written to test this Java NIO API when it was introduced, the nio2 tests were later written when the Java NIO API was extended (from Java  1.7) to cover new functionality, the most significant being asynchronous I/O.

UtilLoadTest_5m
Mode150, Mode650, Mode1000
No GC option specified
util

5m
all

HCRLateAttachWorkload
Mode150, Mode650, Mode1000
No GC option specified
Runs mixed load of lang, util and math

all (JDK 8 only)

The HCRLoadTest runs a mixture of different unit tests repeatedly. Shortly after that process starts, we launch another one to late-attach a javaagent to the first process. This agent makes rapid, repeated changes to the java.lang.String class in the form of new method calls added into existing methods. These changes should not cause any change in behaviour, barring defects.

HCRLateAttachWorkload_previewEnabled
Mode150, Mode650, Mode1000
No GC option specified

all (JDK 11+)

HeapHogLoadTest_5m
Mode110,Mode610
-Xgcpolicy:gencon + -Xdisableexcessivegc
HeapHog

5m
OpenJ9, IBM

This test is designed to fill the heap but leave a specified space, rather than fill a specified space. Should allow the heap to be quickly filled to allow the testing of large heaps.

ObjectTreeLoadTest_5m
Mode110,Mode610
-Xgcpolicy:gencon + -Xnoclassgc
ObjectTree

5m
OpenJ9, IBM

The ObjectTree test class creates a large object tree and fills up the memory over time.

SharedClassesAPI
Mode110,Mode610
-Xgcpolicy:gencon
Runs a mix of lang, util and math loads

OpenJ9, IBM

The test plugin runs a set of tests that use various combinations of shared classes options and cache locations, the tests are then repeated for each API type (Java or JVMTI). The Java API is accessed through the package com.ibm.oti.shared via the SharedClassesCacheChecker class and the native API is available as JVMTI extension functions. Each test starts multiple JVMs running a small mini-mix workload connecting to multiple shared classes caches and later starts another JVM to query/delete the caches using either the Java API or the JVMTI API.

SharedClassesWorkload
Mode110,Mode610
-Xgcpolicy:gencon
Runs a mix of lang, util and math loads

OpenJ9, IBM

Runs a workload with shared classes creating a named cache in the results directory Checks that a cache was created. Does another workload run using this named cache. Checks no other caches exist. Deletes the cache. Does two sequential workload runs, with multiple JVM instances in each run, creating and using a common cache. Checks that only one cache was created. Deletes the cache.

SC_Softmx_Increase
Mode110,Mode610
-Xgcpolicy:gencon

OpenJ9, IBM

Starts Jvm1 that sets softmx to say 1mb and shared cache hard limit to say 20mb. Jvm1 fills up cache, Jvm2 will check if cache's usage has reached softmx, if yes, then Jvm2 will adjust softmx to increased value of e.g. 2mb. Start Jvm3 and continue loading the cache.

SC_Softmx_UpDown
Mode110,Mode610
-Xgcpolicy:gencon

OpenJ9, IBM

Start 2 jvms that write to the cache. Increase cache size so they can complete execution. Decrease the cache size so that further attempts to write to cache fails.

SC_Softmx_JitAot
Mode110,Mode610
-Xgcpolicy:gencon

OpenJ9, IBM

Test if we can write AOT and JIT data even after cache is soft full, as long as we have reserved spaces for JIT and AOT data in the cache.

SharedClasses.SCM01.SingleCL
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation}
One classLoader, loads all classes (20000) in a single jar file. This is the simplest test in the suite, its aim is to populate the cache in the simplest and most obvious way without stressing the classpath caching.

OpenJ9, IBM

Runs various extremes of classloading, whilst mixing -Xshareclasses options which are either diagnostic in nature or are likely options for customers.

SharedClasses.SCM01.MultiCL
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation}
As above, however a separate classLoader is used to load each class from the jar file. This test introduces multiple classLoaders to stress the classpath caching

OpenJ9, IBM

SharedClasses.SCM01.MultiThread
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation}
As “Single Class Loader”, however a thread is forked to load each class file from the jar. This test is aimed at stressing the concurrent access control without being too demanding on the rest of the caching code.

OpenJ9, IBM

SharedClasses.SCM01.MultiThreadMultiCL
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation}
As “Multiple Class Loader”, however each classLoader is created in it's own forked thread. The most stressful test for loading classes from a single jar - just a combination of the multiple classloaders and threads to make life difficult

OpenJ9, IBM

SharedClasses.SCM23.SingleCL
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation} -Xaot:forceAoT,count=1
One classLoader, loads all classes (20000) in a single jar file. This is the simplest test in the suite, its aim is to populate the cache in the simplest and most obvious way without stressing the classpath caching.

OpenJ9, IBM

SharedClasses.SCM23.MultiCL
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation} -Xaot:forceAoT,count=1
As above, however a separate classLoader is used to load each class from the jar file. This test introduces multiple classLoaders to stress the classpath caching

OpenJ9, IBM

SharedClasses.SCM23.MultiThread
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation} -Xaot:forceAoT,count=1
As Single Class Loader, however a thread is forked to load each class file from the jar. This test is aimed at stressing the concurrent access control without being too demanding on the rest of the caching code.

OpenJ9, IBM

SharedClasses.SCM23.MultiThreadMultiCL
Mode110,Mode610
-Xgcpolicy:gencon + -Xshareclasses:name=${cacheName},cacheDir=${cacheDir}${cacheOperation} -Xaot:forceAoT,count=1
As Multiple Class Loader, however each classLoader is created in it's own forked thread. The most stressful test for loading classes from a single jar - just a combination of the multiple classloaders and threads to make life difficult.

OpenJ9, IBM

OpenJ9, IBM
^os.osx

MauveSingleThrdLoad_J9_5m
Mode110,Mode610
-Xgcpolicy:gencon
Mauve-all load

5m

The MauveSingleThrdLoad runs a subset of tests from the GNU mauve project. The tests run on a single thread because some of them exercise swing and awt which are not thread safe.

MauveSingleThrdLoad_HS_5m
Mode150, Mode650, Mode1000
No GC option specified
Mauve-all load

5m
Hotspot
all

MauveSingleInvocLoad_J9_5m
Mode110,Mode610
-Xgcpolicy:gencon
Mauve-all load

5m
OpenJ9, IBM
^os.osx
The tests are run once to identify any issues which do not actually require a load test.

MauveSingleInvocLoad_HS_5m
Mode150, Mode650, Mode1000
No GC option specified
Mauve-all load

5m
Hotspot

MauveMultiThrdLoad_5m
Mode150, Mode650, Mode1000
No GC option specified
Mauve Multi-thread

5m
All

The MauveMultiThrdLoad runs a subset of tests from the GNU mauve project. All tests are thread safe.

MauveSingleThrdLoad_CS_5m
N/A
-Xgcpolicy:gencon -Xgc:concurrentScavenge
Mauve-all load

5m
OpenJ9, IBM
bits.64,^arch.arm

MauveSingleInvocLoad_CS_5m
N/A
-Xgcpolicy:gencon -Xgc:concurrentScavenge
Mauve-all load

5m
OpenJ9, IBM
bits.64,^arch.arm

MauveMultiThrdLoad_CS_5m
N/A
-Xgcpolicy:gencon -Xgc:concurrentScavenge
Mauve Multi-thread

5m
OpenJ9, IBM
bits.64,^arch.arm

MauveMultiThrdLoad_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.
Mauve Multi-thread

5m
OpenJ9, IBM (JDK 8 only)

MauveSingleThrdLoad_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.
Mauve-all load

5m
OpenJ9, IBM (JDK 8 only)

MauveSingleInvocLoad_special_5m
Mode101, Mode103, Mode104, Mode107, Mode112, Mode113, Mode121, Mode122, Mode145, Mode187, Mode301, Mode351, Mode501, Mode551, Mode553, Mode554, Mode555, Mode556, Mode557, Mode607, Mode614, Mode615, Mode687, Mode688, Mode107-OSRG, Mode110-OSRG, Mode610-OSRG, Mode612-OSRG, Mode645, -Xgcpolicy:gencon -Xgc:dynamicBreadthFirstScanOrdering
-Xgcpolicy:optthruput modes: {101, 103, 104, 107, 607, 107-OSRG}. -Xgcpolicy:gencon modes: {112, 113, 145, 614, 615, 687, 688, 110-OSRG, 610-OSRG, 612-OSRG, 645}. -Xgcpolicy:optavgpause modes: {121, 122, 187}. -Xgcpolicy:metronome modes {301, 351}. -Xgcpolicy:balanced modes: {501, 551, 553, 554, 555, 556, 557}. Details in modes.xml.
Mauve-all load

5m
OpenJ9, IBM (JDK 8 only)

TestJlmLocal
Mode150, Mode650, Mode1000
No GC option specified

All

Tests java.lang.management where a JVM monitors itself via its platform MBeans using a local connection.

TestJlmRemoteClassAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All
^os.win,^os.zos
A java.lang.management system test scenario for class related beans where a 'client' JVM monitors a remote 'server' JVM via the server's platform MBeans with both password file based security and ssl based security enabled.

TestJlmRemoteClassNoAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All

A java.lang.management system test scenario for Class related beans where a 'client' JVM monitors a remote 'server' JVM via the server's platform MBeans with ssl security disabled.

TestJlmRemoteMemoryAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All

A java.lang.management system test scenario for memory related beans where a 'client' JVM monitors a remote 'server' JVM via the server's platform MBeans with both password file based security and ssl based security enabled.

TestJlmRemoteMemoryNoAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All

A java.lang.management system test scenario for memory related beans  where a 'client' JVM monitors a remote 'server' JVM via the server's platform MBeans with ssl security disabled.

TestJlmRemoteNotifierProxyAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All

A java.lang.management system test scenario (for memory related beans)  where a 'client' JVM monitors a remote 'server' JVM via server's platform MBeans using a proxy connection with both password file based security and ssl based security enabled.

TestJlmRemoteThreadAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All
^os.win,^os.zos
A java.lang.management system test scenario for thread elated beans where a 'client' JVM monitors a remote 'server' JVM via the server's platform MBeans with both password file based security and ssl based security enabled.

TestJlmRemoteThreadNoAuth
Mode150, Mode650, Mode1000
No GC option specified
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

All

A java.lang.management system test scenario for Thread related beans where a 'client' JVM monitors a remote 'server' JVM via the server's platform MBeans with ssl security disabled.

TestIBMJlmLocal
Mode110,Mode610
-Xgcpolicy:gencon

OpenJ9, IBM

A com.ibm.lang.management APIs system test scenario where a JVM monitors itself via its platform MBeans using a local connection.

TestIBMJlmRemoteClassAuth
Mode110,Mode610
-Xgcpolicy:gencon
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

OpenJ9, IBM

These tests exercise com.ibm.lang.management APIs withn MBeans for a remote JVM using secure proxy and server connections

TestIBMJlmRemoteClassNoAuth
Mode110,Mode610
-Xgcpolicy:gencon
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

OpenJ9, IBM

These tests exercise com.ibm.lang.management APIs with MBeans for a remote JVM using non-secure proxy and server connections

TestIBMJlmRemoteMemoryAuth
Mode110,Mode610
-Xgcpolicy:gencon
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

OpenJ9, IBM

These tests exercise com.ibm.lang.management APIs with MBeans for a remote JVM using secure proxy and server connections

TestIBMJlmRemoteMemoryNoAuth
Mode110,Mode610
-Xgcpolicy:gencon
Server runs a mini-mix load test which is a mix of openjdk.test.lang, openjdk.test.util and openjdk.test.math.

OpenJ9, IBM

These tests exercise com.ibm.lang.management APIs with MBeans for a remote JVM using non-secure proxy and server connections

CpMp_CpMp
Mode150, Mode650, Mode1000
No GC option specified

All
Modularity tests for JDK 9+ Tests various features of modularity

CpMp_MP
Mode150, Mode650, Mode1000
No GC option specified

All

CpMp2
Mode150, Mode650, Mode1000
No GC option specified

All

CpMp3
Mode150, Mode650, Mode1000
No GC option specified

All

CpMpModJar
Mode150, Mode650, Mode1000
No GC option specified

All

CpMpModJar2
Mode150, Mode650, Mode1000
No GC option specified

All

CpMpModJar3
Mode150, Mode650, Mode1000
No GC option specified

All

InternalAPIs
Mode150, Mode650, Mode1000
No GC option specified

All

AutoMod1
Mode150, Mode650, Mode1000
No GC option specified

All

AutoMod2
Mode150, Mode650, Mode1000
No GC option specified

All

AutoMod_Impl1
Mode150, Mode650, Mode1000
No GC option specified

All

AutoMod_Impl2
Mode150, Mode650, Mode1000
No GC option specified

All

AutoMod_Impl3
Mode150, Mode650, Mode1000
No GC option specified

All

SLTest
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

PatMod_PlatMod
Mode150, Mode650, Mode1000
No GC option specified

All

PatMod_AppMod
Mode150, Mode650, Mode1000
No GC option specified

All

PatMod_Unex
Mode150, Mode650, Mode1000
No GC option specified

All

PatMod_Adv
Mode150, Mode650, Mode1000
No GC option specified

All

PatModImg_PlatMod
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

PatModImg_AppMod
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

PatModImg_Unex
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

PatModImg_Adv
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

UpgModPath_Exp
Mode150, Mode650, Mode1000
No GC option specified

All

UpgModPath_ExpImg
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

UpgModPath_Jar
Mode150, Mode650, Mode1000
No GC option specified

All

UpgModPath_JarImg
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

Jlink_ReqMod
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

Jlink_AddMLimitM
Mode150, Mode650, Mode1000
No GC option specified

^os.win,^os.zos

CpMpJlink
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

Jlink_GenOpt
Mode150, Mode650, Mode1000
No GC option specified

All

LayersTest
Mode150, Mode650, Mode1000
No GC option specified

All

CLTest
Mode150, Mode650, Mode1000
No GC option specified

All

CLTestImg
Mode150, Mode650, Mode1000
No GC option specified

^os.zos

CLLoad
Mode150, Mode650, Mode1000
No GC option specified

This STF test defines a load test where we drive the modularity class loading junit test class in a multi-threaded fashion.


[android] Handpicked/Partial/Selective .torrent downloads

being able to select individual files out of a .torrent before starting a download?
(for now the way to do this, is by connecting via WiFi, when UDP is available, FrostWire for Android should attempt to fetch and query the files inside the .torrent search results and show them as individual files on the rest of the search tabs, it's not exactly what you want but it's close)
Thanks for adding this task to the list, it's a very important feature missing.

@marcelinkaaa changes have been merged. Please test this new functionality throughly @muckachina.
If everything is fine please close this issue.


Added metrics for peer forwarder

Description

Added metrics (see the linked issue for all the metrics)
Updated PluginMetrics class to take generic arguments for generating metrics
I wasn't able to test the timer metrics (I tried to Spy NoopTimer but it doesn't have a default constructor to spy it). Let me know if you have any suggestions for how to test it. We have 2 timer metrics.

Issues Resolved
resolves #1609
Check List

[ ] New functionality includes testing.
[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed with a real name per the DCO

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1812 (125e75c) into main (27e39d2) will decrease coverage by 0.02%.
The diff coverage is 100.00%.

:exclamation: Current head 125e75c differs from pull request most recent head 28aae61. Consider uploading reports for the commit 28aae61 to get more accurate results

@@             Coverage Diff              @@
##               main    #1812      +/-   ##
============================================
- Coverage     93.94%   93.91%   -0.03%
- Complexity     1472     1477       +5
============================================
  Files           188      188
  Lines          4307     4342      +35
  Branches        355      357       +2
============================================
+ Hits           4046     4078      +32
- Misses          177      180       +3
  Partials         84       84

Impacted Files
Coverage Δ

...peerforwarder/discovery/LocalPeerListProvider.java
80.00% <ø> (ø)

.../com/amazon/dataprepper/metrics/PluginMetrics.java
100.00% <100.00%> (ø)

...aprepper/peerforwarder/PeerForwarderAppConfig.java
94.11% <100.00%> (+0.36%)
:arrow_up:

...pper/peerforwarder/PeerForwarderClientFactory.java
95.00% <100.00%> (+0.26%)
:arrow_up:

...taprepper/peerforwarder/PeerForwarderProvider.java
96.66% <100.00%> (+0.11%)
:arrow_up:

...dataprepper/peerforwarder/RemotePeerForwarder.java
88.70% <100.00%> (+2.70%)
:arrow_up:

...pper/peerforwarder/client/PeerForwarderClient.java
88.37% <100.00%> (+0.87%)
:arrow_up:

...rwarder/discovery/AwsCloudMapPeerListProvider.java
95.12% <100.00%> (+0.06%)
:arrow_up:

...prepper/peerforwarder/discovery/DiscoveryMode.java
100.00% <100.00%> (ø)

...r/peerforwarder/discovery/DnsPeerListProvider.java
100.00% <100.00%> (ø)

... and 5 more

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


typo, and removed Lua 5.1 dependency.

See PR https://github.com/Mashape/kong/pull/799

I applied this in a 0.6.0 branch created from master.
The workflow for the website is to make all the documentation changes under the previous folder version (here, 0.5.x), and open a PR. Any changes for the upcoming releases are made on that new branch, and because we make changes in the previous folder, we clearly see what are the changes. Then, just before merging, we rename the folder to the new version (will be 0.6.x here), grab the original 0.5.x, The diff suddenly becomes much bigger, but that's fine, we just merge and deploy.


[SPARK-22437][PYSPARK] default mode for jdbc is wrongly set to None

What changes were proposed in this pull request?
When writing using jdbc with python currently we are wrongly assigning by default None as writing mode. This is due to wrongly calling mode on the _jwrite object instead of self and it causes an exception.
How was this patch tested?
manual tests

Merged build finished. Test FAILed.

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

I think that the failure is an infra issue..

retest this please

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

Merged build finished. Test FAILed.

retest this please

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test FAILed.

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

retest this please

Test build #83416 has started for PR 19654 at commit dd52769.

Test build #83416 has finished for PR 19654 at commit dd52769.

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

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

Merged build finished. Test PASSed.

Merged to master.


Add support for buckets in different regions

When trying to use simples3 to connect to a bucket hosted in eu-west-1, I get the following error:
The bucket you are attempting to access must be addressed using the specified endpoint.

does this fixed or not?

same issue here. this should be top prio.

Tell me how you are trying to connect to it, I used simples3 with European servers many times!

bucket = simples3.S3Bucket(name="mybucket", base_url="http://eu-west.whatever.com/")

I forget exactly how the incantation looks. I'm all for adding a simples3.connect though, or open. Suggestions?

@lericson yes, I had to provide the full url (not just the base) into base_url for it to work. but it does not look so natural. this looks pretty:
bucket = S3Bucket(name='mybucket', region='us-west1')

Alright, that sounds awesome. Could you perhaps post some example of how to use a different region, so it can be included in the documentation until we get a better API?

I found a solution:
bucket = 'my_bucket'
access_key = 'AAAAAAAAAAAAAAAAAA'
secret_key = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'

s = simples3.S3Bucket(bucket,
    base_url="http://s3-eu-west-1.amazonaws.com/%s" % bucket,
    access_key=access_key,
    secret_key=secret_key)

s.put( 'todel.txt', 'blabla' )

Good stuff, would do well to make a more obvious API though.

Ludvig

On 1 feb. 2016, at 10:44, mdauphin<EMAIL_ADDRESS>wrote:
I found a solution:
bucket = 'my_bucket'
access_key = 'AAAAAAAAAAAAAAAAAA'
secret_key = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
s = simples3.S3Bucket(bucket,
base_url="http://s3-eu-west-1.amazonaws.com/%s" % bucket,
access_key=access_key,
secret_key=secret_key)
s.put( 'todel.txt', 'blabla' )
—
Reply to this email directly or view it on GitHub.


Added documentation about the Exception deriving

What about some documentation about the Exception deriving @prolic ? :)

thanks buddy


functional programming support

it will be very useful to extend dart to support functional programming features like function composition and Monads and more :)

Dart has first class functions, so to some extent you can do functional programming.
What Dart doesn't have is the ability to abstract over parameter lists. That's mainly a symptom of Dart actually having functions taking multiple parameters, instead of unary functions taking records as argument. Dart does not (yet) have records, so that wouldn't work.
Also, for monads, it's not possible to abstract over function type constructors.
If you limit yourself to unary functions, you can do all the usual functional programming compositions:
extension UnaryFunctions<R, P> on R Function(P) {
  R Function(T) compose<T>(P Function(T) other) => (T value) => this(other(value));
}
// ...
int increment(int value) => value + 1;
var add2 = increment.compose(increment);

Monads in the abstract are not really on the table, but you can define your own monads if you want to. Some would say that the Future type is one.

Closing as I don't see anything actionable here.  You can open specific language feature requests at https://github.com/dart-lang/language/issues/new/choose


TF is adding 'kubernetes.io/cluster/${var.cluster_name}' in node security group which causes issue for ALB creation

We are using terraform-aws-eks module to create EKS cluster.
When we have created the cluster, TF added kubernetes.io/cluster/${var.cluster_name} : owned tag to Node Security Group and Cluster Security Group, which caused following issue in creation of ALB,
"error":"expect exactly one securityGroup tagged with kubernetes.io/cluster/my-cluster for eni eni-456875998, got 	[sg-123456789 sg-321456878] (clusterName: my-cluster)"}

We are able to solve this issue by manually removing kubernetes.io/cluster/${var.cluster_name} : owned tag from Node's Security Group.
We need to remove kubernetes.io/cluster/${var.cluster_name} : owned tag from NodeSecurity Group module.
https://github.com/terraform-aws-modules/terraform-aws-eks/blob/918aa7cc40cbc072836410747834de64d84f514d/node_groups.tf#L197

please see the FAQ in the docs https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/docs/faq.md#i-received-an-error-expect-exactly-one-securitygroup-tagged-with-kubernetesioclustername-

We have created VPC using terraform-aws-vpc module only, not sure why kubernetes.io/cluster/${var.cluster_name} : owned is present for Node Security Group. We are using all default values. The ALB issue gets fixed when we remove the kubernetes.io/cluster/${var.cluster_name} : owned tag from Node's SG.


Create a new pull request

When using single-quotes in config.yml, the previous
regular expression in build/generate-cli.js wasn't working correctly,
it was replacing ALL string values with hashes.
Now both double- and single-quotes can be used in config.yml,
and the RegExp will work as expected.
Also, allow trailing whitespaces and empty ("") values to be matched.
Co-authored-by: XhmikosR<EMAIL_ADDRESS>

Pull Request Test Coverage Report for Build 378387649

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.06%) to 94.708%

Totals

Change from base Build 376214258:
-0.06%

Covered Lines:
1961

Relevant Lines:
2031

💛  - Coveralls


compile error

Hi,
I really would like to give your HAMT implementation a try, but using the latest master version, I get some compile errors. The main thing is that in HashTrie.h line 180/181 "m_value"  is not defined. I replaced it with m_key, but is this correct?
Also line 76 and 80 need a ";" at the end.
I use g++ (GCC) 4.8.3 20140911 (Red Hat 4.8.3-9)

Thanks for point that out. Those are all correct and for somehow I pushed the buggy version to Github. I was trying to convert to use CMake and test on Linux system but did'n get time to finish. I'll fix the bug when I push with CMake and other changes in the next time. Meanwhile, your fixes are correct and use them.


unable to get any notification

I am using this package in my project. I  have added all dependencies mentioned in the Read.me  but there is no notification shown on my mobile when geofence trigger .Dev logs shows the status change of geofence but no notification is visible. Can anyone help me with this

Notification generated by this plugin do not appear when the geofence service is started or triggered. A notification appears when the geofence service is started and the app enters the background.
The reason the notification is created is to start a foreground service. On the Android platform, apps need certain permissions and foreground services to navigate to a background location without going to sleep. For more information, see here / here.


Network code for song metadata pulls is fragile

No exception handling has been implemented to address failure of either of the metadata sources (MPD and Spotify).  If either service is unavailable the program will exit.

The code has been cleaned up somewhat.  It will no longer immediately blow up if MPD or SPOP fail to respond.  It does not attempt to restart the services though which makes tolerating the failure not that useful.

The code no longer expects there to be a live connection to either the MPD or SPOP services.  If they are not up and running, the code attempts to restablish connection.


Support template entry methods in generated code from TRAM [aggregate] entry method attribute

Original issue: https://charm.cs.illinois.edu/redmine/issues/1227

No body.

Original date: 2017-04-25 21:08:53

Being deferred to 6.8.1. The current workaround is to use overloaded entry methods for each type, instead of a templated entry method, and have each of them just delegate to a regular templated method. This hurts modularity a bit, but for cases where all types that will be passed to the entry method are known up front this should be a sufficient workaround for the time being.

Original date: 2018-01-31 04:48:24

Deferring. The current workaround still exists, this feature is not heavily used, and would require a decent amount of change to code-gen.


Update MainFragment.java

refactor(MainFragment) remove code duplication; send code execution through a single entry point;

thanks! rebasing it with my latest changes was no fun though.

I guess.
Actually, when I was creating this pull request only one commit with MainFragment was present. I forgot that my new commits in master branch are gathered here too. :)

all good. thanks for the changes!


WIP: db: remove "resolution" field from "impediment" WIT

Add migration step to remove enum field "resolution" in "impediment" WIT before re-adding it with the "agile" space template.
See also openshiftio/openshift.io#3879.

Codecov Report

Merging #2140 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2140      +/-   ##
==========================================
+ Coverage   69.37%   69.37%   +<.01%
==========================================
  Files         165      165
  Lines       15277    15278       +1
==========================================
+ Hits        10598    10599       +1
  Misses       3719     3719
  Partials      960      960

Impacted Files
Coverage Δ

migration/migration.go
60.26% <100%> (+0.13%)
:arrow_up:

Continue to review full report at Codecov.

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


parallel test

I am having trouble running in parallel so I thought I'd make a test. Annoyingly the test works.

I have added the parallel testing as we did for the slice code but it might not be the best way to do it

mpirun -np 2 python examples/dcmip_3-1_linear_advection_triangle_bdfm1.py gives the error:
Traceback (most recent call last):
File "examples/dcmip_3-1_linear_advection_triangle_bdfm1.py", line 164, in
stepper.run(t=0, tmax=3600.0)
File "/home/jshipton/src/dcore/dcore/timeloop.py", line 43, in run
state.dump()
File "/home/jshipton/src/dcore/dcore/state.py", line 88, in dump
state.dump()
File "/home/jshipton/src/dcore/dcore/state.py", line 88, in dump
self.dumpfile.write(*funcs)
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 482, in write
self.dumpfile.write(*funcs)
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 482, in write
vtu = self._write_vtu(*functions)
vtu = self._write_vtu(*functions)
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 381, in _write_vtu
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 381, in _write_vtu
vtu = self._write_single_pvtu(basename, coordinates, *functions)
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 465, in _write_single_pvtu
vtu = self._write_single_pvtu(basename, coordinates, *functions)
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 465, in _write_single_pvtu
f.write('\n' % (get_vtu_name(basename, rank)))
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 191, in get_vtu_name
if comm.size == 1:
AttributeError: 'int' object has no attribute 'size'
f.write('\n' % (get_vtu_name(basename, rank)))
File "/home/jshipton/src/firedrake/local/lib/python2.7/site-packages/firedrake/output.py", line 191, in get_vtu_name
if comm.size == 1:
AttributeError: 'int' object has no attribute 'size'

See the test_parallel branch for the parallel test.

Oh, can I only assign one of you? Just wanted to make sure you both saw the issue but maybe you get notified anyway... sorry, still getting used to github!

Thanks, fixed in firedrakeproject/firedrake#750.

@jshipton: If you want to make sure they see it, just use "@" + github username. For example: @wence-, @colinjcotter.

Should be fixed after updating firedrake.


RigidBodyDynamics.jl- 6. Symbolics using SymPy

When I try to execute the following code that Thiago had written (and which is on the L2C drive) about driving a double pendulum with a symbolic representation:
using RigidBodyDynamics
using StaticArrays
using Symbolics

inertias = @variables m_1 m_2 I_1 I_2 positive = true
lengths = @variables l_1 l_2 c_1 c_2 real = true
gravitational_acceleration = @variables g real = true
params = [inertias..., lengths..., gravitational_acceleration...]
transpose(params)

T = Num
axis = SVector(zero(T), one(T), zero(T)) # axis of rotation for each of the joints
double_pendulum = Mechanism(RigidBody{T}("world"); gravity = SVector(zero(T), zero(T), g))
world = root_body(double_pendulum) # the fixed 'world' rigid body

inertia1 = SpatialInertia(CartesianFrame3D("upper_link"),
    moment=I_1 * axis * transpose(axis),
    com=SVector(zero(T), zero(T), c_1),
    mass=m_1)
body1 = RigidBody(inertia1)
joint1 = Joint("shoulder", Revolute(axis))
joint1_to_world = one(Transform3D{T}, frame_before(joint1), default_frame(world));
attach!(double_pendulum, world, body1, joint1,
    joint_pose = joint1_to_world);

inertia2 = SpatialInertia(CartesianFrame3D("lower_link"),
    moment=I_2 * axis * transpose(axis),
    com=SVector(zero(T), zero(T), c_2),
    mass=m_2)
body2 = RigidBody(inertia2)
joint2 = Joint("elbow", Revolute(axis))
joint2_to_body1 = Transform3D(
    frame_before(joint2), default_frame(body1), SVector(zero(T), zero(T), l_1))
attach!(double_pendulum, body1, body2, joint2,
    joint_pose = joint2_to_body1)

x = MechanismState(double_pendulum);

q = configuration(x)

v = velocity(x)

simplify.(mass_matrix(x)) # This gives you the general inertia matrix M(x) of the mechanism

@variables v_1 v_2 # joint velocities
@variables v̇_1 v̇_2 # joint accelarations

v̇ = similar(velocity(x)) # the joint acceleration vector, i.e., the time derivative of the joint velocity vector v
v̇[joint1][1] = v̇_1
v̇[joint2][1] = v̇_2

simplify.(inverse_dynamics(x, v̇)) # this gives you τ

I get the following error with julia-1.6, while it works with julia-1.5:
ERROR: LoadError: MethodError: no method matching decompose(::Num)
Closest candidates are:
  decompose(::Integer) at float.jl:555
  decompose(::Float16) at float.jl:557
  decompose(::Float32) at float.jl:568
  ...
Stacktrace:
  [1] isfinite(x::Num)
    @ Base .\float.jl:453
  [2] isinf(x::Num)
    @ Base .\float.jl:461
  [3] abs(q::Quaternions.Quaternion{Num})
    @ Quaternions C:\Users\jcalbert\.julia\packages\Quaternions\au6LK\src\Quaternion.jl:143
  [4] sign(x::Quaternions.Quaternion{Num})
    @ Base .\number.jl:135
  [5] QuatRotation
    @ C:\Users\jcalbert\.julia\packages\Rotations\VYTDG\src\unitquaternion.jl:22 [inlined]
  [6] QuatRotation
    @ C:\Users\jcalbert\.julia\packages\Rotations\VYTDG\src\unitquaternion.jl:46 [inlined]
  [7] Rotations.QuatRotation(w::Num, x::Num, y::Num, z::Num, normalize::Bool)
    @ Rotations C:\Users\jcalbert\.julia\packages\Rotations\VYTDG\src\unitquaternion.jl:50
  [8] Rotations.QuatRotation(w::Num, x::Num, y::Num, z::Num)
    @ Rotations C:\Users\jcalbert\.julia\packages\Rotations\VYTDG\src\unitquaternion.jl:49
  [9] rotation_between(from::SVector{3, Num}, to::SVector{3, Num})
    @ Rotations C:\Users\jcalbert\.julia\packages\Rotations\VYTDG\src\unitquaternion.jl:328
 [10] Revolute{Num}(axis::SVector{3, Num})
    @ RigidBodyDynamics C:\Users\jcalbert\.julia\packages\RigidBodyDynamics\8B04X\src\joint_types\revolute.jl:16
 [11] Revolute(axis::SVector{3, Num})
    @ RigidBodyDynamics C:\Users\jcalbert\.julia\packages\RigidBodyDynamics\8B04X\src\joint_types\revolute.jl:26
 [12] top-level scope
    @ C:\Users\jcalbert\Downloads\Thiago-double_pendulum\Symbolic_model.jl:33
 [13] include(fname::String)
    @ Base.MainInclude .\client.jl:444
 [14] top-level scope
    @ REPL[6]:1
in expression starting at C:\Users\jcalbert\Downloads\Thiago-double_pendulum\Symbolic_model.jl:33

Similarly, the following code in the example does not work in Julia-1.6 either.
https://github.com/JuliaRobotics/RigidBodyDynamics.jl/tree/master/examples/6.%20Symbolics%20using%20SymPy

It seems that https://github.com/JuliaGeometry/Quaternions.jl/pull/122 broke our example.
Maybe isinf could be defined for Symbolics numbers ?

A similar error was thrown here: https://github.com/JuliaSymbolics/Symbolics.jl/issues/91 but it was fixed in https://github.com/korsbo/Latexify.jl/pull/145 without defining isinf in Symbolics.jl

This issue is relevant: https://github.com/JuliaSymbolics/Symbolics.jl/issues/97
We can just use type piracy for the methods that are missing


Function not activated

Text below is machine transaltion
@kumbrink commented on Mon Nov 11 2019
Good day,
Apparently, this feature is not allowed for all licenses. Such information should perhaps be included in a rollout message before spending a long time on a feature.
Best regards

Dokumentdetails
⚠ Bearbeiten Sie diesen Abschnitt nicht. Er ist für die Verknüpfung von docs.microsoft.com zum GitHub-Artikel erforderlich.

ID: ee217532-6b64-61f7-d965-bc95d9198cdb
Version Independent ID: f6bab9a9-1b8b-01db-6e42-045eb04efe9e
Content: Einrichten des Ablaufs für Office 365-Gruppen – Azure Active Directory
Content Source: articles/active-directory/users-groups-roles/groups-lifecycle.md
Service: active-directory
Sub-service: users-groups-roles
GitHub Login: @curtand
Microsoft Alias: curtand

@srvbpigh commented on Mon Nov 11 2019
Hello, @kumbrink
Thank you for your feedback.
We are actively reviewing your comments and will get back to you soon.
Kind regards,
Microsoft DOCS International Team

@v-maudel Thanks for your feedback! We will investigate and update as appropriate.

Hi @v-maudel
There are some differences in functionality between some sovereign clouds, and that should be reflected in your regional documentation. Feature parity between sovereign clouds is being rolled out quite soon. Thanks for your contribution!
#please-close