Granular access control

[x] Mangal user has to be authenticated with ORCID to access endpoints.
[ ] users endpoint can only be accessible by admin, access denied for all other user. If the user want to see is profile, the user can use the route /profile
[ ] Each mangal user can have access to their own private datasets and all public datasets.
[ ] Admin can have access to all datasets.

@tpoisot, we have to think about the permissions, procedures (access request).
ex. Can a user ask/request access to a private dataset directly to his owner?

@tpoisot:

datasets, networks, taxons, interactions, traits, environments are not available by default if it's a private dataset (boolean field public on dataset). taxa_backbone, attributes are shareable among users. (Don't forget, taxons table contains the original taxa name from the dataset and taxa_back is the taxonomy backbone table, mapping taxa against EOL, BISON, GBIF etc...)

Yes, to do it, I'll have to create a join table between users and datasets (n:n relationship). Many users can have access to many datasets. We can have this functionnality on the 2.2 or later release.

New features:

[ ] Users authenticate by token can PUT/POST
[ ] Users without token authentification can only GET

On peut faire sans put/post -- pour le moment on va faire du read only.


Please stop changing the color of const variables

Will this last change be the last time VSCode changes the default color of const variables? I was getting used to that green color, but now it's some sort of slightly darker blue than var or let.

The change was made on feedback from #95346 (contrast). No further changes planned.


In-memory cache for data on workers that won’t be moved / persisted

For cuML’s new communicator abstraction, we are using Dask to bootstrap NCCL and UCX communicators so that we can pass their pointers down through Cython.
We have implemented this by submitting tasks to the workers and holding onto the resulting futures on the client for submitting subsequent tasks that use the comms.
I believe this design has the drawback that the ‘data’ cache on the workers could be serialized at any point and moved to disk or to another worker.
As far as I know, there is no way to store this data on the workers that guarantee’s it will never be moved or serialized to disk.
It would be nice if the workers provided some small local cache, maybe another dict along side the ‘data’ dict, for lightweight objects with the guarantee that its contents will not get serialized, persisted, or moved around.
If there’s a different / better way to accomplish this, I’m interested in discussing them.

One common approach is to attach data to the worker.
from dask.distributed import get_worker

```python
def get_comm_state():
    worker = get_worker()  # get a handle to the worker in whiich this task is running
    if not hasattr(worker, "_cuml_comm_state"):
        worker._cuml_comm_state = ...
    return worker._cuml_comm_state

Then you call this function whenever you need this state.
Would an approach like this work for you?  Or, more generally, you don't need to handle all of your state through Dask.  You can use general Python tricks as well.

I have implemented this approach and it works well. This option never occurred to me, I think because I'm naturally hesitant to modify objects I don't own. I will use this solution, since it does allow us to maintain our state directly on the worker.
Thanks again, Matt!


copy and pasted the model_web. I got this error.

models@0.1.1:1 Uncaught (in promise) Error: Tensor must have a shape comprised of positive integers but got shape [1917,].
at z (models@0.1.1:1)
at models@0.1.1:1
at Array.forEach ()
at it (models@0.1.1:1)
at Tn (models@0.1.1:1)
at _n (models@0.1.1:1)
at models@0.1.1:1
at models@0.1.1:1
at Kt.scopedRun (models@0.1.1:1)
at Kt.tidy (models@0.1.1:1)

I tried  other samples on your git.
I tried https://github.com/tensorflow/tfjs-models/tree/master/coco-ssd with the model.
It was not succeed also. Help me out please.

I think you don't have enough training data or not enough labels, try to have at least 2 labels and 20 images per label. Otherwise this error pops-up somewhat randomly

I have 6 labels and used 200 images.
I got my model trained with IBM cloud.  cacli ver 1.3.2 (latest one)  I got label, model.json and 6 bin files.

hmm yea that's definitely enough training data... Do you mind emailing me a screenshot of your training data and maybe share your bucket with me<EMAIL_ADDRESS>

Sorry for the late response. I am living in other time zone.
I email you with bucket and files.


[WIP] Use six instead of our own compat module.

Using six has a few advantages:

Less code to maintain. Less is more.
More thoroughly tested compatibility code.
A few more things that we can make use of to maintain python2-compatibility (or py3-compat, depending on what you're using).
I think we can use this for #256, though I've failed so far.

This is tagged WIP, since I still need to get rid of a single usage of to_unicode and to_bytes that I haven't managed to get my head around. I'd also like to hear some opinions on this change.

Huh. This is odd. This seems to be failing on travis, but succeeding locally. o.O

I'm good with moving to six.


Installing on anaconda Python 3.4.4

Here are the install command and output:
conda install -c https://conda.anaconda.org/andrewannex spiceypy
Fetching package metadata .........
Solving package specifications: ....
UnsatisfiableError: The following specifications were found to be in conflict:

python 3.4*
spiceypy
Use "conda info " to see the dependencies for each package.

pip also fails, but apparently for different reasons:
sudo -H pip install spiceypy
Collecting spiceypy
Downloading spiceypy-1.1.0.tar.gz (213kB)
100% |████████████████████████████████| 215kB 2.6MB/s
Complete output from command python setup.py egg_info:
You have not agreed to the Xcode license agreements, please run 'xcodebuild -license' (for user-level acceptance) or 'sudo xcodebuild -license' (for system-wide acceptance) from within a Terminal window to review and agree to the Xcode license agreements.
Error: cspice object file extraction failed with exit status: ('17664',)
Unable to find CSPICE at /private/tmp/pip-build-z3cdopq1/spiceypy/cspice. Attempting to Download CSPICE For you:
Gathering information...
SYSTEM:    Mac
PROCESSOR: i386
MACHINE:   64bit
Best option: MacIntel_OSX_AppleC_64bit
URL:  https://naif.jpl.nasa.gov/pub/naif/misc/toolkit_N0065/C/MacIntel_OSX_AppleC_64bit/packages/cspice.tar.Z

Downloading...
Attempting to download spice...
Unpacking... (this may take some time!)
Host OS: Darwin

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

Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-build-z3cdopq1/spiceypy/

pip also fails, but apparently for different reasons:
sudo -H pip install spiceypy
Collecting spiceypy
Using cached spiceypy-1.1.0.tar.gz
Complete output from command python setup.py egg_info:
gcc: warning: couldn’t understand kern.osversion ‘15.6.0
ld: library not found for -ldylib1.o
collect2: error: ld returned 1 exit status
Error: compilation of shared spice.so build exit status: ('256',)
Unable to find CSPICE at /private/tmp/pip-build-m8yfyywh/spiceypy/cspice. Attempting to Download CSPICE For you:
Gathering information...
SYSTEM:    Mac
PROCESSOR: i386
MACHINE:   64bit
Best option: MacIntel_OSX_AppleC_64bit
URL:  https://naif.jpl.nasa.gov/pub/naif/misc/toolkit_N0065/C/MacIntel_OSX_AppleC_64bit/packages/cspice.tar.Z
Downloading...
Attempting to download spice...
Unpacking... (this may take some time!)
Host OS: Darwin

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

Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-build-m8yfyywh/spiceypy/

ah so the issue here is that I dropped python 3.4 support. There is nothing technically preventing me from supporting python 3.4, but I wanted to reduce the CI build times. Is there anything preventing you from upgrading your anaconda to 4.0.0 or newer? If not I won't have time to do this until later in the week.
The pip install assumes you have accepted the Xcode license agreement. Run the command in the error output and it should work the second time (you may also need to run as sudo(.

since you were editing your posts as I was responding I didn't see the error regarding '-ldylib1.o'.
I don't think I have seen that before, as it looks like an issue with your xcode installation. Below are some relevant things I found googling.
http://docs.python-guide.org/en/latest/starting/install/osx/
https://github.com/Homebrew/legacy-homebrew/issues/40762
I recommend reading through those and ensuring your xcode is properly installed with the CLI tools and then trying again.

fixing the xcode problem didn't fix the conda install problem (it still
gives the 3.4 version error although I have v4). Maybe I need to restart.
pip install worked.
thanks!
On Mon, Oct 24, 2016 at 5:45 PM Andrew Annex<EMAIL_ADDRESS>wrote:

since you were editing your posts as I was responding I didn't see the
error regarding '-ldylib1.o'.
I don't think I have seen that before, as it looks like an issue with your
xcode installation. Below are some relevant things I found googling.
http://docs.python-guide.org/en/latest/starting/install/osx/
Homebrew/legacy-homebrew#40762
https://github.com/Homebrew/legacy-homebrew/issues/40762
I recommend reading through those and ensuring your xcode is properly
installed with the CLI tools and then trying again.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AndrewAnnex/SpiceyPy/issues/168#issuecomment-255905708,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH1TxgIaKUfqpWNGwI7mfGmHV9Qg11Jnks5q3VEXgaJpZM4Kfb3h
.

the xcode problem has nothing to do with the conda install, unless it is attempting to build from source. The solution to the conda install would be to upgrade the underlying anaconda distribution to a newer release (python 3.5) as I detailed above. glad to hear you resolved your pip install issue, what was the fix you used?

closing this in a day or two pending user response of fix


[AutoPR policyinsights/resource-manager] [Hub Generated] Review request for Microsoft.PolicyInsights to add version 2018-07-01-preview

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5408

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/4578


thread 'main' panicked at 'assertion failed: (left == right)

Hi, I use redb in https://github.com/StaffEngineer/velo, thanks for db :)
thread 'main' panicked at 'assertion failed: `(left == right)`
  left: `1093632`,
 right: `1589248`', /Users/<user_name>/.cargo/registry/src/index.crates.io-6f17d22bba15001f/redb-1.0.0/src/tree_store/page_store/page_manager.rs:244:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Looks very similar to https://github.com/cberner/redb/issues/620 but I have enough disk space... it seems such error occurs when application unexpectedly crashes due to another panic. velo uses redb via https://github.com/johanhelsing/bevy_pkv/blob/main/src/redb_store.rs adapter.
bevy_pkv.zip
(hmmm I made an archive from 1.6MB db file and it shows 4KB size)

@cberner thanks for the quick fix. I was running app for a few hours and didn't see such error anymore :) hopefully it's permanently fixed.


Perform testing on controllers.

Codecov Report

Merging #250 into master will increase coverage by 0.54%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #250      +/-   ##
==========================================
+ Coverage   70.53%   71.08%   +0.54%
==========================================
  Files          27       27
  Lines        2182     2182
  Branches      271      271
==========================================
+ Hits         1539     1551      +12
+ Misses        550      541       -9
+ Partials       93       90       -3


Unable to run the code in single GPU

Hi author:
When I try to run the code in a single GPU, it reports "Default process group has not been initialized, please make sure to call init_process_group". I add the command dist.init_process_group("nccl", init_method=str(init_method), rank=1, world_size=1) in misc.py file, but I get the same error. I create  conda virtual environment following your software installation instruction, and  I can run my own code in both single GPU and multiple GPUs within this environment. Could you help have a look at it? Following is more error info:
Traceback (most recent call last):
File "/data/gpfs/projects/punim0512/Haihangw-Projects/video_train/Uniformer/tools/run_net_multi_node.py", line 69, in
main()
File "/data/gpfs/projects/punim0512/Haihangw-Projects/video_train/Uniformer/tools/run_net_multi_node.py", line 50, in main
launch_job(cfg=cfg, init_method=args.init_method, func=train)
File "/data/gpfs/projects/punim0512/Haihangw-Projects/video_train/Uniformer/slowfast/utils/misc.py", line 312, in launch_job
func(cfg=cfg)
File "/data/gpfs/projects/punim0512/Haihangw-Projects/video_train/Uniformer/tools/train_net.py", line 431, in train
train_loader = loader.construct_loader(cfg, "train")
File "/data/gpfs/projects/punim0512/Haihangw-Projects/video_train/Uniformer/slowfast/datasets/loader.py", line 147, in construct_loader
sampler = utils.create_sampler(dataset, shuffle, cfg)
File "/data/gpfs/projects/punim0512/Haihangw-Projects/video_train/Uniformer/slowfast/datasets/utils.py", line 412, in create_sampler
sampler = DistributedSampler(dataset) if cfg.NUM_GPUS >= 1 else None
File "/data/gpfs/projects/punim0512/haihang_envs/Uniformerv2/lib/python3.9/site-packages/torch/utils/data/distributed.py", line 68, in init
num_replicas = dist.get_world_size()
File "/data/gpfs/projects/punim0512/haihang_envs/Uniformerv2/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 1067, in get_world_size
return _get_group_size(group)
File "/data/gpfs/projects/punim0512/haihang_envs/Uniformerv2/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 453, in _get_group_size
default_pg = _get_default_group()
File "/data/gpfs/projects/punim0512/haihang_envs/Uniformerv2/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 584, in _get_default_group
raise RuntimeError(
RuntimeError: Default process group has not been initialized, please make sure to call init_process_group.
srun: error: spartan-gpgpu072: task 0: Exited with exit code 1

As there is no more activity, I am closing the issue, don't hesitate to reopen it if necessary.


Build errors

On Ubuntu 14.04 64bit
Did I miss some deps?
$ script/build # Creates application at /tmp/atom-build/Atom
npm ERR! Error: Attempt to unlock<EMAIL_ADDRESS>which hasn't been locked
npm ERR!     at unlock (/usr/lib/node_modules/npm/lib/cache.js:1434:11)
npm ERR!     at cb (/usr/lib/node_modules/npm/lib/cache.js:675:5)
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:684:20
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:1420:7
npm ERR!     at /usr/lib/node_modules/npm/node_modules/lockfile/lockfile.js:167:38
npm ERR!     at OpenReq.Req.done (/usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:144:5)
npm ERR!     at OpenReq.done (/usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:64:22)
npm ERR!     at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 3.13.0-24-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "--userconfig=/home/ionicabizau/Documents/atom/.npmrc" "install" "--quiet"
npm ERR! cwd /home/ionicabizau/Documents/atom/build
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.9
npm ERR! Error: Attempt to unlock<EMAIL_ADDRESS>which hasn't been locked
npm ERR!     at unlock (/usr/lib/node_modules/npm/lib/cache.js:1434:11)
npm ERR!     at cb (/usr/lib/node_modules/npm/lib/cache.js:675:5)
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:684:20
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:1420:7
npm ERR!     at /usr/lib/node_modules/npm/node_modules/lockfile/lockfile.js:167:38
npm ERR!     at OpenReq.Req.done (/usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:144:5)
npm ERR!     at OpenReq.done (/usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:64:22)
npm ERR!     at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 3.13.0-24-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "--userconfig=/home/ionicabizau/Documents/atom/.npmrc" "install" "--quiet"
npm ERR! cwd /home/ionicabizau/Documents/atom/build
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.9
npm ERR! Error: Attempt to unlock<EMAIL_ADDRESS>which hasn't been locked
npm ERR!     at unlock (/usr/lib/node_modules/npm/lib/cache.js:1434:11)
npm ERR!     at cb (/usr/lib/node_modules/npm/lib/cache.js:675:5)
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:684:20
npm ERR!     at /usr/lib/node_modules/npm/lib/cache.js:1420:7
npm ERR!     at /usr/lib/node_modules/npm/node_modules/lockfile/lockfile.js:167:38
npm ERR!     at OpenReq.Req.done (/usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:144:5)
npm ERR!     at OpenReq.done (/usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:64:22)
npm ERR!     at Object.oncomplete (fs.js:107:15)
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR!     <http://github.com/npm/npm/issues>

npm ERR! System Linux 3.13.0-24-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "--userconfig=/home/ionicabizau/Documents/atom/.npmrc" "install" "--quiet"
npm ERR! cwd /home/ionicabizau/Documents/atom/build
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.9
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/ionicabizau/Documents/atom/build/npm-debug.log
npm ERR! not ok code 0

Atom please, remove the dependency on gnome-keyring.

I second Al-Caveman's request. I cannot understand why Atom would need this. I'm sure there is a reason but I don't have gnome-keyring and atom runs fine with out it. just can't compile without it

For electron starter I needed to install this on ubuntu 15.04. I had the same error message
sudo apt-get install libgnome-keyring-dev

@Al-Caveman @cyphunk libgnome-keyring-dev is needed in order for apm to store your atom.io credentials.

@50Wliu how about you worry less about how we store our credentials, and instead worry about fixing the 2MB max file size limitation.

and instead worry about fixing the 2MB max file size limitation.

The 2MB cap has been removed as of 0.206.0.  If you're still facing that, I'd advise you to upgrade.

Atom now opens files larger than 2MB with syntax highlighting, soft wrap, and folds disabled. We'll work on raising the limits with these features enabled moving forward

Storing credentials is also pretty important, since without it there would be no community packages.


fix: support for Boolean JSON Schema

Description
As in title. As we support JSON Schema draft-07 as schema, then we should also support true/false schemas in JSON Schema of our spec. More info https://github.com/asyncapi/parser-js/issues/232
I removed "type": "object", from schema, because we should infer type field from "http://json-schema.org/draft-07/schema#". Currently we override it.
Related issue(s)
See more https://github.com/asyncapi/parser-js/issues/232
Blocked by https://github.com/asyncapi/spec/pull/550

@fmvilas Thanks!


add support for guild templates

Pull Request Etiquette

[x] I have checked the PRs for upcoming features/bug fixes.
[x] I have read the contributing guidelines.

Changes

[ ] Internal code
[x] Library interface (affecting end-user code)
[ ] Documentation
[ ] Other: _____

Closes #1446
Description
this PR adds support for guild templates; ideas and suggestions are welcome

Hello, any news on this?
Moreover, implementing a Message#getTemplates method (similar to Message#getInvites) could be useful. :)

Hello, any news on this?
Moreover, implementing a Message#getTemplates method (similar to Message#getInvites) could be useful. :)

i'm waiting for Minn to respond to my questions. also, discord doesn't doesn't provide the templates in a message object. Message#getInvites just uses regex to get the invite codes.

the method could be implemented but i don't know if it's useful, maybe minn will have more to say about this

I guess it is, the regex should look like:
Pattern TEMPLATE_PATTERN = Pattern.compile(
            "(?:https?://)?" +                                // Scheme
                    "(?:\\w+\\.)?" +                          // Subdomain
                    "discord(?:(?:app)?\\.com" +              // Discord domain
                    "/template|\\.new)/(?<code>[a-z0-9-]+)" + // Path
                    "(?:\\?\\S*)?(?:#\\S*)?",                 // Useless query or URN appendix
            Pattern.CASE_INSENSITIVE);

Thank you for your reply anyway, looking forward to Minn's feedbacks. :)


Permission error

Hello,
I'm getting the following message when doing "service factorio start":
"Check Permissions. Cannot Write to /opt/factorio-init/Factorio.pid. Correct the permission and then execute /etc/init.d/factorio status"
I've done chmod 777 and have tried different groups with chown and using -R for the files inside (since I can't go in the directory because it isn't one (?)).
I'm still fairly new to using ssh and might have made a dumb mistake. If so, sorry.
Thanks in advance for answering.

which user are you running factorio as? (I'm going to assume "factorio")
in your case, try this:
chmod 770 /opt/factorio-init
chown factorio: /opt/factorio-init
service factorio start

This will make the user factorio owner of the /opt/factorio-init directory, it will also assign the group factorio - and set permissions on the directory that allows the owner/group to enter the dir and read/write inside it.

The directory itself and all the files inside it belong to me using chown. (they used to be root). AND I've given write, read and execute permissions on all files using chmod. I'm still getting the same error.
I forget to mention it, but I do get the error: 'no passwd entry for user 'factorio' ' twice and an error about a save directory missing.
Thanks for answering!

I'm not entirely sure what you've done but the no passw error seems to suggest you are trying to use a user that does not exist - have you added the user you are trying to use?

It's the user I created when I installed ubuntu server. So seems to me like a real user. (The naming before the command placement and showing the permissions with ls -l)  But this error only occurs when trying to 'service factorio start', it doesn't occur with commands like accessing files from the user or any other commands/commands from your init script.
This is the output i'm getting with  'service factorio start':
No passwd entry for user 'factorio'
No passwd entry for user 'factorio'
Check Permissions. Cannot Write to /opt/factorio-init/factorio/Factorio.pid. Correct the permissions and then excute: /etc/init.d/factorio status
Error! Save directory missing: /opt/factorio-init/factorio/saves

what user are you running as now? (ie which user are you logged in as?)
if you are not logged in as "factorio"
try this:
su -u factorio 'touch /opt/factorio-init/factorio/Factorio.pid'
(also try hitting me up on irq.esper.net I'm "Bisa" currently hanging out in the factorio channel)

my bad!
su factorio -c 'touch /opt/factorio-init/factorio/Factorio.pid'

Was solved via irc, mainly by following this guide:
https://wiki.factorio.com/index.php?title=Multiplayer#Linux


Lock 1.1.0 manifest with tags

Description
Since we incremented the version of OpenSearch on the 1.1 branch CI started failing because of a version mismatch, as expected. Lock the manifest of the released version to use tags.
Performance analyzer RCA is missing a tag, I opened https://github.com/opensearch-project/performance-analyzer-rca/issues/85. I am not sure what the right rev is as I cannot find it in the bundle manifest. This is odd. CI will pass once that's resolved.
Check List

[x] Commits are signed per the DCO using --signoff

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 #890 (bdcbbb1) into main (22930a2) will decrease coverage by 0.21%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #890      +/-   ##
==========================================
- Coverage   91.58%   91.36%   -0.22%
==========================================
  Files          87       87
  Lines        2294     2294
==========================================
- Hits         2101     2096       -5
- Misses        193      198       +5

Impacted Files
Coverage Δ

src/system/temporary_directory.py
82.75% <0.00%> (-13.80%)
:arrow_down:

src/system/os.py
92.30% <0.00%> (-7.70%)
:arrow_down:

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 22930a2...bdcbbb1. Read the comment docs.

@kavilla care to do the same for the dashboards manifest?

#896 will lock the changes to tags.


Use SizeProvider for all sizes in the lib

As a developer I should use the SizeProvider from Style lib for all sizing.
Remove StyleUtils sizing.
Acceptance criteria:

Example app working with SizeProvider.

Sizings are correct. Image loading is failing due to this error in style lib: https://github.com/tiki/style/issues/38


#131 - Fixing issue with typo in examples

As mentioned in #131 - easy to fix typo which I thought I'd address whilst here!
Happy holidays!

:tada: This PR is included in version 1.4.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


A beer can and a wine can

About the PR
A beer can and a wine can have been added to the game, they can be found in boozeomat. Perhaps later I will add more alcoholic beverages in cans and a special vending machine for them.
Why / Balance
Why didn't we have cans of beer? We need to fix this urgently!
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog
🆑
• add: A beer can and a wine can have been added to the game, they can be found in boozeomat.

add a bottle of sake, there is a drink in the game but there is no legal way to get it

add a bottle of sake, there is a drink in the game but there is no legal way to get it

No, you can get it from juicing lemoons.

add a bottle of sake, there is a drink in the game but there is no legal way to get it

No, you can get it from juicing lemoons.

How can you make a Japanese rice-based alcoholic drink from lemons?

sprites are mid

спрайты средние

Perhaps the very idea of writing letters on cans instead of drawings is not very good

add a bottle of sake, there is a drink in the game but there is no legal way to get it

No, you can get it from juicing lemoons.

How can you make a Japanese rice-based alcoholic drink from lemons?

lemoons... mutated lemon

The sprites look like a combination of generic branding and craft brewery labels

cans with letters should be placeholders

Happy to contribute a beer and wine can sprite (loosely inspired by a few real-world designs) if you like:

Edit: zoomed-in versions:

Wow, they're very good!

Why close :despair:

Why close :despair:

I opened it again


[Feature]: Update logo with spooky version

Feature Summary
We have a spooky version of the logo created by @SUBMARINO that we should use during the month of October
Detailed Description
We should use this version of the logo in SignupView.vue LobbyView.vue and RulesView.vue

I'll be taking this one


Pls add presale token

#21289

@Kumia115 Looks like your PR was automerged – so you can close this issue. ;)


visualization rendering script

Hi! Thank you for your great work! Would you mind providing your visualization scripts that convert the point cloud into the ball mesh?

Hi, I just upload convert_pc2spheres.py under the util folder. It converts each point into a ball mesh.

Thanks!


Invalid type for deployment args (got "map", expected "string")

Hi, already try the new version. and found this error
$ helm upgrade vault-autounseal vault-k8s-helper/vault-autounseal \
  --install --create-namespace \
  --set=settings.unlock-shares=5 \
  --set=settings.unlock-threshold=3 \
  --set=settings.ca-cert=/tmp/ca-chain/ca-chain.pem \
  -n vault-autounseal --version 1.0.4 --dry-run -o yaml
Error: UPGRADE FAILED: error validating "": error validating data: [ValidationError(Deployment.spec.template.spec.containers[0].args[0]): invalid type for io.k8s.api.core.v1.Container.args: got "map", expected "string", ValidationError(Deployment.spec.template.spec.containers[0].args[1]): invalid type for io.k8s.api.core.v1.Container.args: got "map", expected "string", ValidationError(Deployment.spec.template.spec.containers[0].args[2]): invalid type for io.k8s.api.core.v1.Container.args: got "map", expected "string"]

Fix that in my PR and alse adding capabilities to mounting volumes. In my case for mounting secret containing my self-signed CA, so that can communicate with vault securely. This can be done by using parameter -ca-cert in ./vault-autounseal parameter.
./vault-autounseal --help
Usage of ./vault-autounseal:
  -ca-cert string
    	CA certificate for validating connections to vault (default "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
  -kubeconfig string
    	Overwrite kubeconfig path
  -namespace string
    	Namespace used for storing unseal keys and root token (default "vault-autounseal")
  -service-domain string
    	DNS Name for accessing vault. In HA mode should be set to vault headles service providing all pod endpoints. (default "vault-internal.vault.svc.cluster.local")
  -service-port int
    	Vaul service port (default 8200)
  -service-scheme string
    	Vaul service scheme. Valid values: http, https (default "https")
  -unlock-shares int
    	Number of unlock shares (default 3)
  -unlock-threshold int
    	Number of unlock shares threshold (default 3)
  -vault-internal-service-name string
    	Name of vault's internal service name (default "vault-internal")
  -vault-namespace string
    	namespace where vault is installed (default "vault")
  -vault-pod-name-prefix string
    	Prefix for vault StatefulSet's pods (default "vault")
  -vault-root-token-secret string
    	Vault root token secret name (default "vault-autounseal-root-token")
  -vault-unlock-keys-secret string
    	Vault unlock keys secret name (default "vault-autounseal-unlock-keys")

PR #2 has been merged

PR https://github.com/camaeel/vault-k8s-helper/pull/2 has been merged


cannot save editor maps without the map being placed in SC2 maps subfolders

the sc2maptools package currently retains its maps in its own directory; it could copy them out to a SC2 maps subfolder

https://github.com/ttinies/sc2gameMapRepo/issues/8

dependency has resolved this issue and released a fix.


Support for .mkv and different audio codecs

Added support for .mkv here: #194. What kinds of audio codecs are you unable to use?

AAC, FLAC


can no longer re-assign bind address "8088" for v12

Hi I have multiple versions of influxdb running on one machine. In order to do this, i have given each its own set of ports more or less with prefix {versionnumber}port...
E.G: for v.10.3
web-admin: 10383
http-thingy:10386
etc (i have changed other ports)
ianlutz@influxdb-test:/opt/influxdb-0.10.3-1/etc/influxdb$ cat influxdb.conf | grep "address ="
bind-address = ":10388"
http-bind-address = ":10391"
bind-address = ":10383"
bind-address = ":10386"
bind-address = ":2003"
bind-address = ""
bind-address = ":4242"
bind-address = ""
ianlutz@influxdb-test:/opt
despite a few differences in config/layout/omissions for all the versions:
ianlutz@influxdb-test:/opt/influxdb-0.10.3-1/etc/influxdb$ ls /opt/
influxdb-0.10.3-1  influxdb-0.11.0-1  influxdb-0.12.0-1  influxdb_0.9.6
I am able to change all the ports that these guys (except v12) to use to a different port so they don't collide...
Now, I am unable to get v12 to change its port
..under the [meta] section i have added:
bind-address = ":1288"
http-bind-address = ":1291"
as with the other versions of influxdb
[meta]
Where the metadata/raft database is stored
dir = "/opt/influxdb-0.12.0-1/var/lib/influxdb/meta"
retention-autocreate = true
bind-address = ":1288"
http-bind-address = ":1291"
If log messages are printed for the meta service
logging-enabled = true
pprof-enabled = false
The default duration for leases.
lease-duration = "1m0s"

now for v12 it is still evidently using :8088 instead of 1288:
ianlutz@influxdb-test:/usr/lib/systemd/system$ /opt/influxdb-0.12.0-1/usr/bin/influxd -config /opt/influxdb-0.12.0-1/etc/influxdb/influxdb.conf
8888888           .d888<PHONE_NUMBER>b.  888888b.
888            d88P"  888                   888  "Y88b 888  "88b
888            888    888                   888    888 888  .88P
888   88888b.  888888 888 888  888 888  888<PHONE_NUMBER>888K.
888   888 "88b 888    888 888  888  Y8bd8P' 888    888 888  "Y88b
888   888  888 888    888 888  888   X88K   888    888 888    888
888   888  888 888    888 Y88b 888 .d8""8b. 888  .d88P 888   d88P
8888888 888  888 888    888  "Y88888<PHONE_NUMBER>888P"  8888888P"
[run] 2016/04/06 01:39:02 InfluxDB starting, version 0.12.0, branch 0.12, commit 4f29ba4013f6f46efeaa948bb7e0fd561cac5e95
[run] 2016/04/06 01:39:02 Go version go1.4.3, GOMAXPROCS set to 4
[run] 2016/04/06 01:39:02 Using configuration at: /opt/influxdb-0.12.0-1/etc/influxdb/influxdb.conf
run: open server: listen: listen tcp :8088: bind: address already in use
(yes I could shutdown another instance of influxdb using the default port but that doesnt solve the problem)

Also got bit by this while updating influxdb today, had to check the source code.
Apparently, they moved this setting to the top level of config, so just put your bind-address line before any [] blocks.

excellent thanks! doing just that now :)

@ianlutzeigen that's right (thanks @tony-brewerio). You can run influxd config to see an appropriate sample configuration file.


Cannot run UglifyJS standalone after installing globally in Windows

I am trying to run UglifyJS standalone, and here are the steps I have taken.

Open Command Prompt
Run npm -g install uglify-js
Run uglifyjs -o app.min.js app.js

The following error is recieved...
C:\Users\jcreamer>"C:\Users\jcreamer\AppData\Roaming\npm\\.\node_modules\uglify-js\bin\uglifyjs"
'"C:\Users\jcreamer\AppData\Roaming\npm\\.\node_modules\uglify-js\bin\uglifyjs"' is not recognized as an internal or external comm and, operable program or batch file.

There's a space in the uglify-js bin file, confusing the cmd writer. Related: mishoo/UglifyJS#291
Fixing in next version of npm.  In the meantime, you can manually edit C:\Users\jcreamer\AppData\Roaming\npm\uglifyjs in notepad (or your favorite text editor), ignore the warning, and make it contain this instead:
:: Created by npm, please don't edit manually.
@IF EXIST "%~dp0"\"node.exe" (
  "%~dp0"\"node.exe"  "%~dp0\.\node_modules\uglify-js\bin\uglifyjs" %*
) ELSE (
  node  "%~dp0\.\node_modules\uglify-js\bin\uglifyjs" %*
)

Works with that update! Thanks.


Emit API versions for conditional resource references

We should emit API versions for non-symbolic resource references if the referenced resources have conditions.
The PR partially addresses https://github.com/Azure/bicep/issues/1631.

Do we need to add tests as well?

Do we need to add tests as well?

It turned out the Loops_LF dataset covers the cases, and I updated the baselines.


Multi-monitor support

A scenario that frequently occurs in a multiple-monitor setup at work is that I'd like to expand VIM to encompass multiple displays, and use the goodness of the easy window splitting / window navigation across monitors. Gvim on windows, at least, doesn't seem to handle this very well - I imagine the terminal clients might be better if the terminal emulator handles resize/multiple monitors, but in my case, it doesn't fit my workflow.
With Electron, it's relatively easy to change the BrowserWindow dimensions to encompass multiple screens (or alternatively, create multiple BrowserWindows that can communicate with other).
It's easy to get the information about all displays:
    require("electron').screen.getAllDisplays()

And it's also pretty easy to size the browser window:
        require('electron').remote.getCurrentWindow().setPosition(x, y)
        require("electron").remote.getCurrentWindow().setSize(.., ..)

What would be helpful in terms of workflow would be a command that is like "MonitorExpandLeft, MonitorExpandRight, MonitorExpandDown, MonitorExpandUp". This would size the window to expand to the boundary of the window if it hasn't already, or expand it out to the next window. This could be bound to something like  plus arrow keys by default.
This would be somewhat gated by #20 since we need a nice way to express those commands, but we could have another hacky input added until we get that fixed..

This is a feature I would love to have. This should allow for navigation between opened Oni windows, using <C-w>l, etc. The WindowManager can already handle and detect this case - the challenge here is bubbling that up, finding the next Oni window, and focusing it. The main process knows about all the active windows, so it'd be natural to send an ipc call to it to let it handle.
Testing with multiple Oni processes will be non-trivial here, but if we can have unit tests covering the navigation cases (figuring out which window is 'left', 'right', etc), that is sufficient.

The bulk of this was fixed out in #1747. I'm going to make a second issue to track the remaining items I mentioned in the end of my PR.

@CrossR - thanks for the fix here! It's awesome to have this in. Don't forget to claim the bounty on it! 👍 (Either bountysource or opencollective - whatever you prefer)


Change to different gulpfile

If a project has multiple subfolders with their own gulpfiles.
/Project/
     /subfolder_1/gulpfile.js
     /subfolder_2/gulpfile.js
     /subfolder_3/gulpfile.js

How can you change to a different gulp file? I've added all the subfolder paths so that when I first run gulp list tasks it asks me which gulpfile I want to run, but now I can't seem to change it to run a different gulpfile. I tried deleting the cache but that just rebuilds the task list from the gulpfile I already selected (I thought it would ask me which gulpfile I want to run).

It should ask you for a gulpfile each time!
I think the problem is that you've added the gulpfile_paths setting to the Default Gulp settings, which are overwritten by Sublime.
Please check if your Preferences -> Package Settings -> Gulp -> Settings - User file still has the gulpfile_paths key

You're right, my mistake. I set it in the default settings.


Wire in endpoint errors to notification process

Add a notification if there are errors connected to an endpoint
Show the red warning bar if there are unread endpoint errors
On close of warning bar mark error notification/s as read
blocked on #3991 and #4011

Codecov Report

Merging #4012 into master will decrease coverage by 0.05%.
The diff coverage is 46.66%.

@@            Coverage Diff             @@
##           master    #4012      +/-   ##
==========================================
- Coverage   61.12%   61.06%   -0.06%
==========================================
  Files         860      861       +1
  Lines       29359    29451      +92
  Branches     4294     4313      +19
==========================================
+ Hits        17945    17985      +40
- Misses      11414    11466      +52


The new Logo is not easy to identify, it much harder then previous blue one.

The new Logo is not easy to identify, it much harder then previous blue one.

Agree with you.

The next release will have the blue logo back. See https://github.com/Microsoft/vscode-docs/blob/vnext/release-notes/v1_18.md#blue-logo-for-stable

I can't agree more!!!!the blue logo is so beautiful


[website] Evolve the Developer Advocate role

I don't think it would work to have a person with no product design sensibility in this new role we open. The most successful content creators I see in this space match this criterion: https://www.notion.so/mui-org/Developer-Advocate-DevEx-Engineer-634b2a699266480abf8663c045768902?pvs=4#a6fc0d1aec064fddb2f167e5e7b194aa.
Based on the discussion in https://groups.google.com/a/mui.com/g/devex/c/FOyh_tMixgQ, being clearer about it would help. I structured it so that there is a clear graduation between "required" and "nice to have". The bar is set lower than for our "Designer Engineer" roles (because otherwise we will search a unicorn forever).

Moving this forward, I think we are aligned on the Content Engineer aspect and the design engineering dependency to create great content (what the content is about).


Doku not showing any anything - Error in log

Hello!
I'm running this in unraid 6.11.5 with the template from the AppCenter.
I'm seeing this in the logs for Doku:
time="2023-07-16T12:05:57-04:00" level=error msg="failed to execute request: docker disk usage" err="Error response from daemon: a disk usage operation is already running"
What have I done wrong?

+1 for the same running in container on Synology

It seems that DOKU doesn't support reverse proxy using HTTPS.
My reverse proxu is "https://app.xxxxx.synology.me", with HTTPS.
In the log file (with log set to debug), I can see references to http://app.xxxxx.synology.me (with HTTP)
time="2024-02-21T14:33:21Z" level=debug msg="request started" http_method=GET http_proto=HTTP/1.1 http_scheme=http remote_addr=<IP_ADDRESS> ts="Wed, 21 Feb 2024 14:33:21 UTC" uri="http://app.xxxxx.synology.me/v0/disk-usage" user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36 Edg/<IP_ADDRESS>"


Feature/testing coverage

Add code coverage

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


fixed setup.py and package

i3ipc is a package now, so setup.py requires using packages instead of
py_modules.
Added from .i3ipc import * in the package's init.py to keep
backwards compatibility and not require an import like from i3ipc import i3ipc.

:+1: thanks. The project is kind of a mess right now because I've been busy but I will improve it and release soon.


Adding support for Centos6

On Tue, 17 Jan 2023 07:29:51 -0800
Ralf Brunckhorst @.***> wrote:

Yes.
I figured out lately that I can also install python3.6 on centos6.
So I'm still working on it.

Ok. Yes, python3 is available in the software collections.


Update sbt to 1.8.0

Updates org.scala-sbt:sbt from 1.6.2 to 1.8.0.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (1.6.2).
You might want to review and update them manually.
sbt

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-sbt", artifactId = "sbt" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.scala-sbt", artifactId = "sbt" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, old-version-remains, commit-count:1

Superseded by #44.


Prevents batch tasks from running before their dependencies

Description
Checks whether batch tasks are schedulable before adding them to a batch in get_work.
Note that even though self._schedulable(task) gets called twice in the get_work loop, they fall under different branches of whether best_task is defined, so this shouldn't slow get_work down much.
Motivation and Context
When adding tasks to an existing batch in get_work, we neglected to check whether the tasks were schedulable. This meant that in production I found my pipelines running batches that included jobs with PENDING dependencies. In order to fix this, we simply add a check that the task is schedulable.
Have you tested this? If so, how?
I have included unit tests.

Thanks. Am I correct in that this is a pretty serious bug as it would run a task before it's dependencies are complete?

Yes, that was what happened in production after I deployed a version of Luigi with this bug.


Cannot compile (Ubuntu 11.04)

[ 98%] Built target tfreerdp-server
Linking C executable xfreerdp-server
CMakeFiles/xfreerdp-server.dir/xf_peer.c.o: In function xf_info_init': xf_peer.c:(.text+0x5db): undefined reference to XDamageQueryExtension'
collect2: ld returned 1 exit status
make[2]: *** [server/X11/xfreerdp-server] Ошибка 1
make[1]: *** [server/X11/CMakeFiles/xfreerdp-server.dir/all] Ошибка 2
make: *** [all] Ошибка 2
I tried both pulling from git and the beta version from the download page...

you need to install libXdamage-dev

Thanks )
Perhaps, this library should be added to the list here http://www.freerdp.com/wiki/doku.php?id=compilation

@Sander80: I added a note with a link on the old page so that it refers to the new page, there's a lot of confusion around this. The new page has it.


Add contains, at least and at most to the the filter language

I added the new functionality and a few new tests for contains.
I also added a new rule to delete interfaces based on contains, just to make sure everything was working fine on the python side. Let me know what you think
Edit: I realized not-contains is equivalent to doing contains with at-most = 0. I think keeping both constructs is a good idea anyway

Updated w/ the comments


observation space does not contain the observations

the observation space for the MinigridEnv is
        # Observations are dictionaries containing an
        # encoding of the grid and a textual 'mission' string
        self.observation_space = spaces.Box(
            low=0,
            high=255,
            shape=(self.agent_view_size, self.agent_view_size, 3),
            dtype='uint8'
        )
        self.observation_space = spaces.Dict({
            'image': self.observation_space
        })

that doesn't specify the direction integer and the mission string. Can we please upgrade the observation space such that it contains the observations? Otherwise, it's not useful to initialize an agent, and crashes if you do
assert env.observation_space.contains(observation)
Just curious because the observation space is critical information for sensor modules in our agents to correctly transduce / rescale observations to latent codes
Here's what I use for a String space:
"String space"

import random
import gym

LETTERS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&()*+,-./:;<=>?@[]^_`{|}~ "

class String(gym.Space):
    "a space of potential strings from min to max length with certain set of letters"

    def __init__(self, length=None, letters=LETTERS, min_length=1, max_length=280):
        self.min_length = min_length
        self.max_length = max_length
        self.letters = letters
        self.length = length

    def sample(self):
        letters = self.letters if self.letters else LETTERS
        length = (
            self.length
            if self.length
            else random.randint(self.min_length, self.max_length)
        )
        return "".join(random.choice(letters) for _ in range(length))

    def contains(self, x):
        is_a_string = isinstance(x, str)
        correct_length = self.min_length <= len(x) <= self.max_length
        correct_letters = all([l in self.letters for l in x]) if self.letters else True
        return is_a_string and correct_length and correct_letters

    def __repr__(self):
        return f"String(min_length={self.min_length},length={self.length},max_length={self.max_length},letters={self.letters})"

space = Dict(image:Box(7, 7, 3))
sample = {'direction': 2, 'image': array([[[2, 5, 0],
        [2, 5, 0],
        [2, 5, 0],
        ...,
        [2, 5, 0],
   .....,
        [2, 5, 0],
        [2, 5, 0],
        [2, 5, 0]]], dtype=uint8), 'mission': 'get to the green goal square'}

>       assert space.contains(sample)
E       AssertionError

Hi @bionicles
The reason this isn't done properly is that there wasn't a gym space for strings.
I like your suggestion. Would you be willing to make a PR for this? You could put the new StringSpace class in its own source file, and check that space.contains() works correctly for all MiniGrid environments in 'run_tests.py`:
https://github.com/maximecb/gym-minigrid/blob/master/run_tests.py

hey, apologies, was working on the "nature" side of "nature-nurture" ; yes, I'll tinker with that and make a PR when I can

another option is to do something like
jnp.array(list(bytes(sample, "utf-8")), dtype=jnp.float32) / 255
in a wrapper
then the actuator looks like this:
non_unicode_bytes = jnp.array([0, 247, 248, 249, 250, 251, 252, 253, 254, 255])

def _actuate_string(space, values, xmin=-1.0, xmax=1.0):
    decimal = rescale(xmin, xmax, 0, 255, values.flatten()).astype("int")
    bad_bytes = jnp.where(jnp.isin(decimal, non_unicode_bytes))[0]
    if bad_bytes.size > 0:
        decimal = decimal[: bad_bytes[0]]
    result = bytearray(decimal).decode("utf-8", errors="ignore")
    if space.letters:
        result = "".join(c for c in result if c in space.letterset)
    return result

and rescale is like this:
"min max scale function"
import jax.numpy as jnp
from jax import jit

@jit
def maybe_replace(z):
    return (
        jnp.nan_to_num(z, neginf=-1000.0, posinf=1000.0)
        if jnp.issubsctype(z, jnp.inexact)
        else z
    )

@jit
def rescale(xmin, xmax, ymin, ymax, inputs):
    "rescales inputs from [xmin, xmax] to [ymin, ymax]"
    xmin, xmax, ymin, ymax = [maybe_replace(z) for z in [xmin, xmax, ymin, ymax]]
    return jnp.nan_to_num(
        jnp.clip(
            ((((inputs - xmin) * (ymax - ymin)) / (xmax - xmin)) + ymin), ymin, ymax,
        )
    )

here's my current String space if you'd like to tinker:
import re

from jax import random
from gym import Space

from tricks.ramda import default_to
from tricks import RNG

LETTERS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&()*+,-./:;<=>?@[]^_`{|}~' "

regex = re.compile(
    r"[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&()*+,-./:;<=>?@[\]^_`{\|}~' ]"
)

def sanitize_string(string, letters=None):
    "filter string so it only contains letters in 'letters' kwarg"
    if letters is None:
        return re.sub(regex, "", string)  # faster
    else:
        return "".join(char for char in string if char in letters)

class String(Space):
    "a space of potential strings from min to max length with certain set of letters"

    def __init__(self, length=None, letters=LETTERS, min_len=0, max_len=4096):
        self.min_len = min_len
        self.max_len = max_len
        self.letters = letters
        self.len = length
        self.rng = None
        self.seed()

    def seed(self, initial=None):
        _seed = 420 if initial is None else initial
        assert _seed is not None
        self.rng = RNG(_seed)

    def sample(self):
        letters = self.letters if self.letters else LETTERS
        key = next(self.rng)
        length = self.len if self.len else self.max_len
        string = []
        for _ in range(length):
            key = next(self.rng)
            string.append(letters[random.choice(key, len(letters))])
        return "".join(string)

    def contains(self, x):
        if not isinstance(x, str):
            return False
        if not self.min_len <= len(x) <= self.max_len:
            return False
        if self.letters:
            if not all([l in self.letters for l in x]):
                return False
        return True

    def __repr__(self):
        letters = "DEFAULT" if self.letters == LETTERS else self.letters
        return f"String(min_len={self.min_len},len={self.len},max_len={self.max_len},letters={letters})"

    @property
    def letterset(self):
        if self.letters is None:
            return set()
        return set(self.letters)

depends on this custom jax.random.PRNGKey iterator (but you can easily just switch jnp to np and use original numpy)
import jax

@jax.tree_util.register_pytree_node_class
class RNG:
    "PRNGKey iterator"

    def __init__(self, seed):
        self.seed = seed
        self.key = jax.random.PRNGKey(seed)

    def __iter__(self):
        return self

    def __next__(self):
        self.key, output = jax.random.split(self.key)
        return output

    def tree_flatten(self):
        return ((self.seed, self.key), None)

    @classmethod
    def tree_unflatten(cls, _, rng_state):
        seed, key = rng_state
        new = cls(seed)
        new.key = key
        return new

    def __eq__(self, other):
        if not isinstance(other, RNG):
            return False
        same_key = jax.numpy.all(other.key == self.key)
        same_seed = other.seed == self.seed
        if same_seed and same_key:
            return True
        return False


整合nacos配置中心

registry.conf 等其他配置 是否能整合到nacos配置中心。
在做微服务的时候不统一管理配置是个很蛋疼的事

@MrLiuFang registry. conf is not integrated into the configuration center. Like the configuration center, it requires a local configuration item to specify what type the configuration center is using and what is its remote address? However, you can use .yml or .properties files instead of .conf files.


Sending an attachment with a message

Goal: Send an attachment via a relative path
I have successfully attached a file to a create message request using the documented mechanism (http://site/file). I'm looking to do this with a relate file path (or even absolute within the site structure). Attempting to do so always results in an error (Unable to retrieve content.). Placing code to read the file just prior to sending the message successfully returns the contents of the file. I've tried with both "file" and "files" in an attempt to get this to work. I've also tried true relative and absolute paths using the file system structure.
Thoughts?
var readmePath = path.join(__dirname, 'README.md');
fs.readFile(readmePath, function(err, data) {
    if (err)
        console.log(err);
    console.log(data);
});
console.log(readmePath);
var messageParams = {};
messageParams.file = readmePath;
messageParams.markdown = true;

spark.createMessage(command.message.roomId, "Here is the document you requested.", messageParams, function(err, message) {
    if (err) {
        console.log("WARNING: could not post attachment to room: " + command.message.roomId);
        console.log(err);
        return;
    }
});

This should be resolved with the latest commit. Previously, only file URL's were allowed and Spark would go pull the file directly from that URL.  Now you can pass a file buffer in such as 👍
//You can also directly upload a file by passing in a file buffer, in which case the returned Spark response will include the file ID. When directly uploading a file you must specify a filename as this buffer

var data = fs.readFileSync('document.xlsx');
messageParams = {}  // Message Parameters are optional
messageParams.file = data
messageParams.filename = 'My uploaded file.xlsx'

 // for a direct 1:1 message just use the users email address as the first parameter or person id
<EMAIL_ADDRESS>'Here is the uploaded file!', messageParams, function(err, response) {
     if (!err)
         console.dir(response.id)
 })

Let us know if that doesn't solve it!


[zh-cn] Fix links in the blog Kubernetes Removals and Deprecations In 1.24

Co-authored-by: fusida<EMAIL_ADDRESS>
Previous PR: #35730
Preview page: https://deploy-preview-35777--kubernetes-io-main-staging.netlify.app/zh-cn/blog/2022/04/07/upcoming-changes-in-kubernetes-1-24/

/lgtm

/approve


GitHub Actions Parallel Testing

Description
Java CI takes over 30m. change steps in parallel.
Related links

https://help.github.com/ja/actions/reference/context-and-expression-syntax-for-github-actions

cannot change to parallel now.

switch to change job

https://help.github.com/ja/packages/using-github-packages-with-your-projects-ecosystem/configuring-apache-maven-for-use-with-github-packages#authenticating-to-github-packages


Would computed properties substitute unsupported types?

Goals

Good day, Realm team! I understand that Realm Object class supports only few primitive types.
I needed to store UIImage as Data class. So I decided to directly 'store' its png representation as Data, but when I work with an object, I want to use computed property of UIImage  type, because it would be intuitively more convenient.
Expected Results

I want to have an image property, that converts imageData property to UIimage in getter and converts given UIImage instance to Data in setter.
Actual Results

If the computed property has only getter, all work well. But as I add a setter, Realm suddenly starts to complain, that RLMObject class doesn't support UIImage type, in spite of that this is not a stored property; it is just a convenient way to work with imageData
Steps to Reproduce

Just create any computed property of type, which is not supported by RLMObject.
Code Sample

//swift 3.1

  class Human: Object {

   //Actually stored property
   dynamic var imageData : Data? = nil

   //A property to simply get and set imageData
   dynamic var image : UIImage? {
      get {
         if let data = self.imageData {
            return UIImage(data: data)
         } else {
            return nil
         }
      }
      set {
         if let image = newValue {
            self.imageData = UIImagePNGRepresentation(image)
         } else {
            self.imageData = nil
         }
      }
   }

}

Version of Realm and Tooling

Realm framework version: 2.8.3
Realm Object Server version: ?
Xcode version: 8.3.3
iOS/OSX version: iOS 10.3
Dependency manager + version: ?

@megas781 Read-only properties are automatically ignored. But read-write properties aren't. You need to override ignoredProperties() explicitly.
override class func ignoredProperties() -> [String] {
   return ["image"]
}

It seems to resolve


Consider alignment with $docref operation in IPA

Section Number Identify the most specific section number the issue occurs (e.g. 4.1.2)
2:3.67
Issue Describe your issue. Don't write a book, but do include enough to indicate what you see as a problem.
ITI-67 is currently based on the FHIR DocumentReference.search operation. Other interoperability standards, such as International Patient Access and US-Core, have proposed a $docref operation (IPA, IPS, US-Core to accomplish this goal.
$docref has the following advantages over DocumentReference.serach:

It has a parameter for on-demand status, which is missing from DocumentRefernece.search
It is easier to implement as a standalone API when not a part of a full FHIR server. For example, a server that wants to be compliant with DocumentReference.search would need to support the _id search parameter, where this is not necessary to claim $docref support.

The latter point might be of particular interest to MHD, given that an API layer in front of an XDS community might not have the ability to reasonably allow searching on Resource IDs.
The downside of $docref is that it has far fewer parameters than DocumentReference.search, which might be a problem for clients that wish to do a fairly granular search.
Proposed Change Propose a resolution to your issue (e.g., suggested new wording or description of a way to address the issue). The committee might simply accept your suggested text. Even if they don't, it gives a good sense of what you are looking for. Leaving this blank means you can't imagine how to resolve the issue, which makes it easier for the committee to admit they can't imagine how to resolve it either and leave it unresolved.
Consider whether $docref fulfils a purpose in ITI-67 or if a new transaction that would be an alternate to ITI-67 would make sense to support MHD use cases.
Priority:

High: Important issue where there is major issue to be resolved. Requires discussion and debate.

Some interesting prior discussion:
https://chat.fhir.org/#narrow/stream/179175-argonaut/topic/US.20Core.20GF.2320066.20re.20the.20Fetch.20DocRef.20operation
https://chat.fhir.org/#narrow/stream/261969-IPA/topic/docref

It is also only defined in US-Core, so not clear how we can use it in an international specification
https://hl7.org/fhir/us/core/OperationDefinition-docref.html
Further, the documentation is poor quality. It says that there is only 3 parameters, but there are actually 5 parameters.
The documentation tries to define the distinction from RESTful search. It puts forth weak statements, then contradicts those statements.
The best aspect of $docref is that it does indicate a way for a client to express that the client is ONLY interested in on-demand. Well, it then says that this can distinguish on-demand, stable (and something about delayed assembly) but the Input parameter is a boolean, so not clear how one gets a tristate out of a boolean.
In MHD this is not possible, one would have to filter the resulting search locally to find those entries in the search bundle that are on-demand vs stable.
One could imagine a well defined operation that is used to get "the one and only latest medical summary". Not all of the previous stable snapshots. Just ONE. Thus making it easier on the client.  However this too is somewhat difficult in a multi-depth federation where multiple authoring sites might be able to provide THEIR latest summary.

$docRef is defined in IPA which is an international specification. See https://build.fhir.org/ig/HL7/fhir-ipa/OperationDefinition-docref.html
The $summary operation sounds like your last suggestion, but I agree that $summary probably won't work well in federated environments.

Having $docRef defined in IPA is not helpful. How can MHD have a specification requirement only for $docRef without pulling in all of IPA? This is not a very modular friendly approach.
I am still convinced that $docRef is useful, but not really MHD relevant. It seems an alternative that would not be forbidden, but does not seem useful to bring into MHD.

on call decided to defer this to future.  Create an Open-Issue. And send a notification email to ITITECH to see if anyone wants to come forward with persuasive arguments to continue developing it.
The operation is not yet defined in a released IG, soon IPA. There is concern with needing to dependon all of IPA at that time. We could define similar but different operation, but that seems to not be useful.

now identified as Open-Issue MHD_067 and linked here to capture any comments the community offers.


Kafka spring university 101

@xodiumluma Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@xodiumluma ,
stop pushing PRs to upstream without any explanations.
We may start treating this as spam and will ask GitHub to block your account.
Thanks for understanding.

Hi,
Very, very sorry about this. I must have accidentally chosen the wrong branch/repo. I was studying the spring-kafka source code in my fork.
Sincerely,
xodiumluma

I think to prevent this I will stick with my non-main branch and prevent merging to main, so that this problem won't ever occur again.
If you have any tips, they are most welcome.
Once again, my sincerest apologies.

Thanks @artembilan. Really appreciate the advice. :+1:


Missing "Previous" Button on File Upload Pages

Describe the bug
There is no "previous" button on file upload pages
To Reproduce
Steps to reproduce the behavior:

Go to a form that requires documents to be uploaded
Navigate to the file upload page
See that there is no "previous" button

Screenshots
Attached

Currently 2 programs ask for income documents. The 3rd program is slated to onboard on 4/14.


remove factories that have conditional perf_capture_enabled

TL;DR
Remove unnecessary factories.
Overview
These factories don't allow a truly reproducible result.
Instead, using regular factories and manually setting perf_capture_enabled works better.
Details
toggle_on_name_seq allows us to toggle whether the objects are enabled and disabled. Which is pretty slick. But from the caller's perspective, it is hard to know which is enabled and disabled. So this works great if you just want a general count, but if you want to actually test that this worked with an enabled object, it doesn't work so well.
https://github.com/ManageIQ/manageiq/pull/19679 removed the tests that really took advantage of this factory. So that is why it looks trivial to remove.

:+1:


[Custom request] Promethues metric locust_running is always zero

Promethues metric locust_running is always zero  during distributed load tests, any clues?

sample data
{name="locust_running", batch_kubernetes_io_controller_uid="1203b659-63c9-4c51-967f-5e3d07c851f8", batch_kubernetes_io_job_name="prj-100007-test-master",  controller_uid="1203b659-63c9-4c51-967f-5e3d07c851f8", instance="<IP_ADDRESS>:9646", job="kubernetes-pods", job_name="prj-100007-test-master", locust_io_role="master", managed_by="locust-k8s-operator", namespace="locust", node="ip-172-31-7-36.us-east-2.compute.internal", performance_test_name="prj-100007.test", performance_test_pod_name="prj-100007-test-master", pod="prj-100007-test-master-j6x9p"}

Hello @naga-awone,
Thank you for taking the time to post this question and for your patience. I personally have stopped using this metric very early in the observability journey. I can't give you solid answer for why it's always 0. the metric is read directly from locust and that would be the root cause.
However, as i mentioned, it is not worth investing in as it is not useful in a cloud context IMHO. The way the metric works and how cloud resources work are contradictory. the metric assumes long running "server" where you launch tests manually and for that you need an indicator for if "locust is running". However, in a cloud context, the resources are only around for the duration of the test and if there is no running test, then no running resources.
The way I finally detected "locust is running" is by simply checking if the pods that are consistency & predictably labeled and annotated are running using default k8s metrics.
moreover, you can simply use the presence of the metrics as an indicator for test running and absence as indicator for tests not running.
Happy to help further if needed. I'll leave this issue open so you can follow up if needed.

@AbdelrhmanHamouda , Thanks for you time
I understand your perspective on its limitations in a cloud environment.
I appreciate your suggestion to monitor the Kubernetes pods directly. Leveraging default Kubernetes metrics to track the status of the pods sounds like a more hack approach for determining if tests are running.
I am currently checking workers_running_count https://github.com/ContainerSolutions/locust_exporter/blob/f44dac5bc76834b8c830a3f12f170c16ef976773/main.go#L124
locustWorkersRunningCount: prometheus.NewGauge(
prometheus.GaugeOpts{
Namespace: namespace,
Name:      "workers_running_count",
Help:      "The current number of running workers.",
},
),
Thanks again for your helpful feedback!


Testing: Fix SLES tests

Description
SLES 12 and 15 integration tests were unable to run because incompatible Python & GCloud CLI. Fix the issue by:

On x86-64, install the GCloud CLI from tarballs which come with bundled Python;
On aarch64, since the GCloud CLI does not have bundled Python, install Python 3.11 from system repo or vendor repo.

Related issue
b/308605793
How has this been tested?
Integration tests passing for SLES 12 & 15.
Checklist:

Unit tests

[x] Unit tests do not apply.
[ ] Unit tests have been added/modified and passed for this PR.

Integration tests

[ ] Integration tests do not apply.
[x] Integration tests have been added/modified and passed for this PR.

Documentation

[x] This PR introduces no user visible changes.
[ ] This PR introduces user visible changes and the corresponding documentation change has been made.

Minor version bump

[x] This PR introduces no new features.
[ ] This PR introduces new features, and there is a separate PR to bump the minor version since the last release already.
[ ] This PR bumps the version.

On SLES 15 ARM where we install Python311 from the vendored repo, it will try to get other dependencies libpython3_11-1_0 python311 python311-base shared-python-startup from the system repo and can timeout. Adding those to the test-repo and will retry the tests.


Update the CI to use Python 3.10

Did you want to keep Pythons 3.8 and 3.9 in the matrix, to make sure the parser builds/runs there too? The tests in #48 can be restricted to only run in 3.10.0.


Call $ as both method and constructor

You can get entirely rid of i by calling $ as constructor. Is this something you have considered?
From my testing, we can shave off ~20bytes by doing this. At the cost of having a method do a lot of things at once, but if it's supposed to be the smallest it can possibly be, then it's worth it?
Also, why is there a final semicolon in the minified version? I am assuming uglify didn't remove it, that's one extra byte!
Side note: I think your gzip sizes are completely wrong. When I run gzip -c9 ki.min.js | wc -c without comment, I get 318 bytes. Can you double-check?
Either way, I am a big fan of the project <3

I haven't considered getting rid of i. i think there was still something holding me back trying to get lowest bytes possible but still maintaining it human friendly. because one can go real crazy when putting byte saving first. but we can try it.
reg. gzip, is probably outdated, also you should strip the comments out, anyway i'm getting 308
thanks for your nice words and the support here

I ended up creating a separate project to dump all my ideas: https://github.com/Atmos4/q.js
If you agree, the plan is to merge as many ideas as possible in your repo as well! :) feel free to take a look and tell me if you like the tooling.

I saw it already, very cool. the code itself for q.js, looks very neat. very similar to ki but better.
I also have used bun for a few things, and i like the additional speed and having build, pacakage manager, etc all included.
the only point i would make here is adoption if there are other contributors, given that i think node+npm is still the most used stack. but there aren't many anyway XD
I don't think there's need for Bun server though? since you could just open the html file that loads the script for testing.
as a note: you should also check out https://github.com/james2doyle/ki.extend.js aslo from a long time ago, someone built really extensive plugin modules adding a ton of features to ki as extensions, we would probably check we don't break those or update them in that case

Yes that is true! I think the changes I have done so far do not break anything as they don't really change any of the API's core functionality

I published a PR to solve this: #33


Looking for already made EDIFACT 99B DESADV, RECADV, INSDES C# classes

Does anybody has ready C# classes for messages in subject?
I'm newbie with EDI and seems dull task doing the mapping.
Thank you

Hi @Pao-lino,
although there are no ready classes for the exact transmissions above there are may common segments involved between EDIFact transmissions and there are models you can copy to your project found under the "tests" project inside the Models folder.
A very good example to get you started and pick some segment classes and or groups is the IFCSUM transmission model used to in some test cases. The tests project has all sorts of examples but none of them are considered complete for production use.
As a reference for implementing the models I often use the resources found on the www.stylousstoudio.com website. For example for DESADV take a look at DESADV D99B documentation. An other more official resource is the UN site for EDIFact but I find the information there more scattered allover the place.
Hope this helps.


status_effects.csv has zeros in effect thresholds

First of all, thx for working at this!
That said, while trying to have a look and understand how this was implemented, I realized that status_effects.csv has many effect thresholds at 0, likely as if they were unknown.
I am not an expert on these things (just casual reader about BotW/TotK reverse engineering), but I think I recall some of these were already known in BoTW (e.g. AttackUp) and I have recently found a datasheet which seems to have the complete ones for TotK (BTW, they mention you in the intro sheet, so maybe you already know them).
Would it make sense to update the status_effects.csv  with the thresholds from the sheet?

Yep, it was a mistake and the sheet I wanted to link was the Echocolat one: https://docs.google.com/spreadsheets/d/18pNtDx3z-8CwGJRmlW574xbQ6VphQOkvpZhClpOEVDA/edit#gid=1214714862
Ok, so as I was imagining, this is just work in progress and you already work with them. Worth having tried anyway. Thx!

I'll definitely need to find time to go through and add them. The one I've been maintaining is here but a lot of stuff is either still outdated or we've added stuff from our own findings, removed stuff that isn't relevant to the project, or we're still researching.


Extra vertical gridline on the StockLine chart with a specific data set

(An extension of #17)
There is an extra vertical gridline on the StockLine chart with a specific data set.

It can be reproduced with the following on both emulators for iOS and Android (Nexus 5, Android 7.1.1 - API level 25) using the following:
import React from 'react';
import { AppRegistry, View } from 'react-native';
import {StockLine} from 'react-native-pathjs-charts';

export class StockLineExample extends React.Component {
  render() {
    var data = [[{"x":3,"y":71},{"x":6,"y":75},{"x":7,"y":61}]];

    var options = {
      width: 275 ,
      height: 200,
      color: '#2980B9',
      margin: {
        top: 20,
        left: 20,
        bottom: 20,
        right: 15
      },
      animate: {
        type: 'delayed',
        duration: 200
      },
      axisX: {
        showAxis: false,
        showLines: true,
        showLabels: true,
        showTicks: true,
        zeroAxis: true,
        orient: 'bottom',
        tickValues: [],
        label: {
          fontFamily: 'Arial',
          fontSize: 8,
          fontWeight: true,
          fill: '#34495E'
        }
      },
      axisY: {
        showAxis: false,
        showLines: true,
        showLabels: true,
        showTicks: true,
        zeroAxis: true,
        orient: 'left',
        tickValues: [],
        label: {
          fontFamily: 'Arial',
          fontSize: 8,
          fontWeight: true,
          fill: '#34495E'
        }
      }
    };

    return (
      <View style={{flex:1,alignItems:"center",justifyContent:"center"}}>
        <StockLine
          data={data}
          options={options}
          xKey='x' yKey='y' />
      </View>
    );
  }
}

AppRegistry.registerComponent('example', () => StockLineExample);

Somewhere along the line, this issue got fixed. Not seeing the extra vertical gridline on either iOS or Android anymore.


Better xdg_utils

The first patch here will cause a lof of rebuilds, since a lot of stuff depends on cups.

Not really convinced to use this fork of xdg utils...

@lethalman it's optional, nothing changes by default

Ok, the .desktop with xdg-open is basically useless to my knowledge. mime apps are recognized using the .desktop content, xdg uses the mime to open the document using that .desktop. So, it's xdg-open that uses the .desktop somehow, doesn't make sense to set xdg-open as Exec of a desktop file.
Do you have any example in any other distro/app that sets xdg-open for a .desktop?

Yep, that looks crazy. But if you look at the cups.desktop before this change you'll notice it is set to /nix/store/*-xdg_utils-*/bin/xdg-open there too. That works because all this xdg-open does is fires up a browser on the specified cups-config URL.

Ok I see.... If you PR against staging I will merge.

Merged into staging.


SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

Hello! Thank you for this wonderful tool.
I am running into a pickle. Steps to reproduce are very straightforward:

Create a mysql container with takeout enable mysql. I gave it port 3307 (because it complained 3306 was taken, not sure why, since I uninstalled my previous local mysql installation), and also gave it a custom password. It seems to boot up fine, and I am able to connect to it with TablePlus.
Create a new Laravel project with laravel new takeout-test
Set up the .env file with the proper port and password
Try to run migrations

I get this error:

It seems to have to do with the password type in mysql. Running these commands allowed Laravel to connect to the database and run the migrations correctly.
According to this reply, this might actually be a compatibility bug between a recent mysql version and Laravel itself, and not one with this tool. I am not able to verify this at this time, but if it is, feel free to close the issue of course. However, since this might be happening to other people, hopefully this thread can help them.
For reference, my mysql version is 8.0.21 and my Laravel version is 7.26.0.

This is fixed by upgrading your PHP version to 7.4
If you are using valet, run valet use<EMAIL_ADDRESS>


Assertion Failed: missing assets

as title says when trying to run it:
.\PixelSimulation.exe
[15:35:21] ORION: Creating window OrionApp (1280, 720)
[15:35:21] ORION: Renderer NVIDIA GeForce RTX 3090/PCIe/SSE2
[15:35:21] ORION: Vendor NVIDIA Corporation
[15:35:21] ORION: Version 4.6.0 NVIDIA 516.59
[15:35:21] APP: Assertion Failed: Unable to open file "assets/models/PrimitiveShapes/Cube.obj".

Thank you! I will resolve this problem as soon as I can..


Document options

These options are never really explained in the docs:

cwd
flatten
expand

Which leads to a series of brute force attempts to configure the plugin to work the way we expect it to.
It would be greatly appreciated if these options could have dedicated sections in the docs to explain their impact on the task. Thanks!

+1


Gen3 Support & minor fixes

Updated pokemon.json with Gen 3 Pokemons
Fixed a bug that prevents Window users from running the bot
Device ID fixed to 32 chars
Update Device information
Killswitch file updated

👍


Remove DoNotConvertJsonDateTokens  setting from RecordedTestSanitizer

Remove DoNotConvertJsonDateTokens setting from the sanitizer.
It was added a temporary workaround.
At the minimum, it should be inverted so new recordings are not affected by the bug.

Fixed in https://github.com/Azure/azure-sdk-for-net/pull/16605

Still not removed.

At the minimum, it should be inverted so new recordings are not affected by the bug.

This was done.

We still need to remove the setting when everyone moves off.

This was removed as part of Test Proxy migration.


Uploading more than one zip file results in only one being extracted

I see this on my local instance... not sure what's going on yet.

OK, this was caused by #2530, which then threw an error which was absorbed silently by the code changed in #2664. So the job appeared to succeed and didn't get retried. So, this should now work, except the cached file isn't always around, so I should fix #2530 anyway.


Build APK/IPA

To add support for a flow that allows building APKs and IPAs by clicking one button in the Ensemble studio.

Attaching proposed flow for the same:
apk:ipa build flow.pdf

Tasks to do for a successful build flow:

[ ] Create a Scaffold project generation using mason
[ ] Create a server to handle requests using Python and thereby invoke the Mason brick to generate the scaffold project
[ ] Write code to create a new repo for a given project and push code to it. It will be done by the Python server only
[ ] Setup CodeMagic/GitLab for the building and deployment pipeline
[ ] Connect the CodeMagic/GitLab with the server to complete the flow
[ ] Add a webhook for giving the live status of the build back to frontend
[ ] Add support to restart the failed build due to some reason from the CodeMagic/GitLab platform and not recreate a scaffold project.
[ ] Add flow in the studio. The flow would contain something like a dialog box asking for the final app name and Android and iOS package name.

@hemish11 please update this, last update was over 4 weeks ago. Keep your tickets up-to-date, it is part of our job

Both this issue and https://github.com/EnsembleUI/ensemble/issues/678 are part of the build system I'm working on, so would be closed once they are completed, let me update the checklist that's above for the new update

closing as this has been done.


Run rake task as a job

# cronotab.rb
require 'rake'
AppName::Application.load_tasks

class Test
  def perform
    Rake::Task['crono:hello'].invoke
  end
end

Crono.perform(Test).every 5.seconds

With the rake task of:
#lib/tasks/test.rake
namespace :crono do
  desc 'Update all tables'
  task :hello => :environment do
    puts "hello"
  end
end

@michaelachrisco Thank you, that's good variant. Closed by #15

Hi, i have put this code in my project. I am planning on running a email generation code using rake. But in the above example how do i run the crono gem. How do i make it run so every 5 sec it will give me a output of hello. Does the hello appear on the terminal?
Please help me out i am stuck at this for my project.


fix: brickcolor type

Calls the BrickColor constructor using the text argument instead of indexing the class object itself.
Also uses a more specific hex pattern to avoid warnings being thrown in the console when typing out a hex code.

LGTM, thanks!


feature request: more bookdown support, in particular footnote ^[Footnote text]`

I am using sublime text to write something with bookdown that uses footnotes extensively. Would be great to get a syntax highlighting for the sequence \^\[.*\].
I'm not sure how difficult this is to implement, however.

cf: https://github.com/REditorSupport/sublime-ide-r/commit/913ec1b4a07b469a9707cebc96d7addda6cf7dd6

To be clear, development on R-Box is being no longer being maintained
and REditorSupport is a viable alternative?
We are working on a qualitative document only. Is there a way to use
these tools for Sublime for just the syntax highlighting? So that
there isn't a script in the background pinging for function
definitions etc?
On 5/19/18, Randy Lai<EMAIL_ADDRESS>wrote:

cf:
https://github.com/REditorSupport/sublime-ide-r/commit/913ec1b4a07b469a9707cebc96d7addda6cf7dd6
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/randy3k/R-Box/issues/126#issuecomment-390427079

Thanks! I will do that.
This development looks great, thank for your speed in responses. I can’t
wait to try it out!
On Mon, May 21, 2018 at 2:25 PM Randy Lai<EMAIL_ADDRESS>wrote:

You could just download the R Markdown.sublime-syntax to your User
directory if you just want to syntax definition.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/randy3k/R-Box/issues/126#issuecomment-390756304, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AWHyRG-_6vJTmDGZoSXdY1UmWeiQxleKks5t0xScgaJpZM4UDaMF
.


fix: move suspense

The application error in the linked issue is hard to reproduce with a running local env, so debugging is tricky on this. The error is telling us to move the Suspense boundary higher in the component tree. I believe this was (perhaps) introduced with the changes in this PR? https://github.com/hirosystems/explorer/pull/614
@He1DAr any thoughts on this solution to try? I can't say for sure it fixes the error bc I can't reproduce it locally.

Thank you for looking into this. It could happen because we have multiple elements inside a suspense block. Couple of issues we need to investigate:

Why this error is not showing in Sentry?
Why source map is not working on this instance?

Why this error is not showing in Sentry?
Why source map is not working on this instance?

I will look into these before we merge this.

I am going to deploy this to staging to test.

@He1DAr
I think we need to add this to get the error in Sentry:
https://docs.sentry.io/platforms/javascript/guides/react/components/errorboundary/
And, I think we need to add this to get source maps in production:
https://nextjs.org/docs/advanced-features/source-maps

Created a new issue for these: https://github.com/hirosystems/explorer/issues/669

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


Catch up with easyCore

@wardsimon can we chat at some point to determine what is needed for this (and a strategy to keep things up to date in future)?

The majority of this involved moving from Objects.Base -> Objects.ObjectClasses which is achieved with #25.


xSQLAOGroupEnsure: NT AUTHORITY\System Permissions

Please provide the following information regarding your issue (place N/A if certain fields don't apply in your case:
---- DELETE THIS LINE AND ABOVE ----
Details of the scenario you try and problem that is occurring:
The DSC configuration that is using the resource (as detailed as possible):
Version of the Operating System, SQL Server and PowerShell the DSC Target Node is running:
Version of the DSC module you're using, or 'dev' if you're using current dev branch:
---- DELETE THIS LINE AND BELOW ----
Your feedback and support is greatly appreciated.
If you are able to resolve this issue or add new features, you may submit a Pull Request against this project.
Please see the Contribution Guideliness for information on how to contribute.

Please feel free to assign this to me as I am beginning work on it.
Thanks!

Isn't the account NT AUTHORITY\SYSTEM used as the health detection account? See this support article https://support.microsoft.com/en-us/kb/2833707
But the permission should not be set by this resource. Wouldn't be better to use xSQLServerPermission instead?

The cluster service runs as NT AUTHORITY\SYSTEM and the cluster does need access to health related information inside of SQL. However, if you grant the cluster service itself (NT SERVICE\CLUSSvc), it allows NT AUTHORITY\SYSTEM to log into SQL only when it is running in the context of the cluster service.
Currently the resource over-permissions NT AUTHORITY\SYSTEM in order to get the AGs configured. My thought process is that because these permissions are required only for the AGs, it makes sense to have the xSQLAOGroupEnsure resource set the permissions. Otherwise we are expecting people to know that additional permissions are required.
Either way I intend to have xSQLAOGroupEnsure check and verify the permissions are present prior to proceeding.

I'm all for low privilege, so using CLUSSvc seems to be a better approach. And I agree that setting that account could be done using this resource since that is not obvious for users. But should this resource also be able to handle different SQL Service accounts on each replica?
@randomnote1 Please take a look att issue #236 and #237 if they can help anything.

I think it should. However, I've been told AGs work best if all the instances involved in the AGs use the same service accounts.
@nabrond - do you have any thoughts?

When I read up on this I did not see any issues like that. But did not look for it etiher so...
What I did find was this

If two server instances run as different accounts, the system administrator must use the CREATE LOGIN Transact-SQL statement to create a login for the startup service account of the remote instance for each server instance.
https://msdn.microsoft.com/en-us/library/ms366346.aspx#Anchor_0

Yeah, that's how it works with Database Mirroring, so that makes sense to me.

@randomnote1 If you are using an Availability Group Listener and want to use Kerberos for authentication, then the same service account must be used across all instances supporting a given Availability group. Without this consistency, you will not be able to correctly register a SPN. See this article for more information.

Two things I'd like to get your opinion on:
Different Service Accounts per Instance
Here's what I'm thinking for handling/supporting a different service account per instance:
In "AlwaysOnAvailabilityGroupReplica"

Get the service account of the instance currently serving the Primary Replica of the AG
If the service account is different than that of the instance housing the Secondary Replica being added, display a warning that Kerberos will be unavailable for authentication.

This will still allow different service accounts to be used but also notify the the user that authentication may not work as desired.
Permissioning "NT SERVICE\ClusSvc"
Going back to our discussion from earlier, do you think the AlwaysOnAvailabilityGroup resource should

just error out if "NT SERVICE\ClusSvc" doesn't exist and/or doesn't have the correct permissions? This would require the user to create the login using xSQLServerLogin and grant the proper permissions using xSQLServerPermission (which would need reworked).
create "NT SERVICE\ClusSvc" and permission it appropriately?

Been a crazy workday today, so haven't been able to post until now.
Regarding Different Service Accounts per Instance. I would say to issue a warning. We should not change accounts. I don't think we can either, because we don't have the password.
Regarding Permission for "NT SERVICE\ClusSvc". If we would create the login and set the permission, then both 'AlwaysOnAvailabilityGroup' and 'AlwaysOnAvailabilityGroup' would need to have the logic to create the correct login and permission. Logic that is already (or should) be provided by the other resources. Also 'AlwaysOnAvailabilityGroup' and 'AlwaysOnAvailabilityGroup' must be able to handle any deviation from that, if the login disappears or any permission is changed (so that it is in desired state). That is also logic that is (or should) be provided by other resources.
I would lean to that either 'NT SERVICE\ClusSvc' or 'NT AUTHORITY\SYSTEM' must exist (by means of other resources) with the correct permission for the Availability Group to be created, or a replica is able to join. If a primary or secondary replica does not have either login present, and with correct permission, the resource throws an error. This could also be noted in the resource documentation (README.md so far), that it is a prerequisite.
What do you think?

Btw. I mention 'NT AUTHORITY\SYSTEM' still because MSDN documentation still says that is the way to go, so thinking some users might want to follow those guidelines.

Thanks for the feedback. I emailed one of the content developers I know to ask about getting that updated. In the meantime, I'll specify both SYSTEM and ClusSvc, but I hope to be able to remove SYSTEM by the time I do a pull request.

That sounds good to me. Looking forward to the PR.

As a reference, I found two more links mentioning 'NT AUTHORITY\SYSTEM' is needed.
SQL Server – Failed to bring availability group ‘[availability group name]’ online
https://dataginger.com/2014/10/28/sql-server-failed-to-bring-availability-group-availability-group-name-online/
Pro SQL Server Always On Availability Groups
https://books.google.se/books?id=uflRDQAAQBAJ&pg=PA262&lpg=PA262&dq=availability+group+health+detection+account+NT+AUTHORITY\SYSTEM&source=bl&ots=q1ekXhHHIc&sig=TekuOSle2r1ldqWmqXNPz5ZbpOM&hl=en&sa=X&ved=0ahUKEwiovN7dvefQAhVBVSwKHRAxAOYQ6AEINDAE#v=onepage&q=availability group health detection account NT AUTHORITY\SYSTEM&f=false

That's unfortunate.
Here's a nice article by Pinal Dave showing what happens when you actually log in as System. SYSTEM is granted public by default. And because of that, anything logging into SQL as SYSTEM can't do much. As he points out, the login object gets translated (in his case to his computer name). The same applies to the cluster service.
http://blog.sqlauthority.com/2016/02/08/sql-server-how-to-connect-using-nt-authoritysystem-account/
We already use this method to grant SCOM the ability to log into SQL.:
https://support.microsoft.com/en-us/kb/2667175
The Health Service runs as SYSTEM, but we don't grant SYSTEM the required permissions, we grant the permissions only to the HealthService service.
Anyhow....gotta get documentation updated. Maybe I should find a blog to publish this info to?

@randomnote1 When validating the service account, you will likely run into a permission issue connecting to the primary replica. You should be able to check whether a PsDscRunAsCredential has been supplied to the resource. Otherwise, you will need to grant access to the computer account.

@randomnote1 Regarding finding a blog to publish info on. This would be a good blog article for the SQL Tiger Team. What actually happens during "Health Detection" for an availability group 😄
@nabrond You make a valid point.

@randomnote1 FYI. Found another article regarding this subject https://support.microsoft.com/en-us/kb/2847723


Define SonarCloud code quality rules

Tasks

[x] Determine code quality rules for developers
[x] Determine which SonarCloud findings must be addressed (critical, major, code smell, bug, etc)
[x] Review with @maheese @j-tafoya and @jthomp13 any false positives
[x] Fix Jest unit tests not showing up in code coverage
[ ] Enable branch protection to disallow merges that dont meet the quality gate

Outcomes
Documentation of how to address findings will be captured in SonarCloud as a default template

No longer needed. Using out of box Sonar reports for now.

Reopening this issue; 9/17 DSU identified that we need to define code quality guidelines and discuss what SonarCloud findings need to be addressed

A short writeup on the SonarCloud Quality Profiles and how to activate/deactivate rules can be found here

Define a constant instead of duplicating this literal 4 times.
gulpfile.js contains string literals vs const var
Do we keep these?
Trailing spaces not allowed

Removed sprint as Tech Team is moving to Kanban style workflow. Work will continue in PI 2.

Discussed storage location for code scan rules with EPA on 11/10. Agreed to document in Sonar Cloud. SonarCloud rules will be backed up, frequency TBD.  Will add ticket to determine strategy for back up process.


build application failed due to new ClassicPackage()

The app build failed because import io.github.douglasjunior.ReactNativeEasyBluetooth.classic does not exist
which failed to retrieve   new MainReactPackage(), new ClassicPackage()
I followed the steps under installation. Would I need to put the ClassicPackage inside of my project folder somewhere?

No, the only steps required are those displayed in the Readme.
you can check if react-native link has linked everything correctly, see this example:
In android/build.gradle add the jitpack repository to your project.
allprojects {
    repositories {
        mavenLocal()
        jcenter()
+       maven {
+          url "https://jitpack.io"
+       }
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$projectDir/../../node_modules/react-native/android"
        }
    }
}

In android/app/build.gradle, add the easy-bluetooth-classic dependency
dependencies {
+    compile project(':easy-bluetooth-classic')
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:23.0.1"
    compile "com.facebook.react:react-native:+"  // From node_modules
}

In android/settings.gradle
include ':app'
+ include ':easy-bluetooth-classic'
+ project(':easy-bluetooth-classic').projectDir = new File(rootProject.projectDir, '../node_modules/easy-bluetooth-classic/android')

In android/app/src/main/java/com/example/MainApplication.java, add the ClassicPackage dependency.
import com.facebook.react.ReactActivity;
import com.facebook.react.ReactPackage;
import com.facebook.react.shell.MainReactPackage;
+ import io.github.douglasjunior.ReactNativeEasyBluetooth.classic.ClassicPackage;

import java.util.Arrays;
import java.util.List;

public class MainApplication extends Application implements ReactApplication {

    ...

    /**
     * A list of packages used by the app. If the app uses additional views
     * or modules besides the default ones, add more packages here.
     */
    @Override
    protected List<ReactPackage> getPackages() {
        return Arrays.<ReactPackage>asList(
            new MainReactPackage(),
+           new ClassicPackage()
        );
    }
}

thank you for the help