Run a single node test on each node in a partition

I'd like to run a single node test on each node in a partition, but couldn't find an elegant way to do this. A short discussion on the ReFrame General slack channel led to an implementation that does:
node = parameter(['node1', 'node2'])

@run_before('run')
    def prepare_run(self):
        self.job.options = [f"--nodelist={self.node}"]
        self.name = f "{self.name}-{self.node}"

but it requires hardcoding the nodenames, or at the very least keeping the nodenames (per partition) somewhere in a list.
One option would be to add a property (e.g. 'nodes' or 'nodenames') to partition in ReFrame's settings file that holds all the nodenames. That way, it is still hardcoded, but at least it is in one central place (no duplication between tests). Plus, with a utility function that does the reverse of https://reframe-hpc.readthedocs.io/en/stable/utility_functions_reference.html?highlight=nodelist#reframe.utility.nodelist_abbrev , one would only have to specify the relevant range(s) in the nodenames. E.g.
'systems': [
...
   'partitions': [
...
       'nodenames': ['nid[100-200]', 'nid[400-500]']
...

Starting with support for something like this in the settings file, functionality could then later easily be extended by a dedicated feature that essentially does the above (i.e. create a parameter based on the nodenames, and pass additional job options), but bases the node parameter on the content of nodenames for the current partition (and with proper support for various job backends instead of hard-coded arguments).
Instead of coding a nodelist in the settings file, we could automatically try to query it from the job scheduler. However, I don't think this approach would match with ReFrame's concept of partitions: partitions in the ReFrame settings file don't always match 1-to-1 with partitions in SLURM (and this actually gives a lot of flexibility). Thus, I'd personally prefer the approach with hardcoded nodelists in the ReFrame settings file, as long as it supports defining node ranges.

@casparvl I don't think that specifying the node list in the partition configuration is a good idea, because it can get outdated and very often you may have nodes offline, so you can't simply parametrize on such a static set of nodes. The job scheduler internal interface gives you the possibility to select the nodes of a specific ReFrame partition. The Slurm backend in particular is smart enough to interpret any job option (not just the -p partition) so that it can actually select the nodes of a ReFrame partition based on the access options plus any other options (constraints, nodelists, reservations etc.) are passed from the command line.
The problem here is more fundamental and I think it is the same as in #2334. Even if you get the list of nodes of interest in a partition, you would still need to parametrize your test differently per partition. This is not currently possible at the definition of a parameter, but the workaround is to define the parameter to take the union of the parameter values and then filter in a post-init hook. For nodes, I agree, this is not so nice.
As soon as #2334 is fixed, you will be able to select any set of tests from the command line and launch them on all or part of nodes of a reframe partition.
I will mark this issue as  a duplicate, but if you think it's not, we can further discuss it. I will write some more details in #2334.


Fix utilization error

Fix error when utilization was always set to 0

Hi @sushant-hiray,
Thanks for opening the PR. Can you show me an example bug you want to resolve with this PR?


Spaceship::TestFlight::Group.create!(app_id, group_name) does not accept arguments

Question Checklist

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

Question Subject

I couldn't create test groups in TestFlight via Spaceship.

I couldn't find any documentation about group creation for testing although the class Spaceship::TestFlight::Group seems to be the entry point for this task.

This question is about the Spaceship itself.
Question Description

I tried to create a test group for our app but the Group.create method always fails.
The codes we based us on were the Spaceship's source itself https://github.com/fastlane/fastlane/tree/edb089929a9c1a7b7db7ac806ffa93cb6ab0da5b/spaceship/lib/spaceship/test_flight
Below are our test codes for calling Group creation.
CODE:
group = Spaceship::TestFlight::Group.create!(app_id, group_name)
ERROR:
ArgumentError: [!] wrong number of arguments (given 2, expected 0)   /Library/Ruby/Gems/2.3.0/gems/fastlane-2.101.1/spaceship/lib/spaceship/test_flight/group.rb:27:in create!'`
CODE:
group = Spaceship::TestFlight::Group.create(app_id, group_name)
ERROR:
NoMethodError: [!] undefined method create' for Spaceship::TestFlight::Group:Class
Did you mean?  create!
Did you mean?  create!
/Library/Ruby/Gems/2.3.0/gems/fastlane-2.101.1/spaceship/lib/spaceship/base.rb:186:in method_missing'
Any insight about how to create groups, or even if its possible?

@adrianokerbermenvia Heyyy 👋 This method actually uses keyword arguments so you will want something like...
group = Spaceship::TestFlight::Group.create!(app_id: app_id, group_name: group_name)

This should do it for you 😊

Your example @joshdholtz worked flawless. Thank you!

@adrianokerbermenvia Glad it worked for you! Happy fastlaning! 🚀


[Request]: Protégé ontology editor

Prerequisites

[X] I have searched all issues/PRs to ensure it has not already been reported or fixed.

Criteria

[X] Reasonably well-known and widely used (e.g. if it's a GitHub project, it should have at least 100 stars and/or 50 forks)
[X] English interface (or at least English documentation)
[X] Latest stable version
[X] Full version (i.e. not a trial version)
[X] Fairly standard install (e.g. uses a version-specific download URL, no elaborate pre/post install scripts)

Name
protege
Description
A free, open-source ontology editor that supports the latest OWL 2.0 standard
Homepage
https://protege.stanford.edu/
Download Link(s)
https://github.com/protegeproject/protege-distribution/releases/download/protege-5.6.2/Protege-5.6.2-win.zip
Some Indication of Popularity/Repute
Protégé is a commonly used tool in the Semantic Web community and has been around for almost 20 years. It's under active development and has more than 800 stars on GitHub. Their webpage mentions more than 360,000 registered users.
Protege is released under the BSD 2-clause license
I personally use it in lectures and research projects.

/verify


[Feature] Audacity/VST Integration

Description
I have been in contact with the Audacity Dev Team and we have been discussing how to integrate Spleeter into free/open-source DAWs. We want to suggest that Spleeter have a c++ sister version that could be ported as a VST plugin or ported into full integration in Audacity with ease. If the Spleeter team could please either translate the data processing to c++ or give a clear rundown as to what the data processing steps are so we could create a c++ version using the pre-trained models it would be most appreciated.
Additional information
We were also looking into legal and licensing disputes. It seems that a VST plugin would be external and thus be open to use for any DAW regardless of license.

Hi there,
Thanks for the suggestion, we have started a discussion about it: https://github.com/deezer/spleeter/issues/155 it seems to be doable, feel free to join the conversion there.

I know this issue is already a couple of month old but if you are still interested in integrating spleeter in a VST, I am working on a C++ port of the tech (see here).
Lately, I integrated it in a simple JUCE project and thought it may help you.
The next step is to enable in-line processing of the signal. I am working on this at the moment but the task isn't trivial.

Anyone interested in this can have a look at the great work of @gvne described in #276


IE8 support

IE8 requires the ability to use the alternative directive syntax : <div rzslider ... >
Fixes #313

Current coverage is 100.00%

Merging #314 into master will not affect coverage as of 5024bdf

@@            master    #314   diff @@
======================================
  Files            1       1
  Stmts          701     701
  Branches         0       0
  Methods          0       0
======================================
  Hit            701     701
  Partial          0       0
  Missed           0       0

Review entire Coverage Diff as of 5024bdf

Powered by Codecov. Updated on successful CI builds.

The only problem this leaves is that the CSS rules all need to be changed : s/^rzslider/.rzslider/g and I'm not sure how you'd do that. Would we change all the rules to have selectors that covered both cases ?

What about using replace: true and wrapping the template inside a div with the .rz-slider class? Then we can simply replace the rzslider rule by .rzslider in the LESS file?

Did you mean "the template inside a div with the .rzslider class" ?
I think that upsets initElemHandles() because when I did that, FireFox complains that this.selbar is null.

Yes the  ̀initElemHandles` probably needs some refactoring too. However, if simply using the attribute syntax is OK for IE8 then this is probably simpler. What do you think?

New template, SASS source, and change to initElemhandles() now pushed.

Why did you use class=\"rzslider\" for the template? It shoud be directly  class="rzslider" I think.

@ValentinH not sure what you mean. The slashes have to be there to escape the speech marks.

they have to be here when used directly in the JS file but here it's an HTML one. ;)

@ValentinH oh, right. I'm not sure how that file ends up in the output .js file. I will change on the branch.

OK, I need to test it to ensure that there is no breaking change due to this change. Some unit tests are failing and they are probably about the vertical option.

Sorry for the delay of my response. I have just tried you changed and indeed, the vertical sliders are broken.
You just need to add replace: true to the directive config and remove your changes in the initElemHandles() method. ;)

@tomchiverton any update about this PR?

I've not had a chance to add vertical sliders to our IE8-requiring application to confirm the suggestion above.

I tried it and it should work. Could you update your PR so I can merge it?

Sure. I didn't realise Github wouldn't let you make these changes pre-merge.

Thanks! Just before I merge, can you rebase/squash all the commits into one please so it's cleaner in the commits list?

How do I do that ? Pretend I'm a Subversion user who only uses Git because lots of projects I depend on do.

Check this: https://github.com/angular-slider/angularjs-slider/blob/master/CONTRIBUTING.md ;)

Also it will be released under 3.0 version since existing implementations can be broken if style are defined using the rzslider selector.

Apperently you can do this for this and all future requests : https://github.com/blog/2141-squash-your-commits

Indeed, I saw it when they added it but forgot it! :D Thanks 👍

I'll release it a little bit later because I would like to implement what I explained in #328 so I only do ony major release.


Is there any Table plug-in that supports table-swipe option on Pagination

I have a huge data with 15 number of columns to show in a single data. The data might contains 1000 records. I can not use the horizontal scroll bar. So need table to be swipable over desktop, so that we can swipe over table for each column. At the same time the pagination also should work.
Can anybody suggest me a good table-plugin option in which  horizontal column swiping is allowed over pagination.
It will be a great help.

Hm? If your pagination is enforced in the markup it should work fine with the swipe table in tablesaw. Please reopen with a test case or additional questions.


Error on start-up, causing the server to crash/reload every few mins

Hi there,
So, I've been getting an issue that began after updating FXServer to latest version.
In console I've been receiving a "Logger upload fail" error constantly spamming every few secs.
Moreover, after few mins the server crashes and restarts by itself.
I've attached a picture of the error. If anything else I required such as logs let me know 😄
Thanks.

Did you put txadmin in the resource folder? if yes dont do that. Also use the discord for support https://discord.gg/pFr29wzYB2

Nope don't have it in resource folder. Ahh okay I'll go to the discord support thanks 😀


fix logger creating directory structure too early in DDP

What does this PR do?
Fixes #6364
All this PR does is delay the first calls to the logger to a point where the worker processes (e.g. in DDP) have access to their rank information. This prevents the logger from writing to the same file in every process
The added test fails on master.
Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

@carmocca yes, it fails on master :)


Create lazy objects/arrays and watch for native props changes

It would be nice to have more control how a go struct is exposed to javascript. In particular, I would be interested in:

watching for property creation/modification/removal
exposing a potentially big data structure in a lazy fashion (creating it on the fly when it's accessed from javascript)

JavaScript example (exposing myObj as a global object from go):
// I would like to re-implement put(), putStr(), for example to keep track of changes during exec
myObj.someProp = 5;

// same as above
myObj.thisIsNew = 42;

// I would like to re-implement delete(), deleteStr()
delete myObj.someOtherProp;

// Fetching corresponding data on the fly, and wrapping each generated
// value as a 'lazy value' in case of objects or arrays
// I would like to implement get(), getStr(), getProp(), getPropStr(), hasProperty(), etc
username = myObj.row[8555].subItem[9999].user.friends[friendId].name;

Would it be possible to expose some type akin to baseObject/objectImpl to external packages? It could be a sub-type only for external object maybe?

I think you need ES6 Proxy (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy).
@noctarius was doing some work on it (https://github.com/relationsone/goja/tree/es6-proxy) but I haven't heard from him for a while. It would be nice to have this in goja as this is quite useful and can't be polyfilled.

Hi, commenting here to say that I have the same need.
Since the ES6 Proxy work looks both complex and stalled... how about reopening/merging https://github.com/dop251/goja/pull/62 ? In my opinion It looks straightforward to use and would give all the necessary low-level control on the go side.

Proxy functionality has now been added to the es6 branch. I see no reason for having two mechanisms doing the same thing.


[Toggl Track] Time tracking for tasks

Extension
https://www.raycast.com/franzwilhelm/toggl-track
Description
It is not possible to track time per task on projects. It would be helpful to have to possibility to select project and then pick a task from a list of tasks (could be optional).
It should be possible: https://developers.track.toggl.com/docs/api/tasks
Who will benefit from this feature?
Anyone tracking time per multiple clients / projects which can have different tasks. It is sometimes needed to hand to clients or to connect these entries with a kanban board.
Anything else?
I can help create a PR.

Cool @renehlavova pls do open a PR and I'll review it :)


App Store Error!!

Hello,
Got the below mail from App Store team. I think, its because of the variable named "labelText". Can you please update the var name in your next build?
Dear developer,
We have discovered one or more issues with your recent delivery for "XXXX". To process your delivery, the following issues must be corrected:
Non-public API usage:
The app references non-public selectors in XXXX: setLabelText:
If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed.

It wouldn't be a lot of work to change the property name, no?
Do you know a pull-request?

Why would that only happen on some submissions? Everybody should have problems, if it is in fact MBProgressHUD. Have you tried renaming the method in your project and re-submitting?

I didn't have the problem myself. However if it's a "known" possibility, then it wouldn't hurt to change the name, no?
I submitted an app some days ago. I choose to download the project and change the property name to avoid a potential rejection.

I don't want to introduce breaking API changes for no reason. If I recall correctly, there was a similar report some time ago (different method though) and it turned out to be an issue with a some other code.
The method will be deprecated in the upcoming release, but the definition will remain there fro a few more versions so people can adopt to the new API. Unless this is proven to be a valid issue.
https://github.com/matej/MBProgressHUD/blob/v1/MBProgressHUD.h#L404

For the record, I submitted a new app this past December that included the MBProgressHUD component and I did not receive and warning or rejection from the Apple reviewers.
From: Matej Bukovinski<EMAIL_ADDRESS>Sent: January 4, 2016 9:44 AM
To: jdg/MBProgressHUD<EMAIL_ADDRESS>Subject: Re: [MBProgressHUD] App Store Error!! (#317)
I don't want to introduce breaking API changes for no reason. If I recall correctly, there was a similar report some time ago (different method though) and it turned out to be an issue with a some other code.
The method will be deprecated in the upcoming release, but the definition will remain there fro a few more versions so people can adopt to the new API. Unless this is proven to be a valid issue.
https://github.com/matej/MBProgressHUD/blob/v1/MBProgressHUD.h#L404
—
Reply to this email directly or view it on GitHub https://github.com/jdg/MBProgressHUD/issues/317#issuecomment-168695096 .  https://github.com/notifications/beacon/AI07TTo8-asHqS5Q3oZxcHNiUkoQwflrks5pWnyvgaJpZM4GungV.gif

Closing this due to no other reports showing up.

My app got rejected today due to the same reason - The app references non-public selectors 'hide' and 'setLabelText'
I searched the whole app for 'setLabelText' and I couldn't find it, not even the deprecated function that was mentioned above. Weird. I am guessing that it might be autogenerating the stub due to MBProgressHud having @synthesize labelText;
So I did two things in MBProgressHud library:

Renamed 'labelText' to 'hudLabelText'
Renamed 'hide' to 'hideHud'

With just this two changes, I submit my app to App Store again and this time it went through without any problems :) So I am pretty sure that Apple are checking and rejecting some apps mistakenly because of these two things.

Both of those properties are deprecated in v1.0.0 and can be removed if needed on your side.


GSPS Writer Operators for Object Detection and Segmentation

Add operators to write out GSPS DICOM objects for:

Object detection (bounding box)
Segmentations (overlay boundaries)

We can leverage highdicom to do this

Note that we can largely re-use the example in the Nuance PIN example for the object detection writer, with a few tweaks to make it more general


Lost ipv6 connectivity after installing

Just noticed that I lost ipv6 connectivity on the server after installing the script and am trying to understand why. Any ideas what could be causing the total drop of ipv6 after the install? If I uninstall and reboot, my ipv6 connectivity returns to normal again.

I made sure to upgrade the system prior to installing (per #125) and encountered no errors during the install.
IPV4 only listen (possibly related to #151)
My ipv6 interface is statically configured (iface ens3 inet6 static in /etc/network/interfaces)

Linux phoenix 5.9.0-0.bpo.2-amd64 #1 SMP Debian 5.9.6-1~bpo10+1 (2020-11-19) x86_64 GNU/Linux

Here is a log of the install on Debian 10:
You will be able to generate a client at the end of the installation.
Press any key to continue...
Hit:1 http://deb.debian.org/debian buster-backports InRelease
Hit:2 http://security.debian.org/debian-security buster/updates InRelease
Hit:3 http://deb.debian.org/debian unstable InRelease
Hit:4 http://http.us.debian.org/debian buster InRelease
Hit:5 http://http.us.debian.org/debian buster-updates InRelease
Hit:6 https://weechat.org/debian buster InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
23 packages can be upgraded. Run 'apt list --upgradable' to see them.
Reading package lists... Done
Building dependency tree
Reading state information... Done
iptables is already the newest version (1.8.2-4).
qrencode is already the newest version (4.0.2-1).
resolvconf is already the newest version (1.79).
0 upgraded, 0 newly installed, 0 to remove and 23 not upgraded.
Reading package lists... Done
Building dependency tree
Reading state information... Done
wireguard is already the newest version (1.0.20200827-1~bpo10+1).
0 upgraded, 0 newly installed, 0 to remove and 85 not upgraded.
* Applying /etc/sysctl.d/99-sysctl.conf ...
net.ipv4.ip_forward = 1
net.ipv6.conf.all.accept_ra = 2
* Applying /etc/sysctl.d/protect-links.conf ...
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
* Applying /etc/sysctl.d/wg.conf ...
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
* Applying /etc/sysctl.conf ...
net.ipv4.ip_forward = 1
net.ipv6.conf.all.accept_ra = 2
Created symlink<EMAIL_ADDRESS>→<EMAIL_ADDRESS>                      ervice.

Tell me a name for the client.

$ping6 google.com
connect: Network is unreachable

$traceroute -6 google.com
traceroute to google.com (2607:f8b0:4005:801::200e), 30 hops max, 80 byte packets
connect: Network is unreachable

Uninstall logs:
Do you really want to remove WireGuard? [y/n]: y
Removed<EMAIL_ADDRESS>Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  libqrencode4* linux-headers-4.19.0-12-amd64* linux-headers-4.19.0-12-common* qrencode* wireguard* wireguard-tools*
0 upgraded, 0 newly installed, 6 to remove and 0 not upgraded.
After this operation, 56.6 MB disk space will be freed.
(Reading database ... 115424 files and directories currently installed.)
Removing qrencode (4.0.2-1) ...
Removing libqrencode4:amd64 (4.0.2-1) ...
Removing linux-headers-4.19.0-12-amd64 (4.19.152-1) ...
Removing linux-headers-4.19.0-12-common (4.19.152-1) ...
Removing wireguard (1.0.20200827-1~bpo10+1) ...
Removing wireguard-tools (1.0.20200827-1~bpo10+1) ...
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for libc-bin (2.28-10) ...
(Reading database ... 98047 files and directories currently installed.)
Purging configuration files for wireguard-tools (1.0.20200827-1~bpo10+1) ...
dpkg: warning: while removing wireguard-tools, directory '/etc/wireguard' not empty so not removed
* Applying /etc/sysctl.d/99-sysctl.conf ...
net.ipv4.ip_forward = 1
net.ipv6.conf.all.accept_ra = 2
* Applying /etc/sysctl.d/protect-links.conf ...
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
* Applying /etc/sysctl.conf ...
net.ipv4.ip_forward = 1
net.ipv6.conf.all.accept_ra = 2
WireGuard uninstalled successfully.

A misconfiguration on my part I think on the ipv6 blocks I provided. I'll take a look later if I can get this running in dual stack.
Setting net.ipv6.conf.all.forwarding = 0 in /etc/sysctl.d/wg.conf got my ipv6 connetivity back on the server in the meantime.


feat: upgrade deps, including<EMAIL_ADDRESS>

What I did
Upgrades all dependencies. Primary upgrades being for the<EMAIL_ADDRESS>release.
This PR also fully switches over the test suite to use the webpack 5 builder.
Checklist:

[ ] I have updated/added documentation affected by my changes.
[ ] I have added tests to cover my changes.

Codecov Report

Merging #3 (3fec68a) into next (b991963) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 3fec68a differs from pull request most recent head ccd8352. Consider uploading reports for the commit ccd8352 to get more accurate results

@@           Coverage Diff           @@
##             next       #3   +/-   ##
=======================================
  Coverage   86.17%   86.17%
=======================================
  Files           8        8
  Lines         123      123
  Branches       34       34
=======================================
  Hits          106      106
  Misses          9        9
  Partials        8        8

Impacted Files
Coverage Δ

src/server/framework-preset-marko.ts
100.00% <ø> (ø)

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 b991963...ccd8352. Read the comment docs.


remove note about server rendering

Seems like this was removed in https://github.com/Hacker0x01/react-datepicker/pull/144/files

This was moved to Github pages, removing for now since we're working on new documentation.


Memject

Can you implent alternative code for Memject?

It doesn't use LoadLibrary.

loaderParams.loadLibraryA = LoadLibraryA;
loaderParams.rtlZeroMemory = (VOID(NTAPI*)(PVOID, SIZE_T))GetProcAddress(LoadLibraryW(L"ntdll"), "RtlZeroMemory");

This is for resolving imports, it loads only system dlls that aren't prohibited.

Thanks a lot. Congratulation for new release.


youtube-dl should also resume downloads specified with -x

If I want to download a playlist of, say, 100 videos, and I use the following command :
youtube-dl -citwx --audio-format mp3 --audio-quality 320K
The -c option does nothing when used in conjunction to -x, unless I couple it with -k.
So it means that I have to download the 100 videos if I want to be able to resume the transfer, which my hard drive can't handle.
What should happen is that when using -c, it also checks for existing mp3 files with the same name as each video, and skip them in that case. This way, each video would only be downloaded once and deleted shortly after.

Use --download-archive for that.


add explore to the homepage

This PR adds the Explore chart to the home page. By default, it will take 1-3 random states and populate the chart with them.

 Add the Explore chart to the Homepage

 [Explore] Move label above chart

 Add CAN Explore Chart to homepage under the States tables. Call it "Cases, Deaths and Hospitalizations". On load, pick 1-2 random states and pre-fill with them.


Weapon Morph

Weapon Morph base is complete, with just a sword. Marked complete as of release v0.1


Adopt ES256K JWT id_token for DID Auth, issued by Issuer and Verifier Web Servers

The issuer website needs to challenge a DID to sign a QR code (more details in future tickets).
In order for the issuer to authenticate the subject, the issuer and subject need to agree on a ciphersuite.
jose based jwt is the most interoperable, I strongly suggest we use it.
We even have https://github.com/decentralized-identity/did-auth-jose
I'd like to see RSA here, since its likely to be equally unpopular with all members, and its also well supported by languages.
I think OIDC SIOP is out of scope for this.
There is some summary here:
https://github.com/WebOfTrustInfo/rwot6-santabarbara/blob/master/final-documents/did-auth.md
I think we need to agree to a simple JWT Challenge Response flow for the purposes of authentication.
This package is also linked on the credential format ticket:
https://www.npmjs.com/package/@panva/jose
To my knowledge it supports all the key types we need, so if we adopt JWT / JWE with this package I think we can close this ticket.

@awoie If you could add an explanation of how OIDC SIOP might be used here, we can maybe consider supporting it, but it seems more complicated than implementing a simple challenge response flow from the Issuer / Verifier Web Servers.
I propose we adopt ES256K JWT id_token (Bearer) as the authentication mechanism for the Issuer and Verifier Web Servers.

@OR13 DID AuthN OIDC SIOP is a simple challenge/response protocol based on JWTs. You could easily encode the SIOP request in a QR Code. The SIOP spec allows different response_mode values, i.e., fragment, form-post, query which determine the way the response will be sent back to the requester. All of them use HTTPS.
The downside is that it has some extra payload for OIDC-compliance such as sub_jwk that contains the public key of the Identity Wallet in addition to the did. SIOP is in the OIDC core spec but is not widely adopted so far, but it uses the same or very similar request/response messages. The reason for that adoption rate is that it was specifically designed for interacting with a mobile app, and there are not so many atm. After speaking to OIDC implementers, they mentioned that they would support SIOP if there is more traction. With this, we could potentially interoperate with traditional OIDC RPs.

@awoie Seems like we may be able to create the first implementation of this for the interop project use case.
The issuer server creates the challenge JWT and renders it.
The subject uses (app / script) to sign the challenge with a key linked to their DID, and produces a response JWT.
The subject submits this response to the issuer server.
The issuer server constructs an id_token and returns it to the subject.
The subject is authenticated.
I think such a flow is achievable, and it is possible for it to be spec compliant.
If there is no off the shelf javascript implementation of this, I still think it can be supported as the auth flow for interop project, but subject wallets might not implement it in time for demoing.
Having a script fallback should solve that problem.
At the end of the flow is an id_token signed by the issuer server, with keys available via /.well-known/openid-configuration?
The confusing part for me is that the iss and sub are both DIDs, and the wallet stuff seems orthogonal. The JWTs need to be signed, nobody should care how, the openid:// bit is just so that the messages can be delivered.
Can you provide JWT examples like you did for the credential format?

RSA won't support repudiable authentication using the methods already described in the JOSE spec. The way it works is to encrypt the encryption key using RSA-OAEP. Since RSA-OAEP doesn't have any ties to the sender's public key, we can't verify the sender in a repudiable way.
If we supported RSA DHKE, then we could handle this, but as far as I can tell this is not a registered alg on JOSE IANA registry.
We can take the ECDH-SS method from the COSE IANA registry and handle this with any ECC key types. With that in mind, we could use RS256 (Secp256r1) or ed25519 which are registered in the JOSE IANA registry and add the RS256K (Secp256k1) to the registry.
It's worth noting that as of right now the JOSE IANA registry will require additions no matter which method we take if we want to handle repudiable authentication, which I believe we should make a requirement.

For the non-repudiable part one could potentially use RS256 for JWT/JWS. This is what we discussed in the course of the SIOP profile. But I agree, for repudiable authentication in JWT/JWE (envelope), i.e., pack/unpack, we should stick with what we have discussed so far, i.e., X25519 and XChacha20. Currently, we got confirmation that XSalsa20 cannot be used with AEAD which is a requirement for JWEs.

@OR13 Because SIOP DID AuthN still needs external reviews, we could propose a minimal version of the SIOP DID AuthN profile for the interop project: https://github.com/decentralized-identity/authentication-wg/issues/1

@awoie I'm gonna close this, as we have adopted OIDC SIOP and now need to consider what an implementation will cost: https://github.com/decentralized-identity/interop-project/issues/14


Implemented Braze SDK

Description
LEARNER-8322

Implemented Braze sdk
Added runtime configuration for braze

Config PR
https://github.com/edx/edx-mobile-config/pull/116

Travis-ci builds also getting field.

@omerhabib26 there are 12 errors in total most of them are observe(this,...), we just need to identify and replace them with observe(viewLifecycleOwner,...).
After that, please make a test run on that particular screens.


Server continued to download even though it was marked to stop

This was an interesting one I haven't seen yet...
I was working on a custom CS:GO image. As it was downloading the game files, I exceeded the server disk space. The console reported this from the daemon which said it was violating and that the server would be stopped, but it kept going:
 Update state (0x61) downloading, progress: 72.66<PHONE_NUMBER>7 /<PHONE_NUMBER>4)
 Update state (0x61) downloading, progress: 73.58<PHONE_NUMBER>6 /<PHONE_NUMBER>4)
 Update state (0x61) downloading, progress: 74.28<PHONE_NUMBER>3 /<PHONE_NUMBER>4)
 Update state (0x61) downloading, progress: 75.01<PHONE_NUMBER>8 /<PHONE_NUMBER>4)
(Daemon) Server is violating disk space limits. Stopping process.
(Daemon) Server marked as STOPPING
quit
 Update state (0x61) downloading, progress: 75.76<PHONE_NUMBER>9 /<PHONE_NUMBER>4)
 Update state (0x61) downloading, progress: 76.50<PHONE_NUMBER>0 /<PHONE_NUMBER>4)
 Update state (0x61) downloading, progress: 77.32<PHONE_NUMBER>4 /<PHONE_NUMBER>4)

Eventually it completed and then the server turned off. I did confirm that it violated the disk space limitation of 10240 MB, as it was about 15000.

 I can look into changing that in the future, but this is currently working as intended.


Corrects path to appinfo

Small fix in config.

oh crap, thanks!

Slow down, cowboy! :laughing:

lmao


opensource mcli

let's have a look if there is anything confidential inside, if not let's opensource it with our regular process and licensing, etc.

I checked the official process for open sourcing but it's a bit vague here. Waiting for input to confirm it's okay.

https://gigantic.slack.com/archives/C02FL4EAADD/p1719865576143799?thread_ts=1719825256.422719&cid=C02FL4EAADD


Delayed tau models

Add three delayed tau models

Since these changes are basically new additions, I am merging this into main


[Nitpick] MinGainSeconds set too high

not sure if "bug" or "unexpected behavior" since it had to be set like this on purpose
Give an example of what is wrong
The MinGainSeconds for oni/survival mode seems to be set too high (15s) and isn't being set to what is in the .crs file (see below).
Example seen in video below (left side, Project OutFox, using fixed and recreated ITG3Encore theme in functional oni/survival mode for increased visibility)
Given an example of what it should look like
The GainSeconds should not only be applied but also being displayed like how the .crs file states it should be.
It is being displayed correctly the first time (2s), but not the second (should be -5s, got 2s instead, seemed to be ignored because of it being a negative value) while both are being ignored by the MinGainSeconds (15s).
Example seen in video below (right side, OpenITG, using ITG3Encore theme in oni/survival mode)
Video: http://y2u.be/tPDrRIOXStk
Course used in video ("official" ITG3 course file):

#COURSE:ZiGZaG
#METER:REGULAR:13;
#METER:DIFFICULT:*;
#GAINSECONDS:2;
#SONG:In The Groove/VerTex:Challenge:Overhead, 1.5x, nodifficult;
#GAINSECONDS:-5;
#SONG:In The Groove 2/Energizer:Challenge:Overhead, 1.5x, nodifficult;
#GAINSECONDS:-5;
#SONG:In The Groove/Pandemonium:Challenge:Overhead, 1.5x, nodifficult;
#GAINSECONDS:20;
#SONG:In The Groove 2/VerTex^2:Challenge:Overhead, 1.5x, nodifficult;
#GAINSECONDS:20;
#SONG:In The Groove 3/VerTex^3:Challenge:Overhead, 1.5x, nodifficult;

Possible Workaround
Have the MinGainSeconds set to 15s only if there isn't anything set for it in said .crs file.

Upon further investigation I found out that inside the metrics of "LifeMeterTime" such a value indeed has been set and can be configured from there.
I haven't seen it as it has only been set within _fallback and WAIEI2
My apologies for this unneeded issue, it was late at night at the time of "issueing" all of this.

Actually, I'll reopen this one as there is still an issue I think has been hard coded.
It's true that there is a metric that sets this: "MinLifeTime".
The only problem: Negative values are being ignored and the last valid one is being used instead.
So: Getting seconds subtracted is currently impossible (and I've already set the "MinLifeTime" value to -999 just in case.
So here is the updated issue:
Give an example of what is wrong
Negative GainSeconds aren't being applied and only the latest possible value is being used instead.
Example seen in video below (left side, Project OutFox, using fixed and recreated ITG3Encore theme in functional oni/survival mode for increased visibility)
Given an example of what it should look like
The GainSeconds are being applied from the .crs file itself, so it should be taken at face value.
If the course isn't playable in that state, it's not OutFox's fault but that of the Scripter.
Example seen in video below (right side, OpenITG, using ITG3Encore theme in oni/survival mode)
Video: http://y2u.be/tPDrRIOXStk

Yes, negative GainSeconds are not applied as it has a harcoded check for seeing if the current time to set is lower than MinLifeTime, such thing is not present on OpenITG's code.
if( MIN_LIFE_TIME > fGainSeconds )
	fGainSeconds = MIN_LIFE_TIME;

Otherwise, it'll default to just applying the time back to whatever it has on MinLifetime.
(So if you have MinLifeTime to 2, and then do -3, then it will reset back to 2)


Remove const_transmute feature dependency

const_transmute seems to have been stabilized on current nightly, see https://github.com/rust-lang/rust/pull/72920. This caused an unrecognized feature flag error when compiling against nightly.

The feature flag will still be needed when using offset_of! in a const fn, though. That should be documented at least.

Ah, I hadn't noticed yet that the flag essentially got replaced with const_fn_transmute. I added a test case for offset_of! inside a const fn that seemed to indicate the const_fn feature flag is also requirement. I've added a line to the readme.

This is great, thanks. :)
Can you run rustfmt on it so that CI passes?

Ah, sorry, silly oversight.


Local Plan problem

Hi,
Thank your for the update of the algorithm. But I find a new problem in the latest version of the Kinetic. When the planner sometimes replan the local plan, the plan changes into a mass and robot stuck in the place and doesn't move anymore (see the following picture.The red line is the teb_local_plan, and the green line is global plan of the move_base)
Please help me how to solve this problem?
Thank you very much.

I have seen this same issue. It starts to happen after reducing the min_obstacle_dist=0.1 and inflation_dist=0.2 The local path will produce the effect that you are showing frequently and typically will not make progress as it approaches an obstacle.

@boilerbots so the only way to slove this problem is to increse the min_obstacle_dist or chage the inflation_dist parameters?

I don't have a good solution yet, sorry. I am just commenting to let the maintainer know that there are issues.

thanks for confirming @boilerbots. I will start investigating this in 1-2 weeks.

sorry, due to some more workload I had to further postpone working on the planner. Starting from next week, I will definitely have some spare time to investigate current issues.

Hello, I am currently experiencing this problem. How do you solve it? Can you talk about the solution? thank you very much!

Have this problem be solved ?


[SPARK-34922][SQL] Use a relative cost comparison function in the CBO

What changes were proposed in this pull request?

Changed the cost comparison function of the CBO to use the ratios of row counts and sizes in bytes.
Why are the changes needed?

In #30965 we changed to CBO cost comparison function so it would be "symetric": A.betterThan(B) now implies, that !B.betterThan(A).
With that we caused a performance regressions in some queries - TPCDS q19 for example.
The original cost comparison function used the ratios relativeRows = A.rowCount / B.rowCount and relativeSize = A.size / B.size. The changed function compared "absolute" cost values costA = w*A.rowCount + (1-w)*A.size and costB = w*B.rowCount + (1-w)*B.size.
Given the input from @wzhfy we decided to go back to the relative values, because otherwise one (size) may overwhelm the other (rowCount). But this time we avoid adding up the ratios.
Originally A.betterThan(B) => w*relativeRows + (1-w)*relativeSize < 1 was used. Besides being "non-symteric", this also can exhibit one overwhelming other.
For w=0.5 If A size (bytes) is at least 2x larger than B, then no matter how many times more rows does the B plan have, B will allways be considered to be better - 0.5*2 + 0.5*0.00000000000001 > 1.
When working with ratios, then it would be better to multiply them.
The proposed cost comparison function is: A.betterThan(B) => relativeRows^w  * relativeSize^(1-w) < 1.
Does this PR introduce any user-facing change?

Comparison of the changed TPCDS v1.4 query execution times at sf=10:
| absolute | multiplicative |   | additive |
-- | -- | -- | -- | -- | --
q12 | 145 | 137 | -5.52% | 141 | -2.76%
q13 | 264 | 271 | 2.65% | 271 | 2.65%
q17 | 4521 | 4243 | -6.15% | 4348 | -3.83%
q18 | 758 | 466 | -38.52% | 480 | -36.68%
q19 | 38503 | 2167 | -94.37% | 2176 | -94.35%
q20 | 119 | 120 | 0.84% | 126 | 5.88%
q24a | 16429 | 16838 | 2.49% | 17103 | 4.10%
q24b | 16592 | 16999 | 2.45% | 17268 | 4.07%
q25 | 3558 | 3556 | -0.06% | 3675 | 3.29%
q33 | 362 | 361 | -0.28% | 380 | 4.97%
q52 | 1020 | 1032 | 1.18% | 1052 | 3.14%
q55 | 927 | 938 | 1.19% | 961 | 3.67%
q72 | 24169 | 13377 | -44.65% | 24306 | 0.57%
q81 | 1285 | 1185 | -7.78% | 1168 | -9.11%
q91 | 324 | 336 | 3.70% | 337 | 4.01%
q98 | 126 | 129 | 2.38% | 131 | 3.97%
All times are in ms, the change is compared to the situation in the master branch (absolute).
The proposed cost function (multiplicative) significantlly improves the performance on q18, q19 and q72. The original cost function (additive) has similar improvements at q18 and q19. All other chagnes are within the error bars and I would ignore them - perhaps q81 has also improved.
How was this patch tested?

PlanStabilitySuite

@wzhfy @maropu @HyukjinKwon and @cloud-fan

Test build #136768 has started for PR 32014 at commit 811c1c9.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41351/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41351/

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

Test build #136768 has finished for PR 32014 at commit 811c1c9.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

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

Test build #136780 has finished for PR 32014 at commit 6c39602.

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

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

The change LGTM. Can we re-generate the golden files to fix conflicts?

Test build #136799 has started for PR 32014 at commit 41b46a8.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41381/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41381/

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

Test build #136799 has finished for PR 32014 at commit 41b46a8.

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

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

cc: @wzhfy

Test build #136851 has started for PR 32014 at commit dc87250.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41429/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41429/

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

Test build #136851 has finished for PR 32014 at commit dc87250.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class SubtractTimestamps(
public class OrcArrayColumnVector extends OrcColumnVector
public class OrcAtomicColumnVector extends OrcColumnVector
public abstract class OrcColumnVector extends org.apache.spark.sql.vectorized.ColumnVector
class OrcColumnVectorUtils
public class OrcMapColumnVector extends OrcColumnVector
public class OrcStructColumnVector extends OrcColumnVector

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

Test build #136954 has started for PR 32014 at commit a7406e7.

Unfortunately there are conflicts again...

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41530/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41530/

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

Test build #136958 has started for PR 32014 at commit cdf7f08.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/41535/

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

Test build #136954 has finished for PR 32014 at commit a7406e7.

This patch passes all tests.
This patch does not merge cleanly.
This patch adds no public classes.

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

Test build #136958 has finished for PR 32014 at commit cdf7f08.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class KoalasFrameMethods(object):
class KoalasSeriesMethods(object):
class IndexOpsMixin(object, metaclass=ABCMeta):
class CategoricalAccessor(object):
    however, expected types are [(<class 'float'>, <class 'int'>)].
class OptionError(AttributeError, KeyError):
class DatetimeMethods(object):
class DataError(Exception):
class SparkPandasIndexingError(Exception):
class SparkPandasNotImplementedError(NotImplementedError):
class PandasNotImplementedError(NotImplementedError):
           new_class = type(\"NameType\", (NameTypeHolder,),
           new_class = type(\"NameType\", (NameTypeHolder,),
class DataFrame(Frame, Generic[T]):
       [defaultdict(<class 'list'>,
defaultdict(<class 'list'>,
class CachedDataFrame(DataFrame):
class Frame(object, metaclass=ABCMeta):
class GroupBy(object, metaclass=ABCMeta):
class DataFrameGroupBy(GroupBy):
class SeriesGroupBy(GroupBy):
class Index(IndexOpsMixin):
class CategoricalIndex(Index):
class DatetimeIndex(Index):
class MultiIndex(Index):
            a single :class:Index (or subclass thereof).
class NumericIndex(Index):
class IntegerIndex(NumericIndex):
class Int64Index(IntegerIndex):
class Float64Index(NumericIndex):
class IndexerLike(object):
class AtIndexer(IndexerLike):
class iAtIndexer(IndexerLike):
class LocIndexerLike(IndexerLike, metaclass=ABCMeta):
class LocIndexer(LocIndexerLike):
class iLocIndexer(LocIndexerLike):
class InternalFrame(object):
class _MissingPandasLikeDataFrame(object):
class MissingPandasLikeDataFrameGroupBy(object):
class MissingPandasLikeSeriesGroupBy(object):
class MissingPandasLikeIndex(object):
class MissingPandasLikeDatetimeIndex(MissingPandasLikeIndex):
class MissingPandasLikeCategoricalIndex(MissingPandasLikeIndex):
class MissingPandasLikeMultiIndex(object):
class MissingPandasLikeSeries(object):
class MissingPandasLikeExpanding(object):
class MissingPandasLikeRolling(object):
class MissingPandasLikeExpandingGroupby(object):
class MissingPandasLikeRollingGroupby(object):
class PythonModelWrapper(object):
class KoalasPlotAccessor(PandasObject):
class KoalasBarPlot(PandasBarPlot, TopNPlotBase):
class KoalasBoxPlot(PandasBoxPlot, BoxPlotBase):
class KoalasHistPlot(PandasHistPlot, HistogramPlotBase):
class KoalasPiePlot(PandasPiePlot, TopNPlotBase):
class KoalasAreaPlot(PandasAreaPlot, SampledPlotBase):
class KoalasLinePlot(PandasLinePlot, SampledPlotBase):
class KoalasBarhPlot(PandasBarhPlot, TopNPlotBase):
class KoalasScatterPlot(PandasScatterPlot, TopNPlotBase):
class KoalasKdePlot(PandasKdePlot, KdePlotBase):
       new_class = type(\"NameType\", (NameTypeHolder,),
        new_class = param.type if isinstance(param, np.dtype) else param
class Series(Frame, IndexOpsMixin, Generic[T]):
        dictionary is a ``dict`` subclass that defines ``__missing__`` (i.e.
       defaultdict(<class 'list'>,
class SparkIndexOpsMethods(object, metaclass=ABCMeta):
class SparkSeriesMethods(SparkIndexOpsMethods):
class SparkIndexMethods(SparkIndexOpsMethods):
class SparkFrameMethods(object):
class CachedSparkFrameMethods(SparkFrameMethods):
class SQLProcessor(object):
class StringMethods(object):
class SeriesType(Generic[T]):
class DataFrameType(object):
class ScalarType(object):
class UnknownType(object):
class NameTypeHolder(object):
    The returned type class indicates both dtypes (a pandas only dtype object
class KoalasUsageLogger(object):
class RollingAndExpanding(object):
class Rolling(RollingAndExpanding):
class RollingGroupby(Rolling):
class Expanding(RollingAndExpanding):
class ExpandingGroupby(Expanding):

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

The GA test failures is not related to this PR, so merged to master.

Could you open PRs to backport this for branch-3.1/3.0, too?


Extracting metadata from PDF

I’m not sure if I’ve come to the right spot for my question. Hopefully you can help me or direct me to someone who can help me
I’m currently using pdfbox-android with android studio
compile ‘org.apache: pdfbox-android:<IP_ADDRESS>’
My questions are
A) any metadata I try and get from a PDF is returning null ie getDocumentInformation.getTitle()
I know the document is being read as getNumberOfPages() returns the correct amount of pages.
Is this an known issue with V <IP_ADDRESS>
I also know that the document has metadata as I can see it in the properties when I view it through adobe
B) is there a later android version I can reference? i.e compile ‘org.apache: pdfbox-android:<IP_ADDRESS>’
Thanks for your time

It seems to work properly for the PDFs I've tested it on. If you're still experiencing this issue, would it be possible to share a PDF that isn't working properly?


Loading error... HELP

I did everything that was instructed in the installation but I still got this message... Help T T

Please send your debug logs (clear debug logs from main menu, try to load the game again then save debug logs from menu)

Please send your debug logs (clear debug logs from main menu, try to load the game again then save debug logs from menu)

Apologies for the delay. I found the log file but I still can't figure out what's wrong T v T
omori.log

Hm, maybe your installation is missing the 'maps' directory. Show the contents of your 'www' folder

I can't really tell... is there something missing?

It's not missing, then maybe your omori installation is decrypted, that can cause problems like this. You can check it by file extensions (e.g. files in 'data': '.json' = decrypted, '.KEL' = encrypted)

~Hm, maybe your installation is missing the 'maps' directory. Show the contents of your 'www' folder~. Or your omori installation is decrypted, that can cause problems like this.

Oh I see, is there something I can do to make it work? T T

Oh I see, is there something I can do to make it work? T T

You can copy original files of omori from Steam, or try to install and enable OneLoader (but I'm not sure if it will help)

You can copy original files of omori from Steam, or try to install and enable OneLoader (but I'm not sure if it will help)
Hey! I tried it out with OneLoader enabled like what you said but this message popped up (1st img), I pressed ok then it loaded for a while and it just frozed at 100% (2nd img) it says 25 seconds but i've been waiting longer than that... pls help T T...

Hm, then I guess you need to use original omori files that's not decrypted

Hm, then I guess you need to use original omori files that's not decrypted

Oh, I see T v T... Well then, thanks for helping me out this far. Now I know what I'll do next time


Fix bug with cache unsubscribe

Small bug on my part. Should be owner_soid.

Also fix cache subscriptions with no owner_soid

Merged and published to npm with v0.7.1


Add Nepali (ne) localization

This pull request includes a

[ ] Bug fix
[ ] New feature
[x] Translation

The following changes were made
~- Added Nepali (np) localization support~

Added Nepali (ne) localization support

This Pull Request fixes the https://github.com/select2/select2/issues/5294 issue.

Hi @samundra,
Thanks for submitting a translation to Select2! I've reached out to some contacts who are familiar with Nepali to see if they can verify the translations here.
Before we can accept this translation though, we noticed that the incorrect ISO 639 language code appears to be used. The language code for the Nepali language appears to be ne, but these translations were submitted under np (which appears to be unassigned). In order for browsers to automatically pick up the language, and for many systems to indicate the right language, we use the ISO 639 language code to name our translations.
If you can rename the file to ne.js, this will help speed up the process for accepting this pull request. Thank you!

Hi @kevin-brown
I have renamed the file name. Please, let me know if there is anything I need to address.
Regards,
Samundra


model.py file should be replaced by a section in the hyperparameters file.

We are currently using the file model.py inside the model as a configuration file. It would be better if we handled that inside our hyperparameter json file. This way we would have two kinds of components: models and training components. Models are PyTorch models and training components are Lightning. Training components take as hyperparameter which models to use. Having this distinction will allow for better exploration of hyperparameters but also will allow us to install these. Train and models components should be installed differently.

We could have something like this:
{
     ...
     "train": "Regression" or "MyRegrssion" // Regression can be a base mate class that expects "generator"
     "model":{
     "classifier":"ResNet",
     "generator": "ResNetAutoEncoder"
     }
}

Yes, that looks good.
Also, (but I need to thing better about this) the cool thing about doing that is that mate could handle turning "ResNet" into .components.resnet.Resnet for example. So we could make sure there are no dependencies outside that model folder.

Yes! This way we could handle Type class imports.
For selecting the lightning class, we need to know two things, the file name and the class name. We could as a convention use the class name of Model, or specify in the json file the class name. I think the first option is better, we should try to keep the hyperparameters as small as possible.

First version works with parameters such as the following, the "model" is a python file that should have a Model class.
    "train": "model",
    "model": {
        "classifier": {
            "module": "modules.conv2d.resnet",
            "model": "ResNetClassifier"
        }
    },

After running this for the first time, parameters of the model will get populated:
    "model": {
        "classifier": {
            "module": "modules.conv2d.resnet",
            "model": "ResNetClassifier",
            "params": {
                "in_features": 165,
                "h_embedding": 1,
                "num_blocks": [
                    4,
                    4,
                    4,
                    4
                ],
                "c_hidden": [
                    64,
                    128,
                    256,
                    512
                ],
                "in_channel": 13,
                "num_classes": 1
            }
        }
    },

Todos:

[ ] Handling of parameters that do not have default values
[ ] Update add dependency functionality to work with this design

For the first todo, we can't do much except generate parameters in the json, and ask the user to correct the parameters.


DiemValidatorInterface: DebuggerStateView::version usage clean up

Motivation
It's weird and confusing that DebuggerStateView queries at self.version - 1.
Made self.version an Option.
On the callsites (mainly the transaction replay tool):

annotate_x_at_version annotates the result state of the version
execute_x_at_version and run_x_at_version runs things based on the previous version state.
create_release_from_artifact runs on top of artifact.version state

Have you read the Contributing Guidelines on pull requests?
Y
Test Plan
existing coverage

This seems reasonable to me.  Thoughts @runtian-zhou ?

/land


Object prototype undefinded

No matter what I do, including the exact few lines of TypeScript example for User, I get the following error when the program runs, either through ts-node or compile JS code:
> [eval]:7
        return extendStatics(d, b);
               ^
TypeError: Object prototype may only be an Object or null: undefined
    at setPrototypeOf (<anonymous>)

TS 3.5.2
node 8.9.3 & 11.12.0

@1jerry, thanks for reporting. Can I ask you to provide more code in order to reproduce the issue? Thanks.

@1jerry, can I ask you about your environment? What do you do in order to see such issue?

I type this in:
import Record from 'dataclass'

class User extends Record<User> {
    name: string = 'anon';
    age: number = 0;

I then type tsc on this script.  That's it.
TS 3.5.2, node 11.12.0 (plus others), Macbook Pro
(I do have a lot of other libraries loaded in package.json, but obviously don't include any in this script.  I can try on a clean environment next week)

I tried several things but I didn't discover a clue as to why this error is
happening.
Jerry
On Mon, Aug 26, 2019 at 10:51 AM Alexey Raspopov notifications-at-github.com
|git-73ry|<EMAIL_ADDRESS>wrote:

@1jerry https://github.com/1jerry, can there be something wrong with
typings
https://github.com/alexeyraspopov/dataclass/blob/master/typings/dataclass.d.ts#L4?
I'm not a TS user.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/alexeyraspopov/dataclass/issues/10?email_source=notifications&email_token=AAAXRPCVOK6MPM6POQF7DGTQGQJZPA5CNFSM4IN532K2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5FD4OY#issuecomment-524959291,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAXRPDGHIK2VUFC4DXYR6TQGQJZPANCNFSM4IN532KQ
.

I don't know if the original issue has been resolved or there were any idea where it is coming from. I've just published the next major release<EMAIL_ADDRESS>which now uses named imports instead of the default import. This should definitely help with the described issue, basically avoiding it.
// Note that Record is now called Data
// Named export should help with possible CJS/ESM compatibility issues in any environment
import { Data } from "dataclass";

class Entity extends Data {
  counter: number = 0;
}

I hope you'll have a chance to check it out. Please let me know if you face any issues.


functions: application updates no longer accept name in the body

AppUpdate was initially conceived as an upsert endpoint for apps.
It turns out that it created an inconsistency regarding updates:
updates with names divergent with URL would not actually change
application's name.
This commit atempts to address the issue by returning an HTTP
error when trying to update an application name. In swagger.yml,
application names are already readOnly:true. Thus there is no
change from expected behavior.
Fixes #380

@pedronasser @treeder @seiflotfy

LGTM +1


When the bot starts, the first command will result in 3 replies.

I have no idea what causes this, but it's well-known...
Sample transcript:

shaptic [19:26]
@man testing man socket

Man Bot APP [19:27]
socket: http://man7.org/linux/man-pages/man7/socket.7.html
socket: http://man7.org/linux/man-pages/man7/socket.7.html
socket: http://man7.org/linux/man-pages/man7/socket.7.html

The container never dies now, :sunglasses: so who cares? #wontfix


tuner keeps crashing due to "too frequent intermediate result"

Describe the issue:
When I was using nni to tune my model, this error occur after the experiment started for a period of time:
Dispatcher stream error, tuner may have crashed.
At first, I thought my “trail concurrency” was too high, so I set it to 2 instead of 4. That didn’t work.
Then, I found the “reduce the frequency of intermediate results” log, so I tried pytorch(I used tensorflow at first), and I set the freq of reporting intermediate result from report after every 1 epoch to every 5 epoch. That didn’t work either.
Other than that,  after changing from tensorflow to pytorch, I noticed that the time it takes for tuner to crash significantly changed: in tensorflow, it crashes in about 2 hours after the experiment start; in pytorch,  it crashes in just 20min. I’m not sure what it means and what causes it, but maybe it’s related to training speed——in pytorch, every trail costs about 30s, but in tensorflow the time is 5min(same 500 epochs, maybe due to different batch-size).
And finally, I need to note that my PC is surface Pro7 i5 version, which has no positive heat dissipation system. So this might be a hardware problem too.
Thank you and looking forward to a solution!
Environment:

NNI version: 2.8
Training service: local
Client OS: win10
Python version: 3.9.12
PyTorch/TensorFlow version: 1.12.0 for pytorch; 2.9.1 for tensorflow
Is conda/virtualenv/venv used?: conda
Is running in Docker?: no

Configuration:

Experiment config :
trial_command: python model.py

trial_concurrency: 2
max_experiment_duration: 10h

tuner:
  name: Evolution
  class_args:
    optimize_mode: minimize
    population_size: 50

assessor:
  name: Medianstop
  class_args:
    optimize_mode: minimize
    start_step: 50

training_service:
  platform: local

Log message:

nnimanager.log:

    at WebSocket.<anonymous> (C:\anaconda3\lib\site-packages\nni_node\core\tuner_command_channel\websocket_channel.js:41:49)
    at WebSocket.emit (node:events:538:35)
    at WebSocket.emitClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:246:10)
    at Socket.socketOnClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:1127:15)
    at Socket.emit (node:events:526:28)
    at TCP.<anonymous> (node:net:687:12)
[2022-07-23 22:03:54] ERROR (NNIManager) Dispatcher error: tuner_command_channel: Tuner closed connection
[2022-07-23 22:03:54] ERROR (NNIManager) Error: Dispatcher stream error, tuner may have crashed.
    at EventEmitter.<anonymous> (C:\anaconda3\lib\site-packages\nni_node\core\nnimanager.js:647:32)
    at EventEmitter.emit (node:events:526:28)
    at WebSocketChannelImpl.handleError (C:\anaconda3\lib\site-packages\nni_node\core\tuner_command_channel\websocket_channel.js:107:22)
    at WebSocket.<anonymous> (C:\anaconda3\lib\site-packages\nni_node\core\tuner_command_channel\websocket_channel.js:41:37)
    at WebSocket.emit (node:events:538:35)
    at WebSocket.emitClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:246:10)
    at Socket.socketOnClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:1127:15)
    at Socket.emit (node:events:526:28)
    at TCP.<anonymous> (node:net:687:12)
[2022-07-23 22:03:54] INFO (NNIManager) Change NNIManager status from: RUNNING to: ERROR
[2022-07-23 22:03:57] WARNING (tuner_command_channel.WebSocketChannel) Sending too fast! Try to reduce the frequency of intermediate results.
(followed by many same lines like this)

dispatcher.log:

[2022-07-23 22:03:45] INFO (nni.algorithms.hpo.evolution_tuner/Thread-2) trial (44) end
[2022-07-23 22:03:45] ERROR (nni.runtime.msg_dispatcher_base/Thread-2) 44
Traceback (most recent call last):
  File "C:\anaconda3\lib\site-packages\nni\runtime\msg_dispatcher_base.py", line 97, in command_queue_worker
    self.process_command(command, data)
  File "C:\anaconda3\lib\site-packages\nni\runtime\msg_dispatcher_base.py", line 143, in process_command
    command_handlers[command](data)
  File "C:\anaconda3\lib\site-packages\nni\runtime\msg_dispatcher.py", line 170, in handle_trial_end
    self.tuner.trial_end(load(data['hyper_params'])['parameter_id'], data['event'] == 'SUCCEEDED')
  File "C:\anaconda3\lib\site-packages\nni\algorithms\hpo\evolution_tuner.py", line 137, in trial_end
    self.running_trials.pop(parameter_id)
KeyError: 44
[2022-07-23 22:03:53] INFO (nni.runtime.msg_dispatcher_base/MainThread) Dispatcher exiting...
[2022-07-23 22:03:54] INFO (nni.runtime.msg_dispatcher_base/MainThread) Dispatcher terminiated

I run the same code on my desktop PC again, this time the experiment run for 670 trials and nearly 4 hours before the same error occur.
However, this time I get different dispather log and nnimanager log:
dispather log:
[2022-07-24 04:06:52] ERROR (nni.runtime.msg_dispatcher_base/Thread-2) 684
Traceback (most recent call last):
  File "C:\anaconda3\lib\site-packages\nni\runtime\msg_dispatcher_base.py", line 97, in command_queue_worker
    self.process_command(command, data)
  File "C:\anaconda3\lib\site-packages\nni\runtime\msg_dispatcher_base.py", line 143, in process_command
    command_handlers[command](data)
  File "C:\anaconda3\lib\site-packages\nni\runtime\msg_dispatcher.py", line 170, in handle_trial_end
    self.tuner.trial_end(load(data['hyper_params'])['parameter_id'], data['event'] == 'SUCCEEDED')
  File "C:\anaconda3\lib\site-packages\nni\algorithms\hpo\evolution_tuner.py", line 137, in trial_end
    self.running_trials.pop(parameter_id)
KeyError: 684
[2022-07-24 04:06:52] INFO (nni.runtime.msg_dispatcher_base/MainThread) Dispatcher exiting...
[2022-07-24 04:06:52] INFO (nni.runtime.msg_dispatcher_base/MainThread) Dispatcher terminiated

nimanager log:
[2022-07-24 04:06:53] ERROR (tuner_command_channel.WebSocketChannel) Error: Error: tuner_command_channel: Tuner closed connection
    at WebSocket.<anonymous> (C:\anaconda3\lib\site-packages\nni_node\core\tuner_command_channel\websocket_channel.js:41:49)
    at WebSocket.emit (node:events:538:35)
    at WebSocket.emitClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:246:10)
    at Socket.socketOnClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:1127:15)
    at Socket.emit (node:events:526:28)
    at TCP.<anonymous> (node:net:687:12)
[2022-07-24 04:06:53] ERROR (NNIManager) Dispatcher error: tuner_command_channel: Tuner closed connection
[2022-07-24 04:06:53] ERROR (NNIManager) Error: Dispatcher stream error, tuner may have crashed.
    at EventEmitter.<anonymous> (C:\anaconda3\lib\site-packages\nni_node\core\nnimanager.js:647:32)
    at EventEmitter.emit (node:events:526:28)
    at WebSocketChannelImpl.handleError (C:\anaconda3\lib\site-packages\nni_node\core\tuner_command_channel\websocket_channel.js:107:22)
    at WebSocket.<anonymous> (C:\anaconda3\lib\site-packages\nni_node\core\tuner_command_channel\websocket_channel.js:41:37)
    at WebSocket.emit (node:events:538:35)
    at WebSocket.emitClose (C:\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:246:10)
    at Socket.socketOnClose (C\anaconda3\lib\site-packages\nni_node\node_modules\express-ws\node_modules\ws\lib\websocket.js:1127:15)
    at Socket.emit (node:events:526:28)
    at TCP.<anonymous> (node:net:687:12)
[2022-07-24 04:06:53] INFO (NNIManager) Change NNIManager status from: RUNNING to: ERROR

#5006 I have same problem.

#5006 I have same problem.

I solved the problem by setting the freq of report intermediate result to per 50 epochs. So maybe you need to set that even lower?


fix: handle complex types when generating Avro values

When using the Produce task, we are only able to send objects with a simple structure. The current code does not handle complex types correctly, such as enums, unions, lists, maps, etc.
This commit improves handling of complex Avro types in Kafka by introducing MapToGenericRecordSerializer a better GenericRecord serialization.
Note: Further work may be required to handle fixed values (which only accept byte[]) and unions (currently using the first non-null type, which allow support for optional values but not polymorphism).

I've added a collection of unit tests for all complex types, and for some common combinations.


I23: Create a pilatus detector

To do the xray centre we need to control a pilatus detector
Acceptance Criteria

Simulator? Look into this...
Create a pilatus device we can manually trigger and confirm some data is produced

Estimate (excluding simulator): 2 days


Fixed the content path issue.

Issue #: 15499
Description of changes:
The current VUE_APP_PATH of GCP CD setting cause a null value exception after deploy to firebase. It must be changed to "/" value to avoid exception.
Also, open a ticket to investigate BASE_URL issue. https://github.com/bcgov/entity/issues/15817
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

LGTM. Did you run this locally to verify that a filing (eg, correction) loaded up, and could be saved and resumed, fine?

I tried incorporation filing and seems fine. No sure other filings, do you have account that can let try it?

LGTM. Did you run this locally to verify that a filing (eg, correction) loaded up, and could be saved and resumed, fine?

I tried incorporation filing and seems fine. No sure other filings, do you have account that can let try it?

It should not matter what account you used. If an IA filing worked then the paths obviously work. This is fine.


Apps: Ranked abundance bird's eye table

In feature.mbio, GEMS, abundance app
Note that the bird's eye plot shows far more data points than we have data in our subset. This is because each box in the boxplot is basically duplicating the data. So if we have all points available in the subset, say that's 100 points, then each box in the boxplot will be based on 100 points. That's how we get nBoxes x number data points in the birds eye plot.
What's the best way to handle this? Seems straightforward to either

Have the subset and total reflect nBoxes times the real subset and total
Divide the Data for Axes by nBoxes. (Each box should always have the same number of points because we're imputing zeros).

Route 2. seems better than 1, but it doesn't feel amazing. Any other ideas @d-callan ?

Note this issue is possible related to the variable coverage table issue #1086

handling in plot.data - moving issue there!


Projected batching / dataloader projections

Product
Hot Chocolate
Is your feature request related to a problem?
It's not currently possible (or at least, not clean/easy) to apply projections to a dataloader, which results in more data being loaded than is necessary. This is far from ideal when that data includes large chunks of text that are not required.
The solution you'd like
I would have suggested that the engine executes dataloaders once for every unique (normalized) selection, and combines the results, but Michael mentioned here that this is something that would be implemented outside of dataloaders.
When it comes to dataloaders, I created a wacky PoC that actually appears to work, but I'm not sure if I'd actually use it in production. Please excuse the details (variable names, etc.):

Wacky PoC
[DataLoader]
public static async Task<IReadOnlyDictionary<(long, IResolverContext), Author>>
    GetAuthorByIdAsync(
        IReadOnlyList<(long id, IResolverContext resolverContext)> lookups,
        ApplicationDbContext context,
        CancellationToken cancellationToken)
{
    var bySelection = lookups.GroupBy(lookup => lookup.resolverContext.Selection);

    var result = new Dictionary<(long, IResolverContext), Author>();

    foreach (var grouping in bySelection)
    {
        var contextById = grouping.ToDictionary(
            lookup => lookup.id,
            lookup => lookup.resolverContext);

        // these could be executed concurrently.
        var authorsById = await context.Authors
            .Where(a => contextById.Keys.Contains(a.Id))
            .Project(contextById.Values.First())
            .AsNoTracking()
            .ToDictionaryAsync(a => (a.Id, contextById[a.Id]), cancellationToken);

        result = result.Union(authorsById).ToDictionary(x => x.Key, x => x.Value);
    }

    return result;
}

This will group the loading by selection (the dataloader key is a tuple with the id and resolverContext), so if some lookups require (id, name) and others (id, name, title), then a total of 2 queries will be executed. The alternative would be to merge all selection sets, to find the minimum suitable selection and run a single query, but there are pros and cons to each option.
This issue is not about the specific implementation, but exists to allow other developers to express interest in the general idea of optimizing data loading. Previous issues like #2374 and #3949 have been closed without a solution.

I was thinking about using Hot Chocolate instead of GraphQL.NET but this is a blocking issue for me. I was able to achieve this in GraphQL.NET relatively easy but I'm not sure I can use Hot Chocolate in production without DataLoader+Projection support.
Also, I think I found an easier workaround but I have a couple concerns (inline):
[UseProjection] // CONCERN 1: It doesn't work without this so I'm not sure if Hot Chocolate does double projection in this case.
public async Task<Test> Test(int id, IResolverContext context)
    => await context.BatchDataLoader<int, Test>(async (ids, ct) =>
    {
        var result = data
            .Where(x => ids.Contains(x.Id!))
            .Project(context)
            .ToDictionary(x => x.Id);
        return result;
    }, context.Selection.ToString()).LoadAsync(id); // CONCERN 2: context.Selection.ToString() is very naive and should be replaced with a proper GetDataLoaderKey(context)

Yeah, making the user project manually is just not right. It makes you not able to use the standard system of e.g. filtering either. I think they should just allow the user to return just an IQueryable of results, and have it figure out the grouping later, probably in memory, on its own. It should probably just do the Where(Contains(id)) and the like, and the final remapping automatically.
As for the implementation, the filtering and the projection systems don't change a bit to enable that, I think. The only thing that has to change is how you would retrieve the items at the end. I haven't looked at how DataLoader works, but there might already be something of the sorts to enable that.

Projected group data loaders is important. Additionally, there is a need to support in-memory caching per ID & projection. Currently if the client doesn't request the ID, this will cause additional challenges.

Hi everyone. Using JSON functions in JSON-enabled databases like PG could potentially fetch the whole selection tree in exactly a single roundtrip to the database. I am not sure if LINQ can be translated to such SQL when using EF Core, for example, or it is better to go directly from HC DSL trees to such SQL. What do you think?

No! I really needed this... now I'm pot committed :/

This was scheduled for 14 ... but we had to move it to 14.1

@Mithras can you post and example code of how you did it with GraphQL .NET?
My current design looks like this:
public async Task<Car> GetCarById(
    int id,
    CarByIdDataLoader carById,
    ISelectionContext selections,
    CancellationToken ct)
{
    // the context has the current selection of the current level included. To add more you can use expressions like below.
    selections = selections.With(t => t.AdditionalField);
    return await carById.LoadAsync(id, selections, cancellationToken);
}

In the DataLoader we have for queryable the following extension method available
[DataLoader]
public static async Task<IDictionary<int, Car>> GetCarByIdAsync(
    IReadOnlyList<int> ids,
    CarContext context,
    ISelectionContext selections,
    CancellationToken ct)
    => await context.Cars.Where(=> ids.Contains(t.id)).Project(selections).ToDictionaryAsync(ct);

Additionally we now have DataLoaderContext ... that is useful if you just want to add some more stuff to its execution context ...
public async Task<Car> GetCarById(
    int id,
    CarByIdDataLoader carById,
    CancellationToken ct)
{
    return await carById.Include(t => t.Owner).LoadAsync(id, selections, cancellationToken);
}

This can be useful when you want to prefill a lower level DataLoader ... with 14 DLs are now observable ... so the Owner DataLoader would automatically pick owner and index it and resolve it from cache.
We probably will release this as experimental in 14.0 and will do refinements as we go ... I will annotate it with the ExperimentalAttribute.

Include btw is an extension method that uses the new ContextData on the DataLoader, so you can also have other data flow in... the Include is not guaranteed btw... as there could already be things that were fetched from another resolver that used the same DL but without the include.

This one added the state #7387


Add documentation on verbose

Add some explanations on verbose PR

The verbose option is self-documented with the option --help.


Add support for centos/rhel8

No idea why lint is failing.

I am merging this and fix the Lint process in the subsequent PR
thanks @sbansal7


General update, see description.

Faction stashes were removed a looooong time ago so the rule was removed as well. I think that line was related to faction NPC locations for their guns, but those NPCs are restricted to the faction they're setup for so the rule is no longer needed. Quite outdated. It's good to look at the rules every now and again with fresh eyes :)
Included that door rams cannot be used to break into properties by normal players. This helps fill the gap that happens occasionally where people are using the door ram to break into properties without an admin because technically it doesn't require admin supervision to just click the item and unlock the interior.

Not 100% sure if we need to tell players they can’t use door rams. Seems restrictive, when we already have rules in place preventing people from breaking into properties(by any means) without supervision.
So either way it would be credited as abuse. If a player have a door ram there is nothing preventing them from using it on their own property, so it would be weird for them to require an admin to watch them before they can.

The hole I'm trying to fill in this. In the rules it states it's not technically a break-in if you don't need an admin, obviously if people can just walk into an unlocked house we don't want them to have to make an admin report. The way the door ram functions, it opens any interior, without an admin. So if a player doesn't power game guard NPCs or something like at the PD, they could go to a secluded apartment complex or something with a door ram and just start bashing down every door with a few lines of RP and it's technically not against the rules.
Door rams are seldom acquired through valid roleplay anyway so I think the easy solution (instead of saying all door rams require approval cause you didn't seem to like that restriction) is to just consider door-ram break-ins a type of break-in that requires admin supervision despite not needing an admin script-wise. I worded it so that LEOs could still use the door ram without an admin if needed because if there is no admin on yet a player barricades themselves in a house with a hostage or something, they'd still need to enter. (Other uses for the door ram obviously are search warrants but they rarely do those without an admin anyway cause the admin is needed to access the safe and restricted storage generics.)
Hope that clarifies my thought process here. Regardless if we just make door ram usage require an admin or restrict all door rams together, or come up with another solution, we need to fix this gap in the rules somehow IMO.


Update of datastore calls after repo restructuring #107

ref #107
waiting for https://github.com/ai-cfia/nachet-datastore/pull/76#pullrequestreview-2186259592 to be merge

There's a test not passing?


Release new version without ActiveSupport dependency

I was so confused playing with this locally why it was erroring without active support!  I looked at the code and saw you were checking if it was defined, and it all looked good, and finally I realized that was done in latest commit and not part of the 0.9 release!  Please release the updated version, I might build a gem including this, a Gemfile can point straight at github but another gem can't unless it's published.

The new version 0.1.0 has just been publish. Apologies for the delay.


fix typo error for issue #15

Hi @soniakeys , this is to fix the typo error mentioned in #15

I am afraid @soniakeys died a few years ago.


avoid npm install failed because off github ssh errors

Avoid npm install failure when github ssh keys are not configured :
npm ERR! git clone --template=/Users/imac/.npm/_git-remotes/_templates --mirror<EMAIL_ADDRESS>/Users/imac/.npm/_git-remotes/ssh-git-github-com-twbs-bootstrap-git-04c3a07b: Permission denied (publickey).

@jboulhous Would you mind updating this to alpha2 that was just released? Thanks for the PR!

Hello @patrickheeney , what alpha2 release ? may be i missunderstood something

@jboulhous The original alpha release is now gone and https://github.com/twbs/bootstrap/releases/tag/v4.0.0-alpha.2 is in its place. Basically the url changed.

Hello @patrickheeney
:-) Thank you
i created a new pr.


[bug] NSIS installer fails if installing into protected folder

Describe the bug
The installer never asks for elevated privileges and it results into failed install

Reproduction
Manually change the installation path to a protected folder like Program Files, proceed with installation.
Expected behavior
UAC prompt pops up to require elevated privileges.
Platform and versions
[✘] Environment
    - OS: Windows 10.0.19045 X64
    ✔ WebView2: 114.0.1823.58
    ✘ Couldn't detect any Visual Studio or VS Build Tools instance with MSVC and SDK components. Download from https://aka.ms/vs/17/release/vs_BuildTools.exe
    ✔ rustc: 1.69.0 (84c898d65 2023-04-16)
    ✔ Cargo: 1.69.0 (6e9a83356 2023-04-12)
    ✔ rustup: 1.26.0 (5af9b9484 2023-04-05)
    ✔ Rust toolchain: stable-x86_64-pc-windows-msvc (default)
    - node: 16.14.2
    - pnpm: 8.6.2
    - npm: 8.5.0

[-] Packages
    - tauri [RUST]: 1.4.0
    - tauri-build [RUST]: 1.4.0
    - wry [RUST]: 0.24.3
    - tao [RUST]: 0.16.2
    - @tauri-apps/api [NPM]: 1.4.0
    - @tauri-apps/cli [NPM]: 1.4.0

[-] App
    - build-type: bundle
    - CSP: unset
    - distDir: ../dist
    - devPath: http://localhost:8080/
    - framework: React
    - bundler: Webpack

Stack trace
No response
Additional context
Tauri configs are here https://github.com/openscopeproject/TrguiNG/blob/master/src-tauri/tauri.conf.json
Same issue happens with updates: https://github.com/openscopeproject/TrguiNG/issues/15

There's a setting for that here https://tauri.app/v1/api/config#nsisconfig.installmode (just noticed that we broke the link there, just scroll below the table for the possible values). Setting it to perMachine or both will make it always ask for admin permissions.
"On demand" privileges were deemed too difficult since it requires multiple installer executables (internally) iirc, therefore i'm closing this - will re-open if someone knows of a sane way to implement it :)

I see, thanks. I was hoping that the UAC plugin could be used https://nsis.sourceforge.io/UAC_plug-in but it seems to be deprecated.


mysqlcdc到Clickhouse，修改数据和删除数据时报错

Search before asking

[ ] I had searched in the issues and found no similar question.

[ ] I had googled my question but i didn't get any help.

[ ] I had read the documentation: ChunJun doc but it didn't help me.

Description
Clickhouse does not support delete sql
请问Chunjun是不支持clickhouse的删除和修改吗，脚本是json脚本
Code of Conduct

[X] I agree to follow this project's Code of Conduct

因为clickhouse 对delete 操作的特殊性，暂时没有支持clickhouse的删除操作。

好的，谢谢


Reusable content

Describe the feature
Reusable content (via the Paragraphs Library module in Tide) - such that e.g. an instance of a Basic Text component can be created once & placed on multiple landing pages without having to create duplicate components.
The current functionality for reusable content is limited to campaigns and image galleries. There is arguably a common use case for reusable content components of any type (or at the least, the Basic Text type).
Motivation
The content required for the EPA site includes pages specifying fees and regulations relating to various types of permits. Between the ~50 permit types, much of the fee and other regulatory information is the same. It would be laborious and open to human error to create & maintain this information as individual Basic Text instances - the preferable approach would be to create a reusable paragraph that could be placed on multiple pages. Then, if the shared information needed to be updated, it could be edited in one place, and updated automatically wherever it is used.
This kind of use case is very likely not limited to EPA, but a common one across other projects (new or existing).
Proposal
The paragraphs_library module can be enabled on the backend to provide the required editing UX functionality. Any paragraph type can be configured as 'Reusable', enabling editors to create a library of reusable items of those types which editors can place on any landing page.
Reusable paragraphs can be included in the JSON:API's response for a landing page in the same way as other entity references are currently handled (via the include query parameter). A simple 'from-library' component mapping can be added to take that data and 'pass it through' to the component mapping of the relevant type.
A PR containing the required updates for Ripple will be made and referenced here.
Benefits
Solves the issue outlined in Motivation, and may be required or desired in other client projects (existing or future).
Drawbacks
The Tide UX re: creating/editing/placing a reusable paragraph would need to be reviewed to ensure that it is intuitive and presents no hindrance to the current editing experience.
Adoption strategy
Could be added to the Confluence documentation for Tide. Not sure if it needs any dev docs in Ripple except for test/s?
Additional information

[X] Would you be willing to help implement this feature?
[ ] Could this feature be created outside of Ripple-framework as a layer?

Final checks

[X] I have read the contribution guide for information on submitting a feature request.
[X] I have checked the discussions and issues for duplicate feature requests.

Hey @bgilhome-now - thanks for adding this and taking the time to write it up. Do you have a corresponding Tide PR that implements this so I can review how this works?

Thanks @dylankelly , I made the above PR in the content.vic.gov.au repo, I'll make one for Tide now.

Is there a Tide repo which tracks config or shall I add update hooks to the repo for the tide_landing_page module?


First draft on how to customize email-settings.

Comments

Not tested SECURITY_EMAIL_SUBJECT_REGISTER
but found here https://github.com/tu-graz-library/invenio-config-tugraz/blob/master/invenio_config_tugraz/config.py#L89-L90

Documentation copied and inspired by https://github.com/tu-graz-library/invenio-config-tugraz

Related to https://discord.com/channels/692989811736182844/704625518552547329/910211265429909504

I put it in customize, because I would have searched/expected it there.
I wonder whether reference/configuration could be merged with customize.

Happy to get more inspirations, fixes, ...

Merged as-is with two minor fixes, to get the doc going. We can add further updates in separate PRs for the more advanced cases.


How to get an auth token.

Hi guys.
I love this implementation. What i'm working on requires an auth token and I need to confirm  there is a functionality that achieve this, because i've tried it, and i am not getting back any auth token response.

Check examples

ok. will check it.


Resource access control docs

Notes for Reviewers
This PR fixes #
Resource Access
Using control access to manage resource permissions and visibility.
Overview
In Meshery, a resource represents the entities you create and manage within the platform. For example, designs, filters, views, environment and workspaces. You can share these resource with your team members or members within your organization. It's important to note Meshery currently only support sharing resources like designs, filters and views, resource access control for environment and workspaces is upcoming feature.
This page describes about resource access permissions specifically for designs and views and how you can manage permissions within Meshmap.
Granting access for Individual Users
As a design or view owner, you have granular control over access permissions for your designs.
Following steps shows how you can grant access to individual users:

Open your design in MeshMap.
Click the "Share" button located on top right corner.
Enter the name or email addresses of the users you want to share the design with.
Define the permission level for each user (e.g., view, comment, edit). You can choose from predefined options.

Signed commits

[ ] Yes, I signed my commits.

I'll complete this in an hour

This PR covers user facing  docs on how to share design and set access type, I'll be explaining the concept of resource and below questions in separate page in cloud doc
Flow 2: As a Team Admin, I would like to control (grant, revoke) Workspace access to another Team, so that I can conveniently control access by groups of users.
Flow 3: As a Team Admin, I would like to perform an access audit and review who has review to the resources (connections and credentials) of my Environment.
Flow 4: As a Team Admin, I would like to perform an access audit (review) who has review to the resources of my Workspace.


Launch local training job in DistributedRL

I launch the train.bat for Reinforcement learning. The car may occasionally tumbling on the ground or rotating in air for each new epoch. I tried to fix this by modify the distributed_agent.py. In function __get_next_starting_point() I set "random_direction=(0,0,0)", but it doesn't work.  What is the cause of this problem?

Exepriment/Environment details

Tutorial used: AirSimE2EDeepLearning, DistributedRL
Environment used: Neighborhood

Ok, I figure it out myself. As it turns out, the Z direction points down the surface. We should set the starting point as -1 or some minus number to make sure the car won't get stuck in the road.

hello，can you tell me how should I modify the code in distributed_agent.py so that it can be trained locally? Thank you.


Merging issue_comment with pull_request

Sorry, I wasn't sure if I should list this as a bug, or a feature request.
I am currently trying to have the same job run on two different events

issue_comment
pull_request

For issue_comment, the action will run on a certain trigger word.
On pull_request, it works great. Obviously on a pull request there are changed files in the mix, and it's able to pull them. However, on issue_comment, no files have changed All I'm having it do is simply rescan using the code in my script field.
I ran across this issue:

https://github.com/tj-actions/changed-files/issues/1667

      # ---------------------------------------------------------------------------------------
      #   Action needed if using 'pull_request' and 'issue_comment'.
      #   To get the pull request, you would normally use ${{ github.event.number }}
      #   however this isnt available for 'issue_comment'
      # ---------------------------------------------------------------------------------------

      - uses: actions/github-script@v6
        id: get_issue_number
        with:
          script: |
            if (context.issue.number) {
              // Return issue number if present
              return context.issue.number;
            } else {
              // Otherwise return issue number from commit
              return (
                await github.rest.repos.listPullRequestsAssociatedWithCommit({
                  commit_sha: context.sha,
                  owner: context.repo.owner,
                  repo: context.repo.repo,
                })
              ).data[0].number;
            }
          result-encoding: string
      - name: Issue number
        run: echo '${{ steps.get_issue_number.outputs.result }}'

      # ---------------------------------------------------------------------------------------
      #   action > checkout
      # ---------------------------------------------------------------------------------------

      - uses: actions/checkout@v4
        if: ( github.event_name == 'pull_request' ) || ( github.event_name == 'issue_comment' && contains( github.event.comment.html_url, '/pull/' ) && contains( github.event.comment.body, '/rescan' ) )
        with:
          fetch-depth: 0
          ref: "refs/pull/${{ steps.get_issue_number.outputs.result }}/merge"

      - name: Use Node.js
        uses: actions/setup-node@v2

      - name: Get changed files
        id: changed-files
        uses: tj-actions/changed-files@v42
        with:
          separator: ","

      - name: List all modified files
        run: |
          for file in ${MODIFIED_FILES}; do
            echo "$file was modified"
          done

Under the step to list all files, the actions console returns
Run for file in ${MODIFIED_FILES}; do
  for file in ${MODIFIED_FILES}; do
    echo "$file was modified"
  done
  shell: /usr/bin/bash -e {0}
  env:

And then anything in my script field later down fails because it has no files to check.
Run actions/github-script@v7
TypeError: Cannot read properties of undefined (reading 'created_at')

Not sure how to go about this, and I'm not sure if this is doable according to the issue I linked above.

Describe alternatives you've considered?
NA
Anything else?
NA
Code of Conduct

[x] I agree to follow this project's Code of Conduct

Hi @Aetherinox, you might need to clarify the details of what you are trying to do and also provide logs and I.e not just a cut of the error but what lead up to the error.

Sorry, I was half asleep last night when I wrote this, my brain wasn't firing on all cylinders.
After I woke up today, I'm not sure if this is even solvable by this action script. In short:

My action has two triggers, issue_comment and pull_request
When I do a pull request, the bot scans the changed files and checks them for syntax issues, generates a report using scripts/v7, and then comments in the pull request.
The bot then assigns a label to the pull request depending on how the scan went.

I was wanting to implement a /rescan comment trigger, but what that would do is simply re-scan all the files again.
Well the problem with that, is that your script checks for changed / modified files. So if I simply do a /rescan, then obviously nothing is going to be changed without another pull request, which is where I say I'm not even sure if this action is even part of the problem. With no files being changed, my array doesn't get populated, which causes it to simply throw an error that it cannot find the creation_date of a file, because there aren't any files there to grab data for.
Then after I woke up today and did a double take, I realized that issue comments and pull requests have entirely different variables for grabbing data.
So it's something I'm going to have to investigate further, because what seemed like a relatively simple implementation, carries with it a web of differences.

Hi @Aetherinox, actually issue_comment event is supported by this action you can find an full example here on how to setup your workflow.
These are example runs of the action for context on the list of files returned.

PR comment: https://github.com/tj-actions/changed-files/actions/runs/8247880169/job/22556983266
Issue comment (like this comment):

Let me know If that solves your issue or you’ll like further assistance.

Ah, thank you for this. I'll have a look tomorrow.
Right now I wonder if I'm trying to throw way too much stuff into a single action, or if I should throw these into two actions. Once I look through these examples, I'll have a good idea.
Appreciate the examples.