fix: fixes mutate function promise type

Addresses #89

Thanks a lot!

Will be releasing soon!

https://github.com/Astrocoders/reason-apollo-hooks/releases/tag/v6.0.0


Add a validate_key entry point to the PSA driver interface

According to the PSA driver interface,

Transparent drivers are not involved when importing, exporting, copying or destroying keys

However, for some types of keys (mostly asymmetric keys), it's important that some validation is done before attempting operations. For example, a bad key might cause an infinite loop or a division by zero. More subtly, certain operations with ECC keys are functionally robust, but leak private information when used with invalid keys (see e.g. Validation of Elliptic Curve Public Keys, Why do public keys need to be validated?).
It's important to make sure that the key is validated before use. And it should be feasible to enforce this in compliance testing. With the current interface, transparent drivers need to validate the key before each use, which is error-prone and wasteful.
The core can do the validation itself, but @stevew817 noted in https://github.com/ARMmbed/mbedtls/pull/3492 that this is not satisfactory because it means that the core has to include its own ECC arithmetic code to perform the validation in software.
So there should be a key validation entry point, which the core must call before using a key. And the specification should guarantee that when the core requests an operation on the key, the key has already been validated. Whether the key is only ever validated on import or potentially at another time (e.g. on first use) could be left up to the core implementation.

@stevew817 Noted that a validate entry point doesn't work when import modifies the key data. While PSA implementations are only required to support importing the canonical key representation, there are common cases where keys may be canonicalized on import. For example, in Mbed TLS:

RSA keys are accepted in multiple formats (with or without SubjectPublicKeyInfo wrapping).
Curve25519 and Curve448 are accepted with the forced bits unmasked.

Instead there should be an import entry point, just like for opaque driver. The job of this entry point would usually be to validate the key and copy it from the input buffer passed to psa_import_key to the internal buffer. If the key is in non-canonical format, the import entry point would need to convert and not just copy.


[DISCUSSION] Geometric Weather

About this discussion
i found this duplicate but i don't know which i should delete

You can delete the bottom one (<icon drawable="@drawable/weather" ...>), since it uses the generic weather icon.


discoverNetworkServices callback is not being called

While the Log says that it finds the Server ("Salut: Found -2030493332 _AwesomeParty._tcp.local.") the callback is never being called, and if I choose to have a timeout, it says It couldn't find any devices.
It doesn't happen every time, but it happens in more than 95% of the tries

same here and months of trying with no luck,
did you solve it please?

The only solution was to initialize the Salut object every time I need a new connection

i did that also and its better but also not stable


.webp doesn't have the workflow embeded

I don't know if the issue is one the node side or comfyui but I cant load a image with the webp. Also when I look at the metadata I don't see the prompt.

Webp isn't saving workflow data.  Only PNG.

I've installed a save_as_webp extension that embeds the workflow, since it's possible to do, would you be kind and add that capability please?
Having more control over what is saved and the naming is a pretty nice feature that only image save node offers.

I'll take a look at how they are embedding the workflow.


Give a hint in the documentation, howto install garth

On Debian Bookworm i could not install garth as described in the docu.
on Stackoverflow i found a solution.
Maybe we should give a hint in the documentation.
this steps solved it for me:
sudo apt install python3-pip
sudo mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.OFF
python3 -m pip install garth

I'm happy you found the solution!
This is very specific to Ubuntu / Debian. The README / docs should be more general to all platforms.


How does it work?

Is the MYSQL db being polled at some interval? Or does MYSQL have it's own event system that you are listening to?

It uses the MySQL binary log (used for replication and data recovery) to see what has changed in the database and update the search queries you've requested.

@peterchoo Awesome. So is the app periodically reading the log in some timed interval? Or is there some type of communication mechanism that allows apps to subscribe to mysql's changes and the changes are pushed to the apps?

It's set up as a replication client, so the binary log is pushed from the
mysql db in real time. Have a look at mysql bin log replication.  The live
select module monitors the log for changes to the data in the queries
you've registered with it and pushes the changes.
On 30 Apr 2015 20:13, "Joseph Orbegoso Pea"<EMAIL_ADDRESS>wrote:

@peterchoo https://github.com/peterchoo Awesome. So is the app
periodically reading the log in some timed interval? Or is there some type
of communication mechanism that allows apps to subscribe to mysql's changes
and the changes are pushed to the apps?
—
Reply to this email directly or view it on GitHub
https://github.com/numtel/mysql-live-select/issues/6#issuecomment-97932383
.

Thanks a ton @peterchoo (:


SDX - 0205 form type does not display 'comments' on the image files

Steps
Launch an 0205 form type enter Values on all the fields and Submit the survey
Expected:
All the values entered by the the user must be displayed on the image file
Actual:
Comments field is missing on the image please find the attached screenshot

This is due to missing row label. Can you provide one? For example form 0203 has "Please explain any movements in your data e.g. sale held, branches opened or sold, extreme weather, or temporary closure of shop".

@gbanas 0205 uses the same label as 0203

I have requested a pull request https://github.com/ONSdigital/sdx-transform-cs/pull/30 which contains a fix for this issue.


Inso CLI .exe not doing anything and therefore cannot install

Expected Behavior
I expected to download Inso CLI, extract the executable, and then run the installer.
Actual Behavior
Once I extract the executable, and attempt to launch the application nothing happens:
Extracted executable:

After I click it, a command prompt window flashes for about 1 second, and then it closes and does nothing:

Reproduction Steps
1.) Go to<EMAIL_ADDRESS>to download the Windows .zip
2.) Extract the files using Windows explorer / file explorer
3.) Attempt to launch the application
4.) Click "Run anyway" on the security warning
Is there an existing issue for this?

[X] I have searched the issue tracker for this problem.

Additional Information
No response
Insomnia Version
inso-windows-2023.5.8
What operating system are you using?
Windows
Operating System Version
Windows 11 Version 22H2 (OS BUILD 22621.2215)
Installation method
Download from Insomnia
Last Known Working Insomnia version
No response

@jackkav you closed this as completed but I am still facing the same issues?
If I'm doing something wrong please let me know, thank you.

https://docs.insomnia.rest/inso-cli/install

Still the exact same issue when I attempt to manually extract the executable and then run it.
And if I try the command, from the link you provided, this is what happens in the command prompt:

I'm not sure if you've resolved this yet. I had this error come up as well and found a workaround in that I had to cd into the folder that held the executable. But then I ran into instructions online to add the folder containing the executable to my System environment variables path and that error stopped and the cli started doing what's expected.
Another thing is that the '.' error also depended on which terminal I used, before setting the path.
If I was in a powershell terminal, it required the ./inso, but if I was in the command prompt, then I could just use "inso". So powershell would have needed "./inso --version" and the windows CMD used "inso --version". With the path set, I can just use "inso --version" in both terminals now.
Hope this helps!


Figure out a good way to share I2C code

The HDMI2USB boards have a lot of I2C buses in them. Currently this means a lot of duplicated code. It would be good to refactor that code so it could be shared.
The I2C buses on the Atlys board are;

(slave) HDMI RX 1
(master) HDMI TX 1
(slave+master) Shared HDMI TX 2 + HDMI RX 2
(master) VHDCI auto detection interface
(master) Control of the IC on Rohit's VGA board

The I2C buses on the Opsis board are;

(slave) HDMI RX 1
(slave) HDMI RX 2
(master) HDMI TX 1
(master) HDMI TX 2
(slave+master) Opsis EEPROM + FX2 Boot loading
(master) TOFE Expansion EEPROM
(master) Control of the IC on Rohit's VGA board

Related bugs;

https://github.com/timvideos/HDMI2USB-misoc-firmware/issues/21
https://github.com/timvideos/HDMI2USB-misoc-firmware/issues/35

Is it fine for you?:
https://github.com/timvideos/HDMI2USB-misoc-firmware/commit/404423e17169dfc7d44c8cfe2b16f72e4ccc555d
https://github.com/timvideos/HDMI2USB-misoc-firmware/commit/8a5f5835474ce39de8a41c9c88589ea20769c454
https://github.com/timvideos/HDMI2USB-misoc-firmware/commit/8464de6337587fadd05a6d688eb1a32350ff0523

It's not a great solution, but it is a step in the right direction.

Done via https://github.com/timvideos/HDMI2USB-misoc-firmware/commit/2f9f8c3d0fed6e53d8b3424b1051c05d3c5da7e2

@enjoy-digital has made a good start, but I think we can improve on this further - so I'm going to reopen it for now.

Might be worth looking at http://www.i2cdevlib.com/


[Question] Integration to node.js

The roadmap contains a point about the inclusion of ChakraCore to node.js.
Do you already have a more specific ETA for that?

:+1:

We have sent out the PR few minutes back at nodejs/node#4765 .
You can try the binaries from here.


Noise results testing on the nuScenes dataset

Hey, thanks for releasing the amazing work!
The method works very well on the KITTI dataset with 64-line lidar. I made a test on the nuScenes dataset with 32-line lidar. I get a very noisy result including a lot of holes on the ground. The 3D point on nuScenes dataset is more sparse than that of the KITTI dataset.
In order to fill the holes in the 3D surface, I use mc_res_m=0.1, and only sample the points on the "close-to-surface uniform sampling".
Any idea to make it works on the nuScenes dataset? Thank you so much.

Thanks for your interest in our work.
For sparse datasets such as nuScenes, to have higher completeness, it's better to set tree_level_feat larger (for example = 3) and set mc_vis_level larger (for example = 2). In this case, please also turn off mc_with_octree.
Here's the result I achieved on Nuscenes 0001 using the kitti_batch.yaml with the modifications mentioned above after 10k iterations.

It would be great if you can tell me the sequence number corresponding to the image you posted so that we can also test it.

Hey, thanks so much for replying very soon!
I test it using the hyperparameter as you suggested. It seems there are no too many differences.
I made a quick test on scene-0061 on the nuScenes-mini dataset. Could you have a quick test on this scene?
Thank you.

Hi, here's the result I got on 0061 with all the 382 LiDAR frames and the parameters mentioned above (after 10k iterations).
I've also tried to use only 38 frames (1 from every 10 frames) for the mapping, the results are shown below (still seem to be okayish but already with some holes):

But if you are using even fewer frames, then it could be too sparse for the mapping.

Thanks for sharing the results on Scene-0061.  It looks like your result is denser and has fewer holes in the ground.
I use the new code in your GitHub, and run the script "shine_batch.py" with "kitti_batch.yaml".
I set the tree_level_feat=3, mc_vis_level=2 and mc_with_octree=False.
I only modify the lidar_dataset.py to make it can load the nuScenes dataset.
Besides these, nothing is changed. However, the result looks very sparser.  Is there anything I don't run the code in the right way?
Could you help me to find out where is the problem? I can share my code with you. Thank you so much!
Here is my result after 10000 iterations.

I forgot to mention that I use mc_res_m: 0.2 for a faster mesh reconstruction. But this would not make much difference in my opinion. There's no other modification from the latest code.
SHINE Mapping will also output a downsampled merged point cloud in the map folder under the results path. Is it possible for you to take a screenshot of the merged point cloud in some visualizer? Besides, I wonder how many frames of the point cloud you are using.

Hey, I use the point cloud from "sample_data" of nuScenes-mini dataset. For Scene-0061, there are 39 frames of lidar points and I use all of them. Here is the merged point cloud:

Hello, thanks for your help.
I find a bug in my data loading. Now I could get the denser reconstruction results similar to what you provided.


Support the Valid annotation on parameterized types to an interface class

Please add this in Jakarta EE 11. It is needed by Jakarta Data.
When performing method validation on methods that came from an interface and you don't control the interface yourself, it is currently not possible to request cascading validation on the parameters and return value of the method.   The proposal is to support annotating type parameter(s) with @Valid when inheriting from the interface in order to request that cascading validation be automatically performed during method validation for parameters and return values of the annotated type.
For example, Jakarta Data has a built-in interface CrudRepository, which defines a very commonly used save operation, which is where validation of constraints on the passed-in entity parameter is often desired.  Jakarta Data repositories that the user defines inherit from this interface, for example,
@Repository
public interface School extends CrudRepository<Student, Integer>() {
... // inherits save(Student) operation from CrudRepository
}

@Entity
public class Student {
   @Email
   public String email;
   @NotBlank
   public String name;
   @Id
   public int studentId;
}

The user who defines this class, would like to annotate the Student parameter with @Valid, as follows:
@Repository
public interface School extends CrudRepository<@Valid Student, Integer>() {
... // inherits save(Student) operation from CrudRepository
}

which we would like to see cause the constraints of the Student class to be validated when a Student object is supplied to:
    school.save(student);

Mailing list discussion:
https://www.eclipse.org/lists/bean-validation-dev/msg00029.html

I've also observed that constraints on type variables, such as @Positive below, do not seem to have the effect of applying to method parameters of that type, so this pattern might be consistently not working,
@Repository
public interface School extends CrudRepository<@Valid Student, @Positive Integer> {
    Optional<Student> findByStudentId(Integer studentId);

    ... // inherits save(Student) operation from CrudRepository
}


Shouldn't it just delete Cosmos DB resource instead of resource group in chapter "Clean up resources"?

It delete resource group in chapter "Clean up resources" but resource group was not created in this content.
Shouldn't it just delete Cosmos DB resource instead of resource group?

not only this content. Java app, Node.js app, Python app, and Xamarin app pages too.

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

ID: 9f1447c3-9885-7225-1b63-8e568bdfe04f
Version Independent ID: 5574832e-2af1-ba6d-cfac-3f330b5e11e0
Content: Create an Azure Cosmos account, container, and items with the Azure portal.
Content Source: articles/cosmos-db/create-cosmosdb-resources-portal.md
Service: cosmos-db
Sub-service: cosmosdb-sql
GitHub Login: @SnehaGunda
Microsoft Alias: sngun

@kuniteru Thanks for the comment.We are actively looking into it and will update you soon.

@kuniteru This quickstart does give the option to create new Resource Group.

The same has been done and used in the Quickstart:

So the clean up part is deleting the same Resource Group.
Hope this helps.

I'm sorry, it was my mistake.
Thank you.


Improve handling of numbers as strings

For comparison expressions like >, <, >=, etc. treat numbers encoded as strings as numbers, using parseInt or parseFloat.
We've done something similar for wegood:
https://github.com/briza-insurance/wegood/blob/master/src/rule/range.ts#L30-L41

@davidhorak if these expressions are used on strings that do not contain a valid number, should we error or return false like we do now when isNumber fails? Assuming returning false?
Do we need to handle numbers in scientific notations?
Should we omit currency signs so we don't fail on things like $10.00 > $8.00?

if these expressions are used on strings that do not contain a valid number, should we error or return false like we do now when isNumber fails? Assuming returning false?

I would say error, as we do not want evaluate these in an "not predictable manner" from illogical perspective, i.e. errors.

Do we need to handle numbers in scientific notations?

I would say no, as this may be tricky for large numbers.

Should we omit currency signs so we don't fail on things like $10.00 > $8.00?

Yes. I would not recommend ignore these in the parsing, i.e. these should be unexpected strings, i.e. errors - from the illogical perspective.

if these expressions are used on strings that do not contain a valid number, should we error or return false like we do now when isNumber fails? Assuming returning false?

I would say error, as we do not want evaluate these in an "not predictable manner" from illogical perspective, i.e. errors.

A follow up on this @davidhorak, in the case of the === operator, we should return false if comparison fails instead of failing hard with an error because string equality is a valid comparison as well. We can error out for >, <, <= etc operators that indeed require numbers as operands.


Upgrading to v7 or v8 results in "Can't resolve 'flatpickr/dist/l10n'"

When upgrading to v7 or v8 I get the error "Can't resolve "'flatpickr/dist/l10n'" during build.
This is without embroider.

@ecit-bbracke do you have flatpickr installed? It is a peerDep.

If I install it as a peerDependency (4.6.13"), I get:
Module not found: Error: Can't resolve 'flatpickr' in '/home/bent/Projekter/boel/node_modules/ember-flatpickr/dist/components/ember-flatpickr.js'

@ecit-bbracke do you have ember-auto-import v2 installed or are you using embroider? It may be required that you have one or the other.

Sorry for the delay.
I have fixed the problem, by fixing other dependency problems. don't what it was specificly.


Handle Swift versions unsupported by XCBuild

XCBuild has its own notion of supported Swift versions which can differ from the ones SwiftPM's own build system and the used compiler support. Using a version outside of the supported range prevents building, so we'll try to obtain the list of supported versions and intersect it with the versions supported by a given package to find the best version supported by both.

@swift-ci please test


The site's home directory could not be located

Hi,
Keep getting this error:
The site's home directory could not be located
On a Windows 10,  IIS 10 express, Using Visual Studio 2015 I do not get this error.
But, when I try the same solution on a
Windows 2012 Server R2 Data Center
IIS8
Visual Studio 2013 when I run it get the following Error:
The site's home directory could not be located
I have the folder IIS_IUSR, System and everything I can think of read/write permissions.
But no luck in getting it to work.
Kudu looks good and works locally, but can't get it to work on Windows Server 2012 R2 Data Center.

experiencing same issue!

Hi
Kudu will continue to run in Azure App Service. However, this repo will no longer be maintained.
If the problem persists and is related to running on Azure App Service, please open a support incident in Azure:
https://learn.microsoft.com/en-us/azure/azure-portal/supportability/how-to-create-azure-support-request
This way we can better track and assist you on this case
Thanks,
Joaquin Vano
Azure App Service


Update WebPI to 5.0

Updated 5.0 MSI.
ZIP file is not updated as I couldn't find it anywhere.

There were merge conflicts so I brought this in manually on my new branch.  Thanks for getting the URLs and the SHAs.
https://github.com/chef-cookbooks/webpi/tree/no_zip


✨ Run pre-commit checks and fix issues in GenAI code style #663

🛠 Implemented basic pre-commit checks to improve code quality across the project
🔍 Added checks for:

flake8 for linting
isort for import organization
mypy for type checking

🔧 Fixed detected code style issues and excluded expected failures (e.g., non-ASCII symbols in README.md) to maintain testing integrity.
🔗 This resolves issue #663 by establishing a consistent coding style and enhancing maintainability.

hey @LitZeus  will you have a time to solve issues with the PR?


SSB and SSB_cur

I noticed the outputs SSB and SSB_cur are saved. Can someone help me figure out the difference between these two?
https://github.com/lkerr/groundfish-MSE/blob/cc47350ce27e43a11bd4443ba41cadb4c7e3a592/functions/get_containers.R#L38
https://github.com/lkerr/groundfish-MSE/blob/cc47350ce27e43a11bd4443ba41cadb4c7e3a592/functions/get_containers.R#L89
https://github.com/lkerr/groundfish-MSE/blob/ea59c71d82db906bd7f280c4390809ba0b5c8c86/functions/datawrangling/get_fillRepArrays.R#L16-L25

Looks like the SSB is calculated like this using the Jan-1 abundance from the previous year
https://github.com/lkerr/groundfish-MSE/blob/72ef93b48c7603bda40f0f78dc2127bc3d1019ca/functions/popdy/get_J1Updates.R#L21
And the SSB_cur is using the abundance for the current year, calculated like this
https://github.com/lkerr/groundfish-MSE/blob/72ef93b48c7603bda40f0f78dc2127bc3d1019ca/functions/popdy/get_J1Updates.R#L82


Using demo on windows failed  with invalid dll file

Hello,
I have an issue trying tu use porcupine on windows.
I cloned the repo, installed every libraries pyaudio, etc... but when running from demo or python test file. I get the following error :
listening for:

alexa (sensitivity: 0.500000)
Traceback (most recent call last):
File "demo/python/porcupine_demo.py", line 212, in
main()
File "demo/python/porcupine_demo.py", line 208, in main
input_device_index=args.input_audio_device_index).run()
File "demo/python/porcupine_demo.py", line 102, in run
sensitivities=self.sensitivities)
File "demo/python../../binding/python\porcupine.py", line 69, in init
library = cdll.LoadLibrary(library_path)
File "D:\Tools\python-3.7.4\lib\ctypes_init.py", line 442, in LoadLibrary
return self.dlltype(name)
File "D:\Tools\python-3.7.4\lib\ctypes_init.py", line 364, in init
self._handle = _dlopen(self._name, mode)
OSError: [WinError 193] %1 n’est pas une application Win32 valide

Expected behaviour
Keyword Alexa detection without any error ?
Actual behaviour
Invalid dll error (see above)
Steps to reproduce the behaviour
I'm on Windows 10 64bits x64 technology.
Is it possible for me to build my own dll ?
or are you able to give an adapted dll ?
Thanks for your help, keep the good work porcupine seems to be an amazing tool !

Is it possible for me to build my own dll ?
no, source code is private.
or are you able to give an adapted dll ?
it should work fine on windows. make sure your python is also 64bit.

Thanks for your reply !
In fact, i had a 32 bit version of python.
Resolved using 64bit, well done !


Add ignore_idx to retrieval metrics

What does this PR do?
Fixes #672
Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[X] Did you read the contributor guideline, Pull Request section?
[X] Did you make sure to update the docs?
[X] Did you write any new necessary tests?

PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Seems to me that we should reduce the number of tests, or maybe reduce their complexity. Do you know whether I can check how much time was taken just by the retrieval package?

Seems to me that we should reduce the number of tests, or maybe reduce their complexity. Do you know whether I can check how much time was taken just by the retrieval package?

yes, it becomes a heavy bit I guess the most is coming from Image and Text packages...
you can run pytest with  --durations=0 which ends with times over all/each test and you can aggregate it... just thinking about it, it would be a great analysis for us to identify what shall we improve :rabbit:
on the other note, I am not very sure if we shall lower test coverage, rather we can think about running some job concurrency and reducing configuration with a limited number of agents (the MacOs is limited and also the longest)


dev provision: Improve CentOS support.

[x] Will still break on CentOS because setup-apt-repo not yet ported, but this is the remaining blocker left.
[x] postgres-init-dev-db

I merged a few of the preparatory commits; What's the story with the various TODO type comments you have?

(I am swamped today. Will complete this by this weekend.)

@timabbott I am currently at https://github.com/zulip/zulip/blob/0fd6ff722b9e9f1e503bfbac560c963ee0e004ee/tools/lib/provision.py#L395, encountered this error,
+ grep -q '*:\*:\*:zulip:' /home/centos/.pgpass
grep: /home/centos/.pgpass: No such file or directory
+ echo '*:*:*:zulip:eeeeeeeeeeeeeeeeeee'
+ chmod go-rw /home/centos/.pgpass
++ dirname tools/setup/postgres-init-dev-db
+ tools/setup/../../scripts/setup/terminate-psql-sessions zulip zulip zulip_base
psql: FATAL:  Ident authentication failed for user "zulip"

I think this is the final hurdle of this PR.
Though I have to note that before even ./tools/provision, I had to first install python34, and the error message was to verbose, so I will add this detection later. Also, services are not automatically started post install.

psql: FATAL:  Ident authentication failed for user "zulip"

For this, it should be using password authentication powered by  ~/.pgpass

I pushed a few of the preparatory commits.

psql: FATAL:  Ident authentication failed for user "zulip"

For this, it should be using password authentication powered by ~/.pgpass

The file exists with permission 600.

Well, check pg_hba.conf.

@timabbott ok with these commits, it worked on my test CentOS instance, except for the commit "provision: Patch pg_hba.conf on CentOS" which I haven't tested since I already edited the file manually.

Made a few changes:

Renamed setup-yum-tsearch-extras to build-tsearch-extras.  I imagine we'll want to update various sections of our "advanced setup" documentation to recommend running if, after passing in OS details and tweaking the paths accordingly.
Made build-tsearch-extras work in a mktemp -d directory.
Moved the yum update earlier in scripts/lib/setup-yum-repo.
Used overwrite_symlink rather than shelling out for symlink creation
Added various explanatory comments
Fixed the run() arguments issue discussed above
Moved the conditional for TSEARCH_STOPWORDS_PATH_CENTOS to just set a different value of TSEARCH_STOPWORDS_PATH

And merged most of this PR.
Useful follow-ups (still writing these):

I think we should use postgres 11 rather than 10, if we're installing it ourselves anyway.  Less future upgrade work that way.
We should separate the install_apt_deps function and add a setup_yum_deps function.  Also, probably both should use the file_or_package_hash_updated framework rather than manually messing with sha1sum.

Pushed new set of commits addressing previous comment except for:

Update doc in advanced installation
Update doc to say that CentOS 7 dev is supported. This shouldn't be done until there is a CI.
Extend to Fedora.
Extend build-tsearch-extras to Debian.

Can you fix your linter errors?  I recommend using our pre-commit hook that auto-runs them on the files changed in the commit; would save you a lot of time.

I had a generic linter that automatically runs whenever I save a file. It didn't catch specifically that the formatted var must be a tuple.

You should use https://zulip.readthedocs.io/en/latest/git/zulip-tools.html?highlight=setup-git-repo#set-up-git-repo-script instead; it's the linter everyone else in this project is using and nicely integrated :)

./tools/setup-git-repo: bad interpreter: /bin/bash: no such file or directory

:( I suppose I will fix the tooling for my actual dev box (NixOS) instead of Fedora next.

It only works with '#!/usr/bin/env bash' for all the shell scripts.

Tested with the following result:

https://github.com/zulip/zulip/blob/728c601ff4b074a77e61aa6d9bed3fe0752bf94c/tools/lib/provision.py#L243 failed with a permission error. There is no way to tell the function to run via sudo.
build-tsearch-extras failed with

gmake: /opt/rh/llvm-toolset-7/root/usr/bin/clang: Command not found
gmake: *** [tsearch_extras.bc] Error 127

I installed with sudo yum install clang but it insists to run clang at /opt/rh/.../bin/clang instead of /usr/bin/clang. I had to do sudo yum install llvm-toolset-7 instead, but even this failed because I had to enable more repos based on this article: https://developers.redhat.com/blog/2018/07/07/yum-install-gcc7-clang/. It seems to be tedious to setup, so I will leave the 10->11 upgrade at another day.

I merged most of this (excepting the Postgres upgrade).  A few notes:

For the overwrite_symlink thing, OK, submit a commit switching that back.
Annoying re: postgres upgrade.  It might be possible to pass a flag to ./configure indicating where clang is.  I suppose it's also possible that tsearch_extras itself doesn't build with postgres 11; I don't think we've tested it.  @sampritipanda do you know off the top of your head?
For #!/usr/bin/env bash, it's possible that we should migrate to using that everywhere, but I haven't investigated it.  @andersk do you know if that's the recommended shebang convention for bash scripts?

Pro #!/usr/bin/env bash: https://github.com/koalaman/shellcheck/pull/1125
Pro #!/bin/bash: https://github.com/elastic/elasticsearch/issues/23443

Merged a couple early commits, after fixing the ln command to use -nsf (you basically always want -n).
I think we should keep the CentOS dist ID; we did the same with Debian/Ubuntu, and I think it's better to just have if statements check for CentOS or Fedora (or whatever) than to be doing pattern-matching on the codenames.

The redhat is to make translating the dev dependencies to puppet easier, based on $::osfamily fact.

Most of CentOS and Fedora setup are too similar to warrant a separate vendor name.

Merged several more commits.  I'm getting excited about this @rht!  A few notes:

We should probably test on RHEL 7 once, since it should be the exact same code as CentOS 7, and it'd be really nice to just add the couple flags for that and document it as supported too.
Can you explain the typing issue in more detail?  I don't super understand what's going on there.

I made a typo at build-tsearch-extras. The line currently is (cd tsearch_extras && gmake && make install) where it should have been consistently gmake.

Let's add a MAKE_COMMAND variable; on CentOS that's gmake, but on Debian and other platforms, it may just be make.  It can be e.g. MAKE_COMMAND=$(which gmake || which make).

Re: typing, the exact error is at https://chat.zulip.org/#narrow/stream/3-backend/subject/dev.20env.20of.20Fedora.20x/near/673357. The relevant issue is https://github.com/python/typing/issues/573#issuecomment-405986724.

@andersk do you know if that's the recommended shebang convention for bash scripts?

This is maybe out of scope for this PR, since we’re currently inconsistent:
$ git grep -Ih '^#!' | sort | uniq -c
      2 #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     43 #!/bin/bash
      1 #! /bin/sh
     12 #!/bin/sh
     26 #!/usr/bin/env bash
      2 #!/usr/bin/env node
      1 #!/usr/bin/env perl
      3 #!/usr/bin/env python
      1 #!/usr/bin/env python2.7
     91 #!/usr/bin/env python3
      1 #!/usr/bin/perl
      1 #!/usr/bin/perl -w

but yeah, I think it’d be good to standardize on no shebangs other than #!/bin/sh and #!/usr/bin/env foo. These are the only two binaries that NixOS provides at a fixed path (outside of a buildFHSUserEnv sandbox). A disadvantage of #!/usr/bin/env is that Linux doesn’t let you pass it extra arguments, but that’s not a big deal for our languages (perl -w ↦ use warnings;).

@andersk I think it'd be reasonable to migrate everything to that.  But yeah, let's do that in a separate PR; this one has enough going on.  Want to take in @andersk?  I think we can add a lint rule in tools/linter_lib/custom_check.py for this -- we already have something of that form for python shebangs.

Opened #11073 for #!/usr/bin/env bash.

Added more commits which include provision on RHEL 7 (Maipo). I set it up so that no registration is required in order to install libmemcached-devel, but with the trade-off that the lib version is specified explicitly in the rpm url, and so has to be updated from time to time. I will do the typing removal fix in another PR, since it is specific to systems with python3.7.

re: caching, solutions include to close + reopen, or to push a commit that re-installs the typing module...

provision: Include scripts/lib/setup-* and scripts/lib/build-* for sha1 sum check.

I don't think this is a good approach -- it's way too aggressive.  We should just have an if statement that, for redhat family systems, uses the setup-yum-repo file instead.

I merged several more commits.  A few requests:

I think codename for RHEL 7 should be rhel7; I think maipo is the codename for RHEL 7.5 (or whatever), and we probably don't need custom stuff for individual rhel point releases.
Waiting to merge the python3/virtualenv on your converting them to edit the COMMON_YUM_... structures rather than doing substitutions on the results, which seems fragile.
For this block and the related RHEL ones:

+    is_rhel=true
+    yum localinstall -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
+    # Enable this instead if your system is registered.
+    # This is required for libmemcached-devel, but by default is installed from
+    # a url in this script.
+    # subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms"

Can we just detect if the machine is registered?  I feel like it's bad form to install CentOS packages on a  RHEL machine that is registered, and it seems likely there's a quick thing we can call to check.

The codename maipo does correspond to the major release, RHEL 7. For the previous release, it was santiago (RHEL6).

The codename maipo does correspond to the major release, RHEL 7. For the previous release, it was santiago (RHEL6).

I guess mostly I just think that "rhel7" is a lot more readable than "maipo", and we should prefer it if we're able to use it.  I just feel like everyone talks about "RHEL 7", not "maipo"...
Though maybe puppet does maipo and we should just give up and use comments to make things readable?

Found https://github.com/puppetlabs/facter/pull/573/files (from https://github.com/puppetlabs/facter/search?q=rhel7&type=Commits) that mostly it is rhel7 on puppet. Maybe codenames like "Shy Crocodile" are perceived to be less enterprisey?
Based on this finding, I will use rhel7 and put maipo in comment instead.

Updated with the following changes:

rhel7 is used as codename
selective sha1sum
COMMON_YUM_VENV... stuff
RHEL7: detect if machine is registered

I merged the main RHEL commit, after fixing the mypy error.

OK, the remainders are Fedora-specific stuff, so I will open a fresh PR for that.


[Sharing-Smart-Contract] Stopt setting resultProxy

Units tests of the SDK are broken. This is why the CI is red.
Not in the scope of this PR


Next Migration: Migrate learning resources page to getStaticProps

Goal
We currently read a JSON file to list all the learning resources on the learning resources page. This is no longer required as we can leverage Next.js' getStaticProps.
Reason
Avoids reading a JSON file on each page load and we should be leveraging what Next.js provides out of the box.
Tips
Look at #229 for inspiration.
Definition of Done

[x] The learning resources page generates static props at build time for the list of contributors.

closed via https://github.com/drewclem/protege/pull/231


add multiple {--var (-v) NAME VALUE} arguments to the cli for introducing free format key value pairs to be available in the templates

USECASE:
I want to use pysubyt with a  template that needs a configurable {{baseuri}} to be injected from the CLI.
This feature should be available via the processor service / interface.
Approach

Capture key, values from cli similar to set , use them to build a dict.
Allow dict to be passed to Generator.process
Use dict in JinjaBasedGenerator to augment the processing context

NOTE
*Considering possible conflict of already existing keys in the template context
* Do not prevent but warn end user

@cedricdcc core of the fix is in place -- can you or @bulricht follow up on (1) some testing to avoid regression in the future and (2) release (+ semver)  to pypi ?

closing this one as there is already an issue for the implementation of tests: https://github.com/vliz-be-opsci/pysubyt/issues/42


Delete README.txt

I think this is outdated and redundant.
As per ODK, we should have

high level info in root README.md
editors info in src/ontology in README-editors.md

+1


Better timestamps options with default values and more flexibility.

This request only adds three small features:

Rename created_at/updated_at. (Default to "created_at"/"updated_at".
Type of those fields. (Default: "timestamp")
Small change on "dropTimestamps".

PS: Please do notice that this is my first PR to a project this big. Be kind to point me in the right direction.

Tbh I wanted to go ahead and do function({datatype = 'timestamp', createdatcolname = 'created_at', updatedatcolname = 'updated_at'}){...} but I think it would break a few things on old node versions...

There is linting error in the code, so tests are failing. Also I don't like at all long parameter list for adding different options. If this is being changed it would require being backwards compatible and new parameters should be passed as options object to method. Try to find old PRs/issues about timestamps columns (sorry I don't have time right now to start searching them). There are lot of discussion about the theme.
I don't think this is correct way to change the functionality.

@elhigu Ty for the clarification!!!


Append modifies the previous entry if entry has been modified with Save

Your issue may already be reported! Please search on the issue track before creating one.
What version of Go are you using (go version)?
go version go1.10.4 linux/amd64
Which database and its version are you using?
I have tried with mysql and sqlite but the problem is the same
Please provide a complete runnable program to reproduce your issue. IMPORTANT
package main
import(
        "log"
        "github.com/jinzhu/gorm"
        _ "github.com/jinzhu/gorm/dialects/sqlite"
)

var db *gorm.DB

type Ticket struct {
        ID                uint
        UserRefer         uint
        BookingIdentifier string
        Confirmed         bool
}

type UserInfo struct {
        gorm.Model
        Name          string
        Ticket        []Ticket      `gorm:"foreignkey:UserRefer"`
}

func main() {
        var err error
        // Opend database
        db, err = gorm.Open("sqlite3", "my.db")
        if err != nil {
                log.Fatalf("db error: %s", err.Error())
        }

        //Create user
        tu0 := UserInfo{}
        db.Create(&tu0)

        ticket := Ticket{
                BookingIdentifier: "8JGVTLO",
        }

        //Append ticket
        err=db.Model(&tu0).Association("Ticket").Append(&ticket).Error
        if err != nil {
                log.Fatalf("got error appending ticket: %v", err)
        }
        //Modify ticket
        ticket.Confirmed = true
        err = db.Save(&ticket).Error
        if err != nil {
                log.Fatalf("cannot update ticket: %v", err)
        }
        //Append second ticket
        ticket2 := Ticket{
                BookingIdentifier: "JHTYUJ",
                Confirmed:         true,
        }
        err=db.Model(&tu0).Association("Ticket").Append(&ticket2).Error
        if err != nil {
                log.Fatalf("got error appending ticket: %v", err)
        }
        // Check correct update
        var tickets []Ticket
        err=db.Model(&tu0).Association("Ticket").Find(&tickets).Error
        if err != nil {
                log.Fatalf("cannot retrieve tickets: %s", err)
        }
        if len(tickets) != 2 {
                log.Fatalf("error: %d tickets, expected %d", len(tickets), 2)
        }
        if !tickets[0].Confirmed {
                // UNEXPECTED
                // Confirmed has been modified, but after second Append, first entry is modified
                log.Fatalf("update does not work %+v", tickets[0])
        }
        if !tickets[1].Confirmed {
                log.Fatalf("seconds append does not work %+v", tickets[1])
        }
}

Need to runnable with GORM's docker compose config or please provides your config.
I execute the file directly
go run exec.go

I also am having this issue!


Clean up doc string in NodeBundle

          There's also a copy of this "`NodeBundle`" comment here, associated with the `node` field, with the same copy/paste mistake.

Seems safe to get rid of this one too to me. Not every bundle has it. But maybe it was intended that it say "to alter the size"?
Originally posted by @rparrett in https://github.com/bevyengine/bevy/pull/9404#discussion_r1291327481

Considering that the doc string for the style component already mentions adjusting the size and position of the ImageBundle, I'd concur that the aforementioned string should be removed.


feat: Add SkeletonGroupMixin

Description
Add a new SkeletonGroupMixin which allows consumers to wrap multiple skeleton components and ensure they all appear as "loaded" at the same time.
Rally
US154180

So one question I kinda touched on in my slack brain dump that'll I'll put here too to get Dave's thoughts - can we have skeleton groups in skeleton groups?  Can something extend both SkeletonGroupMixin and SkeletonMixin, and will that just work as is (now that we are able to control skeleton without needing a new attribute)?
If it is something we want to support and does just work, a demo of that would be good. If it doesn't just work that could be a separate PR, but thought I'd raise it now

I think a comment would be good here. Does setting it to undefined do the same thing, forcing an update or does that break something?

@svanherk yeah a comment probably makes sense here. Setting undefined does get us to an eventual correct state, but does cause a brief visual flicker in some scenarios. For that reason I'd like to keep it as-is.


[Ambari 25570] Fix HDFS Namenode page in grafana had some rpc metrics always show 'No datapoints' .

What changes were proposed in this pull request?
1. Alter the metrics from rpc.rpc.datanode.xx to   rpc.rpc.xx
The abnormal metrics in Granfana were defined as follows:

metric
widget name

rpc.rpc.datanode.RpcQueueTimeAvgTime
RPC Service Port Queue Time

rpc.rpc.datanode.RpcQueueTimeNumOps
RPC Service Port Queue Ops

rpc.rpc.datanode.RpcProcessingTimeAvgTime
RPC Service Port Processing Time

rpc.rpc.datanode.RpcProcessingTimeNumOps
RPC Service Port Processing Num Ops

rpc.rpc.datanode.CallQueueLength
RPC Service Port Call Queue Length

rpc.rpc.datanode.RpcSlowCalls
RPC Service Port Port Slow Calls

Granafa used  rpc.rpc.datanode.xx but in ams-hbase, they are stored like: rpc.rpc.xx:

So I altered the metrics from rpc.rpc.datanode.xx to   rpc.rpc.xx
2. Move datanode-related metrics from the namenode page to the datanode page
The missing metircs belong to the DataNode, but the appId used by the Granafa is NameNode,  these metrics should be displayed in DataNode page.
How was this patch tested?
1. The metrics after moved into the DataNode page shows ok:

2. datanode-related meitrics  do not display in the namenode page

@payert  Thanks for your great help!
I have fixed the advices you mentioned above and the muntual test screenshot has been updated.
please help to review it again 😀 .


Awesome Creatives

Awesome Creatives is a curated list of fine photography, videos, patterns, and illustration.
I never enjoyed existing creative lists because they didn't have high standards for each resource. The standards Awesome Creative adheres to are:

to be actively maintained and updated
to be searchable and easy to navigate
to be cost-free, copyright-free, without sacrificing quality

Some resources also include a description so it's easier to scan through the list and find a niche uses. These are only the creatives I've used, and can vouch for, but any others in the future will be added by readers and myself.

Please read the instructions for creating a new list, contributing guidelines and the awesome manifest.
Especially this part:

Wait at least a couple of weeks after creating a list before submitting to give it a chance to mature.

Ping me here in a few weeks and I'll reopen ;)

Quick feedback:

Only using Creatives in the title is a bit ambiguous.
Logo is blurry on retina screens. Export a bigger resolution or use SVG.
Drop the awesome for in the description.

@sindresorhus thanks for the feedback, I've implemented the changes. :)

You've only resolved the last item in the feedback. You also seem to have not read:

Please read the instructions for creating a new list, contributing guidelines and the awesome manifest.


Added another config file format

Added the .properties file format

since thats Minecraft's server software config file

pleas make everything in one pull request

pleas make everything in one pull request

what do you mean?

you said you have also a other pr to do

you said you have also a other pr to do

what's the other one? Can you remind me?

i have no clue read the context of this pr


feat: omit unmodified files during merge write

Description
Implements a new Datafusion node called MergeBarrier that determines which files have modifications. For files that do not have modifications a remove action is no longer created.
Related Issue(s)

enhances #850

Benchmarks
Before is main and After is this PR
+-------------------------------------------------------------------------------------+---------------------+--------------------+------------------------------------------+
| name                                                                                | before_duration_avg | after_duration_avg | before_duration_avg / after_duration_avg |
+-------------------------------------------------------------------------------------+---------------------+--------------------+------------------------------------------+
| delete_only_fileMatchedFraction_0.05_rowMatchedFraction_0.05                        | 6160.0              | 2928.0             | 2.1038251366120218                       |
| multiple_insert_only_fileMatchedFraction_0.05_rowNotMatchedFraction_0.05            | 5416.0              | 2362.0             | 2.2929720575783237                       |
| multiple_insert_only_fileMatchedFraction_0.05_rowNotMatchedFraction_0.50            | 5510.0              | 2516.0             | 2.1899841017488075                       |
| multiple_insert_only_fileMatchedFraction_0.05_rowNotMatchedFraction_1.0             | 5424.0              | 2527.0             | 2.146418678274634                        |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.01_rowNotMatchedFraction_0.1   | 4938.0              | 2594.0             | 1.9036237471087125                       |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.0_rowNotMatchedFraction_0.1    | 4368.0              | 2162.0             | 2.020351526364477                        |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.1_rowNotMatchedFraction_0.0    | 5299.0              | 2582.0             | 2.052285050348567                        |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.1_rowNotMatchedFraction_0.01   | 4606.0              | 2647.0             | 1.7400831129580658                       |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.5_rowNotMatchedFraction_0.001  | 4835.0              | 2628.0             | 1.8398021308980212                       |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.99_rowNotMatchedFraction_0.001 | 4866.0              | 2661.0             | 1.8286358511837655                       |
| upsert_fileMatchedFraction_0.05_rowMatchedFraction_1.0_rowNotMatchedFraction_0.001  | 4690.0              | 2679.0             | 1.7506532288167227                       |
| upsert_fileMatchedFraction_0.5_rowMatchedFraction_0.001_rowNotMatchedFraction_0.001 | 4878.0              | 2569.0             | 1.8987933047878551                       |
| upsert_fileMatchedFraction_1.0_rowMatchedFraction_0.001_rowNotMatchedFraction_0.001 | 4729.0              | 2630.0             | 1.7980988593155893                       |
+-------------------------------------------------------------------------------------+---------------------+--------------------+------------------------------------------+

Logs from benchmarks
Shows that the entire delta table is not rewritten during the operation.
Test: delete_only_fileMatchedFraction_0.05_rowMatchedFraction_0.05 Sample: 0
Total File count: 2114
File sample count: 127
MergeMetrics { num_source_rows: 225, num_target_rows_inserted: 0, num_target_rows_updated: 0, num_target_rows_deleted: 225, num_target_rows_copied: 3440, num_output_rows: 3440, num_target_files_added: 99, num_target_files_removed: 100, execution_time_ms: 2870, scan_time_ms: 0, rewrite_time_ms: 1940 }
Seconds: 2.928915
Test: multiple_insert_only_fileMatchedFraction_0.05_rowNotMatchedFraction_0.05 Sample: 0
Total File count: 2114
File sample count: 107
MergeMetrics { num_source_rows: 159, num_target_rows_inserted: 159, num_target_rows_updated: 0, num_target_rows_deleted: 0, num_target_rows_copied: 0, num_output_rows: 159, num_target_files_added: 77, num_target_files_removed: 0, execution_time_ms: 2307, scan_time_ms: 0, rewrite_time_ms: 1447 }
Seconds: 2.362089
Test: multiple_insert_only_fileMatchedFraction_0.05_rowNotMatchedFraction_0.50 Sample: 0
Total File count: 2114
File sample count: 92
MergeMetrics { num_source_rows: 1533, num_target_rows_inserted: 1533, num_target_rows_updated: 0, num_target_rows_deleted: 0, num_target_rows_copied: 0, num_output_rows: 1533, num_target_files_added: 91, num_target_files_removed: 0, execution_time_ms: 2465, scan_time_ms: 0, rewrite_time_ms: 1590 }
Seconds: 2.516183
Test: multiple_insert_only_fileMatchedFraction_0.05_rowNotMatchedFraction_1.0 Sample: 0
Total File count: 2114
File sample count: 116
MergeMetrics { num_source_rows: 3748, num_target_rows_inserted: 3748, num_target_rows_updated: 0, num_target_rows_deleted: 0, num_target_rows_copied: 0, num_output_rows: 3748, num_target_files_added: 116, num_target_files_removed: 0, execution_time_ms: 2475, scan_time_ms: 0, rewrite_time_ms: 1613 }
Seconds: 2.5279317
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.01_rowNotMatchedFraction_0.1 Sample: 0
Total File count: 2114
File sample count: 104
MergeMetrics { num_source_rows: 386, num_target_rows_inserted: 359, num_target_rows_updated: 27, num_target_rows_deleted: 0, num_target_rows_copied: 970, num_output_rows: 1356, num_target_files_added: 91, num_target_files_removed: 23, execution_time_ms: 2540, scan_time_ms: 0, rewrite_time_ms: 1817 }
Seconds: 2.5945745
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.0_rowNotMatchedFraction_0.1 Sample: 0
Total File count: 2114
File sample count: 91
MergeMetrics { num_source_rows: 273, num_target_rows_inserted: 273, num_target_rows_updated: 0, num_target_rows_deleted: 0, num_target_rows_copied: 0, num_output_rows: 273, num_target_files_added: 85, num_target_files_removed: 0, execution_time_ms: 2109, scan_time_ms: 0, rewrite_time_ms: 1409 }
Seconds: 2.162729
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.1_rowNotMatchedFraction_0.0 Sample: 0
Total File count: 2114
File sample count: 109
MergeMetrics { num_source_rows: 354, num_target_rows_inserted: 0, num_target_rows_updated: 354, num_target_rows_deleted: 0, num_target_rows_copied: 2918, num_output_rows: 3272, num_target_files_added: 95, num_target_files_removed: 95, execution_time_ms: 2528, scan_time_ms: 0, rewrite_time_ms: 1826 }
Seconds: 2.5823224
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.1_rowNotMatchedFraction_0.01 Sample: 0
Total File count: 2114
File sample count: 110
MergeMetrics { num_source_rows: 370, num_target_rows_inserted: 36, num_target_rows_updated: 334, num_target_rows_deleted: 0, num_target_rows_copied: 2954, num_output_rows: 3324, num_target_files_added: 101, num_target_files_removed: 99, execution_time_ms: 2592, scan_time_ms: 0, rewrite_time_ms: 1866 }
Seconds: 2.6472437
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.5_rowNotMatchedFraction_0.001 Sample: 0
Total File count: 2114
File sample count: 109
MergeMetrics { num_source_rows: 1956, num_target_rows_inserted: 6, num_target_rows_updated: 1950, num_target_rows_deleted: 0, num_target_rows_copied: 1920, num_output_rows: 3876, num_target_files_added: 108, num_target_files_removed: 108, execution_time_ms: 2574, scan_time_ms: 0, rewrite_time_ms: 1856 }
Seconds: 2.628581
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_0.99_rowNotMatchedFraction_0.001 Sample: 0
Total File count: 2114
File sample count: 101
MergeMetrics { num_source_rows: 3150, num_target_rows_inserted: 5, num_target_rows_updated: 3145, num_target_rows_deleted: 0, num_target_rows_copied: 40, num_output_rows: 3190, num_target_files_added: 101, num_target_files_removed: 101, execution_time_ms: 2606, scan_time_ms: 0, rewrite_time_ms: 1837 }
Seconds: 2.661284
Test: upsert_fileMatchedFraction_0.05_rowMatchedFraction_1.0_rowNotMatchedFraction_0.001 Sample: 0
Total File count: 2114
File sample count: 120
MergeMetrics { num_source_rows: 3785, num_target_rows_inserted: 2, num_target_rows_updated: 3783, num_target_rows_deleted: 0, num_target_rows_copied: 0, num_output_rows: 3785, num_target_files_added: 120, num_target_files_removed: 120, execution_time_ms: 2620, scan_time_ms: 0, rewrite_time_ms: 1895 }
Seconds: 2.679585
Test: upsert_fileMatchedFraction_0.5_rowMatchedFraction_0.001_rowNotMatchedFraction_0.001 Sample: 0
Total File count: 2114
File sample count: 1036
MergeMetrics { num_source_rows: 72, num_target_rows_inserted: 39, num_target_rows_updated: 33, num_target_rows_deleted: 0, num_target_rows_copied: 1167, num_output_rows: 1239, num_target_files_added: 72, num_target_files_removed: 33, execution_time_ms: 2514, scan_time_ms: 0, rewrite_time_ms: 1785 }
Seconds: 2.5690942
Test: upsert_fileMatchedFraction_1.0_rowMatchedFraction_0.001_rowNotMatchedFraction_0.001 Sample: 0
Total File count: 2114
File sample count: 2114
MergeMetrics { num_source_rows: 152, num_target_rows_inserted: 84, num_target_rows_updated: 68, num_target_rows_deleted: 0, num_target_rows_copied: 5570, num_output_rows: 5722, num_target_files_added: 142, num_target_files_removed: 67, execution_time_ms: 2576, scan_time_ms: 0, rewrite_time_ms: 1873 }
Seconds: 2.630923

@Blajda does this perform both partition pruning and additional pruning based on source statistics as you mentioed in #1846 ? That would be great :-D

@thomasfrederikhoeck The optimizer will attempt to prune files based on the predicate. E.G If you have a predicate like s.id = t.id and t.partition in ("2023-12-17") then it push the predicate down to the scan.
#1958 takes it to the next level by determining distinct partition values that occur in the source and then prunes from the scan.

@Blajda  ah, ok. Thank you for explaing! I'm looking forward to trying them out!


Look-feel docs: script for use-cases to markdown and include in docs

No longer necessary - solution is to use jupyter nbconvert --to-markdown


add makefile

Makefile that:

pulls in dependencies (npm install, etc)
builds swagger stuff / runs the swagger test server
builds jsdoc
a rule for checking jshint/jslint rules

done.


Add to gitignore and eslintignore files.

Very minor stuff - eslint complains about the # in its config, and the addition to .eslintignore allows running .eslint in the base directory.
I added this to eslint --fix . the base directory to convert line endings, since they're CRLF in the repo, which causes a massive number of eslint failures. I can fix the line endings once in a separate pull request, but I need to understand the git settings a bit more first...

Hey @threehams!
Thanks for this.  I'm happy to merge this.
In terms of CRLF type issues, perhaps we should consider an EditorConfig?

I think a one-time correction would fix it. I'm just now sure how to do that correction - involves some git config settings.


Running segment_sinkhorn with different sinkhorn_kwargs for each segment

Is it possible to run segment_sinkhorn with different sinkhorn_kwargs for each segment?
For example, with two PoinClouds x and y, each with two segments: (x[0:1024], y[0:1024]) and (x[1024:2048], y[1024: 2048]) can segment_sinkhorn be used to run Sikhorn in parallel on (x[0:1024], y[0:1024]) and (x[1024:2048], y[1024:2048]) but with different sinkhorn_kwargs?
If this is not possible, would you consider adding this feature?
In particular, it would be useful to compute the sinkhorn_divergence with segment_sinkhorn while keeping the benefits of the particular sikhorn_kwargs to speed up the computation of symmetric terms.
More precisely, the computation of the sinkhorn_divergence between two PoinClouds x and y involves the computation of 3 transports, namely between the 3 segments: (x,y), (x,x) and (y,y). With segment_sinkhorn one could compute these 3 transports in parallel. On the other hand, the terms induced by the symmetrical segments (x,x) and (y,y) can be computed faster using sinkhorn_kwargs={parallel_dual_updates=True, momentum=0.5, chg_momentum_from=0, anderson_acceleration=0}. So to be optimal, we should be able to run segment_sinkhorn with these particular sinkhorn_kwargs for the segments (x,x) and (y,y) but not for the segment (x,y), hence the usefulness of being able to use different sinkhorn_kwargs.
Thank you very much!

Hi Théo, I don't see an obvious way to do this immediately, because this would require vmapping over a dictionary, e.g. things like: https://github.com/google/jax/issues/7430

There's one way, but it would require a lot of engineering (in order not to lose performance in the static case).
Currently, Sinkhorn contains only threshold as a child, so in principle, this can be vmapped over as:
import jax
import jax.numpy as jnp
from ott.solvers.linear import sinkhorn

solver = sinkhorn.Sinkhorn(threshold=jnp.array([1e-1, 1e-2, 1e-3]))
print(jax.vmap(lambda x: x.threshold)(solver))  # for demonstration; [0.1   0.01  0.001]

at the "cost" that threshold becomes traceable, so we cannot use it as a compile-time constant. We could do the same for other parameters (i.e., parallel_dual_updates), but currently, the code relies on the fact that this value is known at compile time. So in order to still maintain this + allow for vmapping, we'd need to do 2 things:

check if the variable is a compile time constant (easy)
handle the case when it's not (i.e., vmap); also easy (just writing lot's of lax.conds), but would require a lot of work (some tricks like here might help with code duplication, but not sure how much...)


Automate life cycling of ROSA clusters

rosa version 1.2.8
Users would like to automate ROSA cluster life cycling (create/edit/delete) from the current state of things which is manually create cluster either at  RH Console / ROSA cmdLine.
To automate life cycling ROSA clusters, it would be nice if-

there is an ROSA API that users can leverage and associated documentation
as simple as rosa any-cmd cluster -o json/yaml to write automation on a structured format

Hi @spaparaju please visit our project https://github.com/openshift-online/terraform-provider-ocm
You can also use the following API in order to create ROSA clusters (after creating account roles)
ocm post /api/clusters_mgmt/clusters --body <cluster_spec>

{
 "aws": {
        "sts": {
            "auto_mode": false,
            "instance_iam_roles": {
                "master_role_arn": "arn:aws:iam::<aws_account_id>:role/<role_prefix>-ControlPlane-Role",
                "worker_role_arn": "arn:aws:iam::<aws_account_id>:role/<role_prefix>-Worker-Role"
            },
            "operator_role_prefix":"<cluster_name>-<four_random_characters>",
            "role_arn": "arn:aws:iam::<aws_account_id>:role/<role_prefix>-Installer-Role",
            "support_role_arn": "arn:aws:iam::<aws_account_id>:role/<role_prefix>-Support-Role"
        },
        "account_id": "<aws_account_id>"
    },
    "ccs": {
        "enabled": true
    },
   "product": {
        "kind": "Product",
        "id": "rosa"
    },
    "region": {
    "id": "<cluster_region>"
  },
    "properties":{
        "rosa_creator_arn":"<user_arn>"
    },
    "name": "<cluster_name>"
 }

A cluster will be created in waiting mode, then run the following commands in order to start installation
$ rosa create operator-roles cluster -c <cluster_name>

$  rosa create oidc-provider cluster -c <cluster_name>


Replace hard-coded directory references by configuration values

In some places directories are defined as APPLICATION_ROOT.'/{hard-coded-value}'. As to not to enforce a pre-defined directory structure all such definitions need to be made configurable and resolved dynamically.
Known occurrences:
// MiniStruts::getConfigDir()
$dir = APPLICATION_ROOT.'/etc/config';

// FileSystemCache
$directory = APPLICATION_ROOT.'/etc/cache/'.$label;

// Module
$resourceDirectories[] = APPLICATION_ROOT.'/app/view';

// VersionedUrl
$fileName = APPLICATION_ROOT.'/www/'.$this->uri;

As a temporary improvement VersionedUrl() checks files for existence in 3 directories:
/public, /web and /www.
@see https://github.com/rosasurfer/ministruts/commit/08b346673bc3fa22a4678c6325b2a98b4f255c56


adding devcontainer setup

Adding devcontainer setup, it requires Visual Studio Code Insiders Edition.
For more details please read note here:
https://zikalino.github.io/blog/2019/06/10/setting-azure-cli-development-environment-using-visual-studio-code-remote-development-with-containers/
When this PR is merged I could also move the note (or parts of it) to become official documentation.
When the project is opened from VSC Insiders:

VSC will automatically build development container (after confirmation)
Developers will be able to start debugging (set a breakpoint, etc.) immediately after the container is ready. No additional steps are required

This provides very consistent development environment.
I think this PR is ready to be merged, I would like to use it in my daily work and continue testing.
Perhaps some things will change, for instance we may discover that the environment could be setup in more convenient way.
We could also refer ready-made image instead of Dockerfile, if we decide to have any prebuilt public dev image for VSC.

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

[ ] I adhere to the Command Guidelines.

@marstr for review since this is his wheelhouse.

Not really to do with this PR directly, but it's a good place to start a team-wide conversation. :) IMHO, I don't like to check-in dev environment specific code. If it were me, I'd be deleting the solution files and .vscode folder that are currently in the repository. In my mind they're just one more set of things to keep in sync, especially when not everybody is using the same tools.
Now that said, given that this seems a little more involved to get setup than most configuration files.. Maybe it makes sense to add an azdev command to setup containerized debugging for VS Code users?

@marstr Yes, you are right, that maybe we should consider whethere these files should be merged or not. I actually created this PR to start the discussion :-)
Perhaps I could move it to azdev.
Maybe we should remove all vscode specific files from here.
Also, while talking about azure-cli-dev-tools, i found sln file which I tried, but had to update, as it was outdated, which means it's not probably used by anyone, and I am probably going to use VSC anyway, so perhaps instead of updating it i should just delete it.

closing this one I will create another one with better solution


Add support for Test262 id tag

The maintainers of Test262 recently decided to encode specification
references with a version-independent id tag. Just like the es5id
and es6id tags before it, this tag has no effect on test execution.
Update the test parsing logic to tolerate th new id tag.

Thank you very much! :smile:

My pleasure :)


more boomerang functions should be added

boomerangs should be able to pick up items, activate levers and be shot through dispensers. i think this would be a neat feature to include, and if this dosent get added, honestly i don't care. thanks anyway!

Just implemented Boomerangs flipping buttons & levers, as well as Dispenser-shot Boomerangs in the latest update. Thank you for the great suggestions!


vol.at's embedded videos

Example:
$ youtube-dl -v "http://www.vol.at/blue-man-group/5593454"     [debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', 'http://www.vol.at/blue-man-group/5593454']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.12.14
[debug] Python version 3.4.2 - Linux-3.16.0-4-amd64-x86_64-with-debian-8.10
[debug] exe versions: ffmpeg 3.2.5-1, ffprobe 3.2.5-1, rtmpdump 2.4
[debug] Proxy map: {}
[generic] 5593454: Requesting header
WARNING: Falling back on generic information extractor.
[generic] 5593454: Downloading webpage
[generic] 5593454: Extracting information
ERROR: Unsupported URL: http://www.vol.at/blue-man-group/5593454
Traceback (most recent call last):
File "/home/ant/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 784, in extract_info
ie_result = ie.extract(url)
File "/home/ant/bin/youtube-dl/youtube_dl/extractor/common.py", line 437, in extract
ie_result = self._real_extract(url)
File "/home/ant/bin/youtube-dl/youtube_dl/extractor/generic.py", line 3063, in _real_extract
raise UnsupportedError(url)
youtube_dl.utils.UnsupportedError: Unsupported URL: http://www.vol.at/blue-man-group/5593454
Thank you in advance. :)

Seems to require local javascript execution (phantomjs). Not as easy as I hoped.

Is fixed with this commit: https://github.com/rg3/youtube-dl/pull/15672


Add tooltip to SpeakerCard icon links

Is your feature request related to a problem? Please describe.
Some icons on SpeakerCard are not obvious what they mean/link to.

Describe the solution you'd like
Add a tooltip on-hover for the icons with a label to what they mean (E.g. "Website", "Presentation video")
Ref: Vuetify tooltip

Describe alternatives you've considered
A text label for each link, but may get too long? Tooltips don't show on mobile though.

So the trouble with tooltips is they don't work on mobile at all. I get that there is an ambiguity between website and video links now. Perhaps text buttons for those will reduce the mystery meat?

I'd be fine with text labels as long as the design looks good with them 👍

Hey! Is this a feature you'd still like to have implemented?


rez-pkg-cache always stalls

When trying to cache SideFX labs, the copying always stalls
Environment

windows-10.0.19045.SP0
Rez version 2.112.0
Rez python version Python 3.9.13

To Reproduce

Download labs https://github.com/sideeffects/SideFXLabs/archive/refs/tags/19.0.426.zip
Install the package (see below)
Try to cache the sidefx labs package
It fails with the shutil error:

Traceback (most recent call last):
  File "C:\Program Files\Python39\lib\runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Program Files\Python39\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\opt\rez\Scripts\rez\rez-pkg-cache.exe\__main__.py", line 7, in <module>
  File "c:\opt\rez\lib\site-packages\rez\cli\_entry_points.py", line 190, in run_rez_pkg_cache
    return run("pkg-cache")
  File "c:\opt\rez\lib\site-packages\rez\cli\_main.py", line 191, in run
    returncode = run_cmd()
  File "c:\opt\rez\lib\site-packages\rez\cli\_main.py", line 183, in run_cmd
    return func(opts, opts.parser, extra_arg_groups)
  File "c:\opt\rez\lib\site-packages\rez\cli\pkg-cache.py", line 142, in command
    add_variant(pkgcache, uri, opts)
  File "c:\opt\rez\lib\site-packages\rez\cli\pkg-cache.py", line 74, in add_variant
    destpath, status = pkgcache.add_variant(variant, force=opts.force)
  File "c:\opt\rez\lib\site-packages\rez\package_cache.py", line 298, in add_variant
    shutil.copytree(variant_root, rootpath)
  File "C:\Program Files\Python39\lib\shutil.py", line 568, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
  File "C:\Program Files\Python39\lib\shutil.py", line 522, in _copytree
    raise Error(errors)
shutil.Error: [('\\\\truenas.nymus.local\\software\\packages\\sidefx_labs\\19.0.426\\platform-windows\\arch-AMD64\\SideFXLabs-19.0.426\\automation\\unittest\\baseline\\pivot_painter_demoscene\\ae1ad03442568b83f37bdf84004f926197bf56b817dddff422804f0c\\testfile__\\BrickWall_RGB_PivotPos_A_SelectionOrder_IntAsFloat_UV2.exr', 'C:\\ProgramData\\Rez\\cache\\sidefx_labs\\19.0.426\\6946\\a\\SideFXLabs-19.0.426\\automation\\unittest\\baseline\\pivot_painter_demoscene\\ae1ad03442568b83f37bdf84004f926197bf56b817dddff422804f0c\\testfile__\\BrickWall_RGB_PivotPos_A_SelectionOrder_IntAsFloat_UV2.exr', "[Errno 2] No such file or directory: '\\\\\\\\truenas.nymus.local\\\\software\\\\packages\\\\sidefx_labs\\\\19.0.426\\\\platform-windows\\\\arch-AMD64\\\\SideFXLabs-19.0.426\\\\automation\\\\unittest\\\\baseline\\\\pivot_painter_demoscene\\\\ae1ad03442568b83f37bdf84004f926197bf56b817dddff422804f0c\\\\testfile__\\\\BrickWall_RGB_PivotPos_A_SelectionOrder_IntAsFloat_UV2.exr'"), ('\\\\truenas.nymus.local\\software\\packages\\sidefx_labs\\19.0.426\\platform-windows\\arch-AMD64\\SideFXLabs-19.0.426\\automation\\unittest\\baseline\\pivot_painter_demoscene\\ae1ad03442568b83f37bdf84004f926197bf56b817dddff422804f0c\\testfile__\\BrickWall_RGB_XVector_A_Random0-1_UV2.tga', 'C:\\ProgramData\\Rez\\cache\\sidefx_labs\\19.0.426\\6946\\a\\SideFXLabs-19.0.426\\automation\\unittest\\baseline\\pivot_painter_demoscene\\ae1ad03442568b83f37bdf84004f926197bf56b817dddff422804f0c\\testfile__\\BrickWall_RGB_XVector_A_Random0-1_UV2.tga', "[Errno 2] No such file or directory: '\\\\\\\\truenas.nymus.local\\\\software\\\\packages\\\\sidefx_labs\\\\19.0.426\\\\platform-windows\\\\arch-AMD64\\\\SideFXLabs-19.0.426\\\\automation\\\\unittest\\\\baseline\\\\pivot_painter_demoscene\\\\ae1ad03442568b83f37bdf84004f926197bf56b817dddff422804f0c\\\\testfile__\\\\BrickWall_RGB_XVector_A_Random0-1_UV2.tga'")]

package.py
name = "sidefx_labs"

version = "19.0.426"

requires = ["houdini-19+"]

variants = [["platform-windows", "arch-AMD64"]]

build_requires = ["python-3"]

build_command = "python {root}/build.py"

uuid = "788291ea-56d4-11ed-8c87-e0d55e201446"

def commands():
    env.HOUDINI_PATH.prepend("{root}/SideFXLabs-19.0.426")

build.py

import os
import zipfile
from pathlib import Path

if __name__ == "__main__":
    sourcePath = Path(os.environ["REZ_BUILD_SOURCE_PATH"])

    if os.environ["REZ_BUILD_INSTALL"] == "1":

        binPath = Path(os.environ["REZ_BUILD_SOURCE_PATH"]) / "bin"
        installPath = Path(os.environ["REZ_BUILD_INSTALL_PATH"])
        buildPath = Path(os.environ["REZ_BUILD_PATH"])

        payload = "19.0.426.zip"
        targetFilePath = binPath / payload

        if not targetFilePath.exists():
            raise FileExistsError()

        if not zipfile.is_zipfile(targetFilePath):
            raise RuntimeError(f"Invalid zip archive {targetFilePath}")

        with zipfile.ZipFile(targetFilePath) as z:
            z.extractall(path=installPath)

Expected behavior
It should cache successfully
Actual behavior
It fails with the above error on the same two files. All other files seem to copy successfully.

My first bet would be the length of these paths is too long.

My first bet would be the length of these paths is too long.

Bingo. I really thought I had long paths enabled, but apparently not. I set the following registry key to 1:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\LongPathsEnabled
And in the future I'll be using hashed variants.
Thank you @JeanChristopheMorinPerso

You can also get ord of the SideFXLabs-19.0.426 folder.


Add UnsafeInheritance wart

I'm not sure about this one. I used a protected val with a default implementation in my Macramé library to allow the user to change the case-sensitivity of JSON decoding.

Indeed, simple boolean field can hardly cause any problems (the new rule doesn't forbid val overriding btw).
The same thing with null, for example. Many developers use it in the code, which even works fine for some time.
However, it's a quite common opinion that inheritance does cause problems:

A Study of The Fragile Base Class Problem
Substitution principle
Design Patterns: Inheritance versus Composition
Inheritance breaks encapsulation
etc

I'm well aware of the problems with inheritance but it is something we have to live with in Scala. While I used a Boolean in that example, I could have likewise provided a protected def caseConversion(s: String): String = identity and I don't see a problem with this pattern (and I've used it before).

Whoa, can you do that in Scala? def f(x: A): A = identity?

@michalrus I missed a (s) at the end there.

I'm going to close this one out for the reasons mentioned above but feel free to add it to https://github.com/wartremover/wartremover-contrib.


tor-browser-bundle-bin: 11.0.13 -> 11.0.14

Description of changes
Security release: https://blog.torproject.org/new-release-tor-browser-11014/

This version includes important security updates to Firefox.

Please add the security and backport-22.05 labels. Thanks!
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage

Result of nixpkgs-review run on x86_64-linux 1
1 package built:

tor-browser-bundle-bin

[X] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[X] Fits CONTRIBUTING.md.

Ping past reviewers/contributors: @FliegendeWurst @lourkeur

Result of nixpkgs-review pr 177583 run on x86_64-linux 1

1 package built:

tor-browser-bundle-bin


gibberellin 2-beta-dioxygenase activity merges

Looks like the 6 terms below should be merged into GO:0045543:
id: GO:0045543
name: gibberellin 2-beta-dioxygenase activity
namespace: molecular_function
def: "Catalysis of the reaction: a gibberellin + 2-oxoglutarate + O2 = a 2-beta-hydroxygibberellin + succinate + CO2." [GOC:kad, RHEA:15005]
synonym: "gibberellin 2-beta-hydroxylase activity" RELATED [EC:<IP_ADDRESS>]
synonym: "gibberellin 2-oxidase activity" EXACT []
synonym: "gibberellin 2beta-dioxygenase activity" RELATED [EC:<IP_ADDRESS>]
synonym: "gibberellin 2beta-hydroxylase activity" RELATED [EC:<IP_ADDRESS>]
xref: EC:<IP_ADDRESS>
xref: RHEA:15005
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
property_value: term_tracker_item "https://github.com/geneontology/go-ontology/issues/22382" xsd:anyURI

[x] GO:0102111 - 23 annotations - 1 EXP UniProt
id: GO:0102111
name: gibberellin A20,2-oxoglutarate:oxygen oxidoreductase activity
def: "Catalysis of the reaction: gibberellin A20 + 2-oxoglutarate + O2 = gibberellin A29 + succinate + carbon dioxide." [EC:1.14.11.-, GOC:pz]
xref: MetaCyc:RXN-113
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
=> MetaCyc says this is version of EC:<IP_ADDRESS> (GO:0045543 gibberellin 2-beta-dioxygenase activity)

[x] GO:0102924 - 23 annotations - 1 EXP UniProt
id: GO:0102924
name: gibberellin A44,2-oxoglutarate:oxygen oxidoreductase activity
def: "Catalysis of the reaction: 2 H+ + gibberellin A44 + 2-oxoglutarate + O2 = gibberellin A98 + succinate + carbon dioxide." [EC:1.14.11.-, GOC:pz]
xref: MetaCyc:RXN-886
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
=> MetaCyc says this is version of EC:<IP_ADDRESS> (GO:0045543 gibberellin 2-beta-dioxygenase activity)

[x] GO:0102652 - 23 annotations - 1 EXP UniProt
id: GO:0102652
name: gibberellin A9,2-oxoglutarate:oxygen oxidoreductase activity
def: "Catalysis of the reaction: gibberellin A9 + 2-oxoglutarate + O2 = gibberellin A51 + succinate + carbon dioxide." [EC:1.14.11.-, GOC:pz]
xref: MetaCyc:RXN-171
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
=> ~MetaCyc says this is version of EC:<IP_ADDRESS> (GO:0045543 gibberellin 2-beta-dioxygenase activity)~  gibberellin 3-beta-dioxygenase activity ; GO:0016707

[x] GO:0103055 - 2 annotations - only IEAs
id: GO:0103055
name: gibberelli A15, 2-oxoglutarate:oxygen oxidoreductase activity
def: "Catalysis of the reaction: gibberellin A15 + 2-oxoglutarate + O2 = gibberellin A24 + succinate + carbon dioxide + H2O." [EC:1.14.11.-, GOC:pz]
xref: MetaCyc:RXN1F-163
xref: RHEA:60780
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
=> MetaCyc just maps this to EC:1.14.11.- but it looks like another instance of EC:<IP_ADDRESS> (GO:0045543 gibberellin 2-beta-dioxygenase activity)

[x] GO:0103054 - 2 annotations - only IEAs
id: GO:0103054
name: gibberellin A12, 2-oxoglutarate:oxygen oxidoreductase activity (gibberellin A15-forming)
def: "Catalysis of the reaction: gibberellin A12 + O2 + 2-oxoglutarate = gibberellin A15 + carbon dioxide + succinate." [EC:1.14.11.-, GOC:pz]
xref: MetaCyc:RXN1F-162
xref: RHEA:60776
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
=> MetaCyc just maps this to EC:1.14.11.- ~but it looks like another instance of EC:<IP_ADDRESS> (GO:0045543 gibberellin 2-beta-dioxygenase activity)~ replace by gibberellin 20-oxidase activity ; GO:0045544.

[x] GO:0103056 - 2 annotations  - only IEAs
id: GO:0103056
name: gibberellin A53, 2-oxoglutarate:oxygen oxidoreductase activity
def: "Catalysis of the reaction: gibberellin A53 + O2 + 2-oxoglutarate = gibberellin A44 diacid + carbon dioxide + succinate." [EC:1.14.11.-, GOC:pz]
xref: MetaCyc:RXN1F-167
xref: RHEA:60800
is_a: GO:0016706 ! 2-oxoglutarate-dependent dioxygenase activity
=> MetaCyc just maps this to EC:1.14.11.- ~but it looks like another instance of EC:<IP_ADDRESS> (GO:0045543 gibberellin 2-beta-dioxygenase activity)~ gibberellin 20-oxidase activity ; GO:0045544.

There are more terms:
GO:0102714 gibberellin A12,oxoglutarate:oxygen oxidoreductase activity
GO:0102712 gibberellin A13,oxoglutarate:oxygen oxidoreductase activity
GO:0102715 gibberellin A17,oxoglutarate:oxygen oxidoreductase activity
GO:0102711 gibberellin A25,oxoglutarate:oxygen oxidoreductase activity
GO:0102716 gibberellin A28,oxoglutarate:oxygen oxidoreductase activity
GO:0102652 gibberellin A9,2-oxoglutarate:oxygen oxidoreductase activity
GO:0102972 gibberellin A12,2-oxoglutarate:oxygen oxidoreductase activity (gibberellin A110-forming)
GO:0102111 gibberellin A20,2-oxoglutarate:oxygen oxidoreductase activity
GO:0102663 gibberellin A34,2-oxoglutarate:oxygen oxidoreductase activity
GO:0102924 gibberellin A44,2-oxoglutarate:oxygen oxidoreductase activity
GO:0102653 gibberellin A51,2-oxoglutarate:oxygen oxidoreductase activity
GO:0103010 gibberellin A53,2-oxoglutarate:oxygen oxidoreductase activity (GA97-forming)
GO:0103054 gibberellin A12, 2-oxoglutarate:oxygen oxidoreductase activity (gibberellin A15-forming)
GO:0103057 gibberellin A19, 2-oxoglutarate:oxygen oxidoreductase activity
GO:0103056 gibberellin A53, 2-oxoglutarate:oxygen oxidoreductase activity
GO:0102755 gibberellin-15(closed lactone form),2-oxoglutarate:oxygen oxidoreductase (3beta-hydroxylating) activity
GO:0102738 (gibberellin-14), 2-oxoglutarate:oxygen oxidoreductase activity
GO:0102739 (gibberellin-36), 2-oxoglutarate:oxygen oxidoreductase activity
According to wikipedia, there are 136 GAs: https://en.wikipedia.org/wiki/Gibberellin
I suppose we may want to keep some major ones (if there are), but other terms that were not in the original list don't have annotations (see https://github.com/geneontology/go-annotation/issues/5445), so for now I will obsolete them.

Obsolete
GO:0047927
-name: gibberellin-44 dioxygenase activity
-namespace: molecular_function
-def: "Catalysis of the reaction: gibberellin 44 + 2-oxoglutarate + O2 = gibberellin 19 + succinate + CO2." [EC:<IP_ADDRESS>, MetaCyc:GIBBERELLIN-44-DIOXYGENASE-RXN]
-synonym: "(gibberellin-44), 2-oxoglutarate:oxygen oxidoreductase activity" RELATED [EC:<IP_ADDRESS>]
-synonym: "(gibberellin-44),2-oxoglutarate:oxygen oxidoreductase activity" RELATED [EC:<IP_ADDRESS>]
-synonym: "gibberellin A44 oxidase activity" RELATED [EC:<IP_ADDRESS>]
-synonym: "oxygenase, gibberellin A44 oxidase activity" RELATED [EC:<IP_ADDRESS>]
-xref: EC:<IP_ADDRESS>
-xref: MetaCyc:RXN1F-168
-xref: RHEA:16033
because it is an intermediate in gibberellin 20-oxidase activity GO:0045544, see PMID:32652020. No annotations, so associations in EC or in RHEA.

Another family:

[ ] GO:0102123  gibberellin A4 16alpha,17 epoxidase activity  - 0 annotations
def: "Catalysis of the reaction: gibberellin A4 + O2 + H+ + NAD(P)H = 16alpha,17-epoxy gibberellin A4 + H2O + NAD(P)." [EC:1.14.-.-, GOC:pz]
xref: MetaCyc:RXN-11385
[ ]  GO:0102124 gibberellin A12 16alpha,17 epoxidase activity - 0 annotations
namespace: molecular_function
def: "Catalysis of the reaction: gibberellin A12 + O2 + H+ + NAD(P)H = 16alpha, 17-epoxy gibberellin A12 + H2O + NAD(P)." [EC:1.14.-.-, GOC:pz]
xref: MetaCyc:RXN-11387
[ ] GO:0102125  - 0 annotations
name: gibberellin A9 16alpha,17 epoxidase activity
namespace: molecular_function
def: "Catalysis of the reaction: gibberellin A9 + O2 + H+ + NAD(P)H = 16alpha, 17-epoxy gibberellin A9 + H2O + NAD(P)." [EC:1.14.-.-, GOC:pz]
xref: MetaCyc:RXN-11388

MetaCyc states:

Although the exact biochemical reactions carried out by this enzyme have not been identified to date, based on comparisons with other cytochrome P450 enzymes, it is likely that NAD(P)H and O2 are involved in this reaction.

Based on the lack of understanding of the reaction and the ack of annotations, I will obsolete these as well.


Phase 1 dev

First draft for main.py (main tool file) and word_to_score.py (function to convert a word to its given point value). Code was reviewed casually by @Saiencoder (although he is not listed as a team member).

The commits you made have already been merged to our dev branch. At this time, no pull requests to merge into the master until the whole of phase 1 is complete. We'll then do a single pull request at the end.


CBOR - import not working

I am having difficulty in finding the CBOR encoder/decoder.
The following statement in the documentation does not work.
import {CborEncoder} from 'json-joy/es2020/json-pack/cbor/CborEncoder';
import {CborDecoder} from 'json-joy/es2020/json-pack/cbor/CborDecoder';
Any ideas?

JSON codecs have been moved to @jsonjoy.com/json-pack repository.
npm install @jsonjoy.com/json-pack


RFC: Fluffy-Unicorn

This is an attempt at a better object format for nimona. It's still a draft and work in progress but I've tested this enough to know that it might just work.
Fluffy-Unicorn is a placeholder for this format as I couldn't be bothered to come up with something.
Fluffy-Unicorn-Object is what we currently call a block, and this is our chance to change it to something better.
@alexmreis @jimeh @kootoopas @superdecimal would love your feedback and questions on this, either here or in private.

Conceptually this makes sense, and I can't see any reason for why it won't work.
But more details are needed in the spec so it can be used as a complete reference to implement the spec in any language without looking at any other existing implementations.

Notes from an "offline" discussion:

Not sure if schemas are even needed. But I agree with @alexmreis. Move them in a separate RFC when that time comes.
No comments about the hashing functions in use. Make this explicit and since there's no way of telling which function was used better use a single one for the whole specification (I'd go for a reduced SHA256 like SHA224)
Do not refer to strings but rather byte streams. Makes the whole document more crypto-like and more generic. However you have to look at byte order for numbers that need more than a single byte (cf. comment 4 below).
How do you encode integers or numbers in general ? Turn them into strings ? Encode the bytes ? Is this big endian or little endian ? Choose one as this affects the hashing too. This is also relevant to redacting. Suggest using big endian when turning the value into a byte stream as this is used for networking in general.
What is the right order of hashing an object after we sort the keys ? Do we turn the sorted keys and their values into consecutively like key1value1key2value2... into a byte stream or do we go for key1key2...value1value2... ? Clarify this. (edited)


small fixes for serac codevelop builds

Looks good. Can you create an issue about the TRIBOL_DEBUG and TRIBOL_DEBUG_LOG and updating/deprecating when we update the logging.

It's been added to #14.


Incorrect key master teleport location in Waterbirth dungeon

Describe the bug
The worldmap plugin incorrectly displays a keymaster teleport on sub-level 4 of the Waterbirth dungeon.
To Reproduce

Open worldmap
Go to Waterbirth Dungeon

Expected behavior
Teleport location should not be there.
Screenshots

Environment

OS:  Windows 10
RuneLite version: <IP_ADDRESS>
Launcher version: 2.1.3

I just checked and the world map overlay system does think they are in the same location. World map dungeons have never been properly implemented. They are internally consistent but do not always map to actually correct world positions.

I just checked and the world map overlay system does think they are in the same location. World map dungeons have never been properly implemented. They are internally consistent but do not always map to actually correct world positions.

Short of fixing this internally (which is unlikely given the client's world map code is crazy) we could  limit icons appearing in certain dungeons to only show with the specific dungeon selected.

Short of fixing this internally (which is unlikely given the client's world map code is crazy) we could  limit icons appearing in certain dungeons to only show with the specific dungeon selected.


Missing Examples

Examples section has not been filled out.

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

ID: 49fd66d7-4607-7c61-2d7d-ff71272c587c
Version Independent ID: 77d487a4-b22c-49d1-123b-4c07f45eaa57
Content: Invoke-ComplianceSearchActionStep (exchange)
Content Source: exchange/exchange-ps/exchange/policy-and-compliance-content-search/Invoke-ComplianceSearchActionStep.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

@grandpappy1224, thanks for the feedback. Apparently, this cmdlet relates to a feature that isn't ready yet, so I've change pretty much everything in the topic to say, "This cmdlet is reserved for internal Microsoft use."


Added SHA-1 Algorithm Fixes #1

Added code that enables support for sha-1 algorithm Fixes #1

@PhoenixFlame101 please take a look

any update @PhoenixFlame101?

SHA-256 throws an exception, and MD5 and SHA-1 are both returning nothing

Fixed the issues. Check once more @PhoenixFlame101

Functions work fine, so that's good! Here's some remaining issues that need to be cleared up:

Warn from cargo on line 55
Remove the checksum file from the commit

made the changes, @PhoenixFlame101

Good job!

!bounty 30


Feature Suggestion: Ability to preview versions in stack, global area and full sitemap

Prior to 5.6, the preview of versions are embedded onto version window, so that the stack and global area could preview the versions.
Since 5.7, the preview only works for page, you are not able to preview the versions from the stacks, global area and full sitemap page.
Full sitemap page is not a big deal.
But it would be a bit hard that stack and global area won't be able to preview the past and future versions.
Perhaps, we could re-do the pop-up preview option like 5.6?

+1 for Stacks.

Yeah, that would be a good addition.


Support manifest with no validation.

To support signing dlls on e2e builds, we need to get the list of potential assemblies from a module even if they were not built. The reason is that all built dlls need to be signed, but we don't build all assemblies in all submodules all the time (only a subset).
With this change the module can report the list of dlls it may generate and in the QDK we will check if the dll was built and sign it if necessary.
We will still validate that the dlls for the module getting built are generated.

/azp run

/azp run

/azp run


keep the form invalid while debounce is executed ng-model-options

Hi,
I have a little problem. I can not keep the form invalid while the debounce is executed. I want to prevent the form submit.
To have the button ng-disable="pending (only works after debounce is called / async validator is processed), invalid (the previous state is used when we are in debounce)" doesn't works because the user can press the button before the debounce is ended.
here my code:
.directive('unique', function (audioguidesService, $q) {
    return {
        require: 'ngModel',
        link: function (scope, elm, attrs, ctrl) {
            ctrl.$asyncValidators.example1 = function (modelValue, viewValue) {
                var value = modelValue || viewValue;

                var filters = {
                    "groupOp": "AND",
                    "rules": [
                        { "field": "field1", "op": "eq", "data": value },
                    ]
                };

                var defer = $q.defer();

                service.getData({ page: 1, rows: 100, filters: filters }).then(function (data) {
                    if (data.rows.length > 0) {
                        if (data.rows[0].id != scope.model.id) defer.reject();
                    }
                    defer.resolve();
                }, function () {
                    defer.resolve();
                });

                return defer.promise; //it works correctly after the async function ends
            };
        }
    };
});

<input type="text" class="form-control" name="field1" ng-model="model.field1" required unique ng-model-options="{debounce: 600}">

Regards,

This is a general trade-off when using a debounce: the forms validity might not be accurate based on the latest values. This isn't specific to async validators. If you care about showing up-to-date validity info to your users, then you should probably not use debounce.
BTW, if you are using debounce in order to debounce the async validator (e.g. minimize calls to the backend), you could incorporate debouncing in your async validation logiv instead.

Anyway, this sounds more like a general support question. Please, use one of the appropriate support channels for these types of questions.
GitHub issues are reserved for bug reports and feature requests.
Closing as this is not actionable as is. Feel free to reopen if you want to suggest a feature or found an actual bug.

Thanks @gkalpak I resolved using this http://stackoverflow.com/questions/33088856/debounce-on-only-one-validator#answer-33103155

@danicomas, yes, that's what I had in mind.
BTW, if you find yourself needing debouncing in several places, you can write a simple debounce factory (or use a library) and avoid the boilerplate every time.


I am not sure if it is a feature request. My requirement is I want to add another icon to the left side of the navigion toggle button

I am not sure if it is a feature request. My requirement is I want to add another icon to the left side of the navigation toggle button.
https://clarity.design/documentation/vertical-nav/collapsible-nav/normal
I am not able to replace the toggle button with normal button and I want open and hide  of menu on hover. The minute I place:
(mouseenter)="collapsed = false;" (mouseleave)="collapsed = true;"
from clr-vertical-nav to button.
I lose the capacity to hide and open menu on hover.
How can I replace inbuilt toggle button generated by Clarity with normal button?, So that I can add another button to the toggle button?
Possibly a stackblitz sample would be helpful

Hi @digish777 - yes, a stackblitz that demonstrates what (and how) you are trying to achieve this would be helpful.
Also, please use the issue template so we have enough information to properly triage and investigate this. Issue templates are here. You can update the description with the details when you provide the stackblitz. THanks.

@digish777 - I'm revisiting this and I made a simple stackblitz with the vertical nav. As I look at it it seems like this would be a feature request. Can you update the issue to include some details for the use case(es) that require adding more icons to the vertical nav?
Currently the implementation is that the toggle button takes up the horizontal space so that the user can click on the whole width and activate the expand/contract behavior. This change would introduce multiple click targets and that changes the UX for this behavior.

I made an html div and made it float to the very left. It did task. I placed a pin in the div. My requirement was to make the menu stay when the pin was clicked. Because I could not find a template to open up the header and place the pin in the left section of the header. I had to rely on floating div. I hated to do it. as I do not trust floating div.

Thanks for the extra information. It is something we need to consider.


Write a Python program to find square root of a number

Description
Write a Python program to find square root of a number
Square root of a number is the number that when multiplied by itself gives the original number. For example, square root of 4 is 2 because 2 * 2 = 4. Similarly, square root of 9 is 3 because 3 * 3 = 9.
Input  : 4
Output : 2

How to contribute

Save the solution in program/find-square-root-of-a-number.py file
Add find-square-root-of-a-number.py file in find-square-root-of-a-number folder

!assign


Will there be a GUI like Emacs?

And you can draw something per pixel rather than per character.

hi @BreakingLead, there's no such plan for now. Too much feature is not implemented yet.