Wrong namespace in advanced app backend unit test classes

Sorry if I'm mistaken (haven't done anything test-related in a while now), but shouldn't these be in a namespace tests\codeception\backend\unit?
https://github.com/yiisoft/yii2-app-advanced/blob/master/tests/codeception/backend/unit/TestCase.php
https://github.com/yiisoft/yii2-app-advanced/blob/master/tests/codeception/backend/unit/DbTestCase.php

can be moved for consistency however works now since there is a backend namespace

There is a backend namespace, but the files I mentioned are not in namespaces that correspond to their location. That means that autoload will not be able to find them.

yii2 - advanced is currently being used on travis . Feel free to submit PR


Update nugets, fix serilog config

After updating a bunch of the nugets, the app now runs locally again.

The updates to AppInsights will give us a lot more detail :)


[PT-BR] disableReferencedProjectLoad.md

Translation of the last file of tsconfig section

disableReferencedProjectLoad.md

tagging @khaosdoctor, @alvarocamillont, @danilofuchs e @orta as instructed on #233

lgtm


SAK-46273 Turnitin > files over 100mb should be rejected before attempted submission

https://jira.sakaiproject.org/browse/SAK-46273

This led me down a rabbit hole... turns out, the only library I could find that would handle the "Too Large" case was Apache's HttpAsyncClient since it has non-blocking IO. I also took the liberty to make the request method use the more common method for making requests for this library.
I tested locally with several examples and all looks fine. I'm not 100% sure about production level traffic. It uses the default client settings (just like the previous code).

So when I created this JIRA I had a bit of a different idea in terms of implementation. As the title suggestion, I don't like that these files are even submitted to TII. It's already known that they're too big, so we shouldn't even bother submitting it. Also the error message here is still misleading:

An error occurred submitting this item to the originality checking service. The system will automatically try to re-submit this item. Troubleshooting information: 413: Payload Too Large

This could leave the user with the impression that the system will attempt to resubmit the item, and there doesn't need to be any action from the user.
I think a better use case for this would be to not upload the submission at all. Once the file is determined to be too large, abort then and there, don't send it to TII. The error message should be something like "This file is too large. Files larger than 100mb cannot be submitted to Turnitin. Please upload a different file."
It should not continuously attempt to submit the file when it's too big.

I agree with most of what you are requesting. A few issues I have are with the 100MB pre-check:
-There isn't a hook in the content review service to provide max filesize limit (maybe we should add one). Would you want the student to not be able to submit the file or just give them a warning?
-The assumption that 100MB is static (and no way of providing this dynamically, at least in TII's API)

It's already known that they're too big
There isn't a way to know the file size limit dynamically... we can assume the 100MB limit and hard code it, but it could change

error message here is still misleading
I can see if I can make this cleaner (without mentioning 100MB)

It should not continuously attempt to submit the file when it's too big.
agreed

In all cases, these requests should build on top of this PR since it still improves the handling for the httpclient requests. Should we create a new Jira or hold off on this PR?

I don't think we need a new JIRA. It would be great if this work was all done here (sorry).
I think hard-coding the 100MB limit in Sakai is fine. If TII changes it at a later date, we can change it too. Also, if we have the limit hard coded, then you can include it in the error message so that students are aware of the file size limit, and aren't just uploading random file sizes in the hopes that something works.

Would you want the student to not be able to submit the file or just give them a warning?

The submission in Assignments should be allowed, in case the instructor wants to see what the student submitted. Only the TII error message should indicate the file is too big, and won't be uploaded to TII as is (tell them they need to provide a file under the 100mb limit in order to upload it to TII).

The submission in Assignments should be allowed, in case the instructor wants to see what the student submitted. Only the TII error message should indicate the file is too big, and won't be uploaded to TII as is

This sounds like what is already happening, except currently with a less helpful error message. If I do the following, would this satisfy your requirements:
-Update the error message to say the file is too large with a static 100MB stated limit
-Update the error handling so that it doesn't say it will retry (I'm not 100% sure if that is something I can change, it may be an automatic error message and retry mechanism from content-review service)

I'm not sure about how the new integration works, but in previous incarnations you could just avoid putting the item in the queue and give it any error message and status you wanted in the code.
What we're trying to achieve here is to not submit the paper to TII if the paper has a known issue (like file is too big). There's not much point in putting it in the queue and retrying it indefinitely if the file is over the limit.
If it's not possible to check file size before attempted upload to TII, this would be surprising to me. If this is actually the case, and the only option we have is to submit it to TII and then tell the user the problem and lie to them that it won't be retried, then I guess that's the lowest common denominator. That said, I would prefer that it not enter the queue at all, and we just put a static error message on it saying "File is over X limit for uploading to Turnitin...." etc etc

What we're trying to achieve here is to not submit the paper to TII if the paper has a known issue (like file is too big). There's not much point in putting it in the queue and retrying it indefinitely if the file is over the limit.

I think it only matters what the user's experience is. If we are not trying to warn them or prevent them from submitting and we are only concerned about notifying them of the TII error after submission, then I think the queue is the best place to handle this. This way, it will be self contained inside the content-review service and we won't have to make assumptions for file size by relying on the process to upload the papers and get the failed status from the API. From TII's integration perspective, its relatively cheap to try to upload and fail immediately (it fails before the file is even uploaded by inspecting the content-length header). I agree we should fix the error messaging and stop reattempts after we get the 413 error from the API. Also, by keeping it in the queue, we can retain the error data in the database for reporting/debugging.

Okay, thanks for the explanation. I think that sounds reasonable.


Improvements to curation tool

Codecov Report

Merging #178 (1787b78) into master (0849943) will not change coverage.
The diff coverage is 33.33%.

Codecov Report

Merging #178 (1787b78) into master (0849943) will not change coverage.
The diff coverage is 33.33%.

Looks good to me. Ready to merge if this PR is complete

Looks good to me. Ready to merge if this PR is complete

@bennybp yeah you can merge; there may be more changes later on

@bennybp yeah you can merge; there may be more changes later on


Allow non overlapping annotations

The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge.
 ↑  └──┬───┘          └───┬───┘                 ↑
 │     └─ adjective       │                     └─ comma
 │                        │
 └─ article               └─ facts, information, and skills acquired
                             through experience or education;
                             the theoretical or practical understanding
                             of a subject.

Version v.0.4.0 has ranged annotations. This can also be seen the example in the README.md.


Add system level spot test cases in the nirfmxwcdma_driver_api_tests.cpp

What does this Pull Request accomplish?
Add RFmx WCDMA system level spot test cases in system API test.
Why should this Pull Request be merged?
AB#2280303
What testing has been done?
Run RFmx WCDMA system session test cases and system API test cases in Windows with RFmx 23.00 version driver. All test cases pass

LGTM


Incomprehensible Map

Why do we have aggregations for the whole country for Poland and for Ukraine per region? The average user will think that Ukraine will start with fewer cases than Poland

#55 duplicate

#55 duplicate


Add an audit log for any page

There's a placement link on the edit content page marked "History". Should show who/when/what was edited about that page.
An old dummy template for that is here: https://github.com/codeforamerica/bizarro-cms/blob/master/prototype/history.html

Old dummy template is actually here: http://jekit.codeforamerica.org/codeforamerica/ceviche-cms/ba9b2d708/prototype/history.html

Check out work in progress on branch add-page-audit-log-#19.

 See sketchy for {{path}} - if you can make that go, we can call this one a day and move over to #49 for the rest!


Module: claranet/support/azurerm

Module Repository
https://github.com/claranet/terraform-azurerm-support
DCO

[X] I sign this project's DCO

Thanks for the submission @rossifumax 🙏


Error Unmarshalling Response

Hello,
I'd just like to raise an issue I've discovered.  At least occasionally, when making a query for a report I've seen an unmarshalling issue where the struct requires a float32 but a value of "NaN" string is returned.  Understandably this type mismatch causes an issue.  Since the json and the struct definition are not compatible the entire content of the response is lost.
https://github.com/adobe/aa-client-go/blob/23c70ca292246808be81056ae7e75db4fb5a6973/analytics/reports-types.go#L177

"According the API spec the data property is supposed to be a Number array holding double values."
Exactly, but the response, at least occasionally, returns strings as well, which causes issues.  Ideally the API would adhere to it's spec, but I would like to see this client be more resilient (it would certainly make it more usable).


Jesse: Watch<PHONE_NUMBER>0

Jesse requests the watch of the watch_number<PHONE_NUMBER>0. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Jeff Schaller in Charcoal HQ


Websocket are not working on 0.13.5

Hello,
It took me time to understand as it is the first time I am using this lib (awesome btw, thanks for all the hard work :), but websocket are not working on version 0.13.5, the status never pass the "isConnecting".
I find out that the example are not currently working either:
https://laminext.dev/websocket/example-websocket-echo
give the error
Error(scala.scalajs.js.JavaScriptException: SyntaxError: Failed to construct 'WebSocket': The subprotocol '' is invalid.)

which is i guess related to a recent commit.
Switching to 0.13.0 fixed the issue for me

@ylaurent thanks so much for reporting this! Yes, this indeed appears to be related to the latest change (which added the second parameter to the native Websocket, which is exactly the subprotocol).
I'll fix this and release the updated version asap.

nice, thank you very much :) 👍

Woops, my bad. Thanks for the fix @yurique

@ghostdogpr no worries! I should have at least checked that the example kept working :) (also, I would have uncommented the websocket-circe example sooner, as well)

0.13.6 is published, should get to maven central in ~15 min.


Add stock-taking functionality

Via IdeaScale:

Stocktake would measure scanned (or sighted) inventory against the master inventory database, resulting in a subtractive list of unsighted inventory. This would help Equipment Loan Office staff quickly and efficiently perform inventory checks for large volumes of equipment. The master list would cull from inventory database for an independent department, to measure its inventory separately from other departments (Bass Media Library would be measured separately from School of Art ELO, for instance).

We could just add this functionality on top of the existing app. It's basically a new set of actions we'd perform to allow admins to basically go through the inventory of equipment items and mark each one off as "present". Maybe we just add a new attribute to the EquipmentItem model for last-seen or even an array of "seen" dates so that we can track each items presence over time.

Definitely still wish list material.


HBASE-25817 Use GuavaCache in thrift server hashmap

When opened scanner is not properly closed, it remains scannerMap forever.
To resolve this problem, make scannerMap to Guava Cache so that can be expired on set time.
https://issues.apache.org/jira/browse/HBASE-25817

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 27s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m  1s
master passed

+1 :green_heart:
compile
1m  0s
master passed

+1 :green_heart:
checkstyle
0m 40s
master passed

+1 :green_heart:
spotbugs
1m 26s
master passed

_ Patch Compile Tests _

-1 :x:
mvninstall
3m 18s
root in the patch failed.

-1 :x:
compile
0m 14s
hbase-thrift in the patch failed.

-0 :warning:
javac
0m 14s
hbase-thrift in the patch failed.

-0 :warning:
checkstyle
0m 39s
hbase-thrift: The patch generated 5 new + 0 unchanged - 0 fixed = 5 total (was 0)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

-1 :x:
hadoopcheck
2m 29s
The patch causes 10 errors with Hadoop v3.1.2.

-1 :x:
hadoopcheck
5m  8s
The patch causes 10 errors with Hadoop v3.2.1.

-1 :x:
hadoopcheck
7m 44s
The patch causes 10 errors with Hadoop v3.3.0.

-1 :x:
spotbugs
0m 14s
hbase-thrift in the patch failed.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 38s
master passed

+1 :green_heart:
compile
0m 57s
master passed

+1 :green_heart:
checkstyle
0m 39s
master passed

+1 :green_heart:
spotbugs
1m 21s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 38s
the patch passed

+1 :green_heart:
compile
0m 58s
the patch passed

-0 :warning:
javac
0m 58s
hbase-thrift generated 1 new + 34 unchanged - 0 fixed = 35 total (was 34)

-0 :warning:
checkstyle
0m 41s
hbase-thrift: The patch generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
17m 50s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1 3.3.0.

+1 :green_heart:
spotbugs
1m 34s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 12s
The patch does not generate ASF License warnings.

39m 48s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3257/2/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3257

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile

uname
Linux fd8c72885d5e 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 630c73fda4

Default Java
AdoptOpenJDK-1.8.0_282-b08

javac
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3257/2/artifact/yetus-general-check/output/diff-compile-javac-hbase-thrift.txt

checkstyle
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3257/2/artifact/yetus-general-check/output/diff-checkstyle-hbase-thrift.txt

Max. process+thread count
96 (vs. ulimit of 30000)

modules
C: hbase-thrift U: hbase-thrift

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3257/2/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


api [nfc]: Small cleanups in event classes

I made these small cleanups en route to a more interesting refactor that I ended up deciding we probably don't want. (Will send that as a separate draft PR.) But these bits are good, so might as well keep them.

Thanks, LGTM! Merged.

Thanks!

a more interesting refactor that I ended up deciding we probably don't want. (Will send that as a separate draft PR.)

Sent this as #202.


[Request] Trigger completion also on Ctrl-x

This message occurs frequently in the helix-gpt log file:
skipping |  | not in | {,(,),=,>, ,,,:,.,<,/

I'm assuming its related to what you describe in your comment on the Helix thread about how helix-gpt works.
Obviously, it makes total sense not to be sending completion requests every key press. It would be useful, however, to be able to trigger a request manually with the builtin Ctrl-x keybinding for autocompletion (which I spam all the time).
Without it, use cases like the following (i.e. code generation based on a description) remain out of reach.
# function that takes a number x and multiplies it by 2
.. def double(x [...]

Also, I imagine that the set of characters/keywords that signal sensible contexts for auto-fetching completions varies depending on programming languages.
Of course, all this depends on whether LSP servers are able to differentiate between automatic requests and manually triggered requests. Any ideas?

Hey thanks for the suggestion. I've removed the check for the trigger character, which allows you to use ctrl + x now. Will be available in the next release.

Added in 0.10

Awesome, thanks! :) I can confirm it works (minus other problems currently being debugged).


Add JointPositionControlFollower() Example Code

Great work! Is it possible to upload an example code for the implementation of JointPositionControlFollower?

Thanks for your interest. Please find this code snippet for the implementation. Our controller is based on deoxys, so you probably also need to install it. Other Franka control libraries such as polymetis may also work.
import time

import numpy as np
from deoxys.franka_interface import FrankaInterface

class JointPositionControlFollower:
    def __init__(
        self,
        robot_interface: FrankaInterface,
        controller_cfg,
        max_steps: int = 100,
    ):
        self.robot_interface = robot_interface
        self.controller_cfg = controller_cfg

        # joint position goal
        self._q_goal = None

        self._goal_arrived = False

        self._gripper_action = None

        self._max_steps = max_steps
        self._elapsed_steps = 0

        self._prev_gripper_action = None

    @property
    def is_goal_arrived(self):
        return self._goal_arrived

    def set_new_goal(self, new_q_goal, gripper_action):
        assert len(new_q_goal) == 7
        self._q_goal = np.array(new_q_goal)
        self._goal_arrived = False
        self._gripper_action = gripper_action
        self._elapsed_steps = 0

    def control(self):
        assert self._q_goal is not None and self._gripper_action is not None

        action = np.concatenate(
            [
                self._q_goal,
                [
                    self._prev_gripper_action
                    if self._prev_gripper_action is not None
                    else -1
                ],
            ]
        )
        self.robot_interface.control(
            controller_type="JOINT_POSITION",
            action=action,
            controller_cfg=self.controller_cfg,
        )
        self._elapsed_steps += 1

        curr_q = self.robot_interface.last_q
        q_error = np.abs(curr_q - self._q_goal)
        if np.max(q_error) > 1.5e-3 and self._elapsed_steps < self._max_steps:
            self._goal_arrived = False
        else:
            self._goal_arrived = True
            # finally control gripper if different from previous action
            if (
                self._prev_gripper_action is not None
                and self._prev_gripper_action != self._gripper_action
            ):
                self.robot_interface.gripper_control(self._gripper_action)
            self._prev_gripper_action = self._gripper_action

            return

Thank you! It is very helpful!


GTT-894: Modified the file input component to meet the UX wireframe

Description
This ticket was to meet the wireframe for what the file input component looks like when a file is selected. If you go to this link, you will see that by default this component matches the wireframe. However, because this component is using javascript to hide and show different classes, this does not work with react. Since with react you cannot modify the dom once its displayed. The dom will only change if you modify a state attribute.
Upon inspecting the site, you can see the classes that it is toggling in order to display the image like the wireframe. In this change, I manually show these classes as a function of the file state variable. I also added come CSS to get the label and file logo to align properly. In addition, in order to get the file icon, I used font awesome.
Only concerns are that we are adding additional dependency on external CSS. This component will already break if the CSS changes, this change would be adding additional dependency on the external CSS. We would need to be careful with updating uswds.
Below is what the interface looks like now.

Testing
Tests pass, initial tests to the front end look good.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Also, what do you mean when you say that we are "adding additional dependency on external CSS"? What you did here seems fine to me. I'm not sure I understand why this would break if USWDS changes.

Sorry, maybe I was being confusing. But for example, if usa-file-input__preview changes in the CSS from USWDS, it could potentially break our UI. Since I did some CSS around it.


Controllers not being displayed : Page not found error.

Hello, There's a bug that's been around for a while now.
It seems Vapor can't route resources with controllers anymore.
When I use the new syntax  as provided in the vapor-example :
let users = UserController(droplet: drop) drop.resource("users", users)
It's supposed to return for the following route : http://localhost:8080/users
the index page of the controller which contains the following JSON :
{ 'controller' : 'UsersController.index' }
However it returns, and for every other actions on the controller :
{"error":true,"message":"Page not found"}
I think the error has been around since Vapor 0.8.0 however it is still here with the new Droplet syntax.
I use macOS Sierra ß2 with Xcode 8.

I also am getting this on El Capitan and Xcode 8 Beta 2 running with the 6-20 snapshot

This has been fixed in the latest Vapor example.


Do not ignore configure errors

Changelog entry
Configure errors are ignored if -k specified.
Additional call without any compilation was added to handle that situation.
Changelog category

Not for changelog (changelog entry is not required)

Additional information
Check is here: https://github.com/ydb-platform/ydb/pull/6076

It was fixed in
https://github.com/ydb-platform/ydb/pull/6080


HDFS-15944. Prevent truncation by snprintf

Need to ensure that the destination
buffer size is greater the source content.
Truncation could happen otherwise.
snprintf returns the size to be written
when we pass NULL for destination buffer
and 0 for the size of the destination
buffer.
We will use this information to ensure
that the source content doesn't exceed
the destination buffer's size before
making the call to write.

This PR fixes the warnings reported as part of https://github.com/apache/hadoop/pull/2792 in CI run https://github.com/apache/hadoop/pull/2792#issuecomment-812174669
[ 62%] Building C object main/native/libhdfspp/tests/CMakeFiles/libhdfs_threaded_hdfspp_test_shim_static.dir/__/__/libhdfs-tests/expect.c.o
[ 62%] Building C object main/native/libhdfspp/tests/CMakeFiles/libhdfs_threaded_hdfspp_test_shim_static.dir/__/__/libhdfs-tests/test_libhdfs_threaded.c.o
/mnt/c/Users/Gautham/projects/apache/wsl/hadoop/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfs-tests/test_libhdfs_threaded.c: In function ‘doTestHdfsOperations’:
/mnt/c/Users/Gautham/projects/apache/wsl/hadoop/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfs-tests/test_libhdfs_threaded.c:226:39: warning: ‘/many_files_’ directive output may be truncated writing 12 bytes into a region of size between 1 and 4096 [-Wformat-truncation=]
  226 |       snprintf(filename, PATH_MAX, "%s/many_files_%d", listDirTest, nFile);
      |                                       ^~~~~~~~~~~~
/mnt/c/Users/Gautham/projects/apache/wsl/hadoop/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfs-tests/test_libhdfs_threaded.c:226:7: note: ‘snprintf’ output between 14 and 4119 bytes into a destination of size 4096
  226 |       snprintf(filename, PATH_MAX, "%s/many_files_%d", listDirTest, nFile);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 37s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s

The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
33m 26s

trunk passed

+1 :green_heart:
compile
2m 47s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
2m 55s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
mvnsite
0m 27s

trunk passed

+1 :green_heart:
shadedclient
52m 59s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 16s

the patch passed

+1 :green_heart:
compile
2m 27s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
cc
2m 27s

hadoop-hdfs-project_hadoop-hdfs-native-client-jdkUbuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 generated 0 new + 11 unchanged - 27 fixed = 11 total (was 38)

+1 :green_heart:
golang
2m 27s

the patch passed

+1 :green_heart:
javac
2m 27s

the patch passed

+1 :green_heart:
compile
2m 32s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
cc
2m 32s

hadoop-hdfs-project_hadoop-hdfs-native-client-jdkPrivateBuild-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08 with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08 generated 0 new + 11 unchanged - 27 fixed = 11 total (was 38)

+1 :green_heart:
golang
2m 32s

the patch passed

+1 :green_heart:
javac
2m 32s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
mvnsite
0m 20s

the patch passed

+1 :green_heart:
shadedclient
13m 14s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
31m 44s

hadoop-hdfs-native-client in the patch passed.

+1 :green_heart:
asflicense
0m 34s

The patch does not generate ASF License warnings.

107m  3s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2853/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2853

Optional Tests
dupname asflicense compile cc mvnsite javac unit codespell golang

uname
Linux 206a7b3b2ed3 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 1f46f98257dc462c79218ab17081fc3f88c2d076

Default Java
Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2853/1/testReport/

Max. process+thread count
607 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs-native-client U: hadoop-hdfs-project/hadoop-hdfs-native-client

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2853/1/console

versions
git=2.25.1 maven=3.6.3

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.


Let admins change accrediting provider

Adds the ability for admins to change the accrediting provider of a trainee.
When signed in as an admin, users get a 'change' link on the accrediting provider row, leading them to a new flow.
Trainee summary card:

Edit page:

Confirm page:

Success banner:

To test:
Go to prototype settings and turn on admin mode. From there, navigate to a trainee and change their provider.

 Prototype: trainees transferring from Org A to Org B

So, should it go blank once you click on it as opposed to still having the provider name?
It's useful to know what the old provider was, but when I click on it I can't see any others, till I backspace whats there. Just wondering.
I wonder if we need to flag any content to make it very obvious to Support that this could lead to a data breach too, if the provider is changed to an incorrect provider.
I could see them trying to change a lead school, and getting confused and changing the accredited provider instead for example.

Made a few changes:

Autocomplete does not pre-fill the existing provider as they're fiddly to change values on.
I've included the current provider's name in the intro content.
Warning added on the confirmation page.

This looks great. Do we need to have a ticket to write the content for the notification?
Also, does Register have automated notifications yet (I think not but just checkin'), or is it something we should ask Support to send in these instances?

Sorry if this is a dumb question, but is the text... spacing, meant to be tighter here? Is that a design pattern we have or something?

Also, does Register have automated notifications yet (I think not but just checkin'), or is it something we should ask Support to send in these instances?

We currently send one automated one - our welcome email.
We don't have to send one, but to me it seems sensible to tell both providers (though who at the provider would we notify? team inbox time!). If we go with it (to discuss with devs?) yeah we'd want a content ticket.

I think MVP we would want to get just Support to notify both providers. They will know the user that requested the change and who they approved it with.


what is the best way to resume a training?

Dear Pieter, First of all, thank you very much for sharing this repository with me.
I am currently using it, and it works fine with my data. However, I encountered a minor issue. Since it takes time for me to prepare new annotations for the next iteration, there is a possibility that the program is stopped during this period. What do you recommend as the best way to resume a running process in such cases?
Based on my current understanding, I have thought of a potential solution. My plan is to place the new annotations in the initial_train directory alongside the original initial data. Then, I would rerun the algorithm while setting the pretrained_weights to the weights of the last run that was stopped.
Please let me know if this approach seems reasonable or if you have any other suggestions to handle this situation more effectively. I greatly appreciate your guidance.

Thanks very much for the quick reply!
I tried it and it seems to work. I have only one more related question: How can I see the inference results after each loop? The inference results are generated in the output directory only if we continue to the last iteration. But in my case, the last iteration never happens because the algorithm is stopped.
PS: That's great news! Congratulations :)

@pkhateri As far as I remember, after each training the performance is evaluated on the independent test resulting the inference.json file in the output folder. Then the sampling starts and afterwards the labelling. If you stop the procedure during the first sampling iteration (just Ctrl+C in the terminal) then the inference.json represents the last inference. It is simply overwritten after each active learning iteration.
Besides inference.json, there is a results file generated in your results folder giving the overall mAP and the mAP for the individual classes. That might be enough for your application (I used these for my scientific research output).

Hi @pieterblok
I am really sorry for the very late response!
After training, four text files are generated in the results and weights folders which include metrics or inference results. No output folder is generated. Here are the files:

weights/exp1/uncertainty/metrics.json
This is similar to the original metrics.json file which is generated after running detectron2 without your AL extension. This would be useful for my above-mentioned purpose.
weights/exp1/uncertainty/inference/coco_instances_results.json
This file includes some instances, it is not really clear to me for which images exactly. See part of the file below:

[{"image_id": 1, "category_id": 1, "bbox": [314.2623596191406, 95.52009582519531,<PHONE_NUMBER>464844, 76.62232971191406], "score": 0.9237105250358582},
{"image_id": 5, "category_id": 1, "bbox": [146.166259765625,<PHONE_NUMBER>3203125,<PHONE_NUMBER>054688, 76.61729431152344], "score": 0.9729232788085938},
{"image_id": 5, "category_id": 1, "bbox": [172.25726318359375,<PHONE_NUMBER>1835938,<PHONE_NUMBER>2265625, 73.83609008789062], "score": 0.23908992111682892},
{"image_id": 5, "category_id": 1, "bbox": [600.7523193359375,<PHONE_NUMBER>466797,<PHONE_NUMBER>515625, 77.92771911621094], "score": 0.07600747048854828},
{"image_id": 7, "category_id": 1, "bbox": [327.11590576171875, 86.79924011230469,<PHONE_NUMBER>03125, 96.70126342773438], "score": 0.207632377743721}, ...

results/exp1/uncertainty/coco_instances_results.json
This file is very similar to the previous file but with different instances.
results/exp1/uncertainty/uncertainty.csv
The content of this file is:

train_size,val_size,test_size,mAP,mAP-damaged
16,31,29,12.8,12.8
25,31,29,18.2,18.2
33,31,29,17.0,17.0
45,31,29,17.0,17.0
56,31,29,23.2,23.2
60,31,29,20.7,20.7

and again not really clear what each entry means exactly in this file. If you can provide some explanation on the files in steps 1, 2 and 3, I would really appreciate it.

metrics.json

1.) metrics.json are the standard output from Detectron2, I haven't changed anything about this output file. Refer to: https://stackoverflow.com/questions/61421951/getting-the-output-metrics-from-detectron2s-cocoevaluator
2.) and 3.) coco_instances_results.json is also a standard output from Detectron2, created by https://detectron2.readthedocs.io/en/latest/_modules/detectron2/evaluation/coco_evaluation.html
4.) a csv file with the outputs generated by the active learning script: https://github.com/pieterblok/boxal/blob/ed4b8915547b8ec7ea7e33d0b947f1136277071a/boxal.py#L533
I have used this specific output for my scientific research.
In your file you can see that the training size is being increased starting from 16 images, then 25, until 60 images. Apparently you are having one class called "damaged", therefore the overall mAP and the class-specific mAP is the same. I have done my experiments with 5 classes, and I was particularly interested in 4 of them because they were minority classes.

Thank you!
Sorry, there was a typo in my message. I meant files 2,3 and 4 (edited now).
2 & 3. What is the difference between these two file?

yes, I have only one class called "damaged". The number of images in my test and val files are respectively 45 and 46. And my setting in the boxal.yaml file is as follows:

initial_datasize: 20
pool_size: 20
loops: 5

I assume that it only counts the images which have (at least) one box on them? Some of my images do not include damaged area, i.e. there's no box on them.

I don´t know the difference between 2&3, I think the are the same files, but maybe you did some regular training causing one file instance created in another folder.
Yes, it counts the number of images with annotations in it. "Empty images" are skipped by Detectron2.

In Detectron2, empty images are skipped by default, but one can include them in training as below. Right?
cfg.DATALOADER.FILTER_EMPTY_ANNOTATIONS = False

I added this line to the train method in the boxal.py file in order to be able to configure it with boxal too:
cfg.DATALOADER.FILTER_EMPTY_ANNOTATIONS = config['filter_empty_annotation']

In Detectron2, empty images are skipped by default, but one can include them in training as below. Right?

cfg.DATALOADER.FILTER_EMPTY_ANNOTATIONS = False

I added this line to the train method in the boxal.py file in order to be able to configure it with boxal too:

cfg.DATALOADER.FILTER_EMPTY_ANNOTATIONS = config['filter_empty_annotation']

Oh nice! I didn't know about that. Thanks for the information 🙏

Actually, it does not work with the boxal implementation :(
I will open a new issue for this topic. I am going to add a few other parameters to the boxal.yaml file, including filter_empty_annotations.
You may close this issue.


variable in watch window not updating until debugger steps two lines away

During execution, debugger stops on breakpoint set at line "X" and highlights it, but after stepping over that line, any variable set on that line that is in watch window does NOT update (or even show as defined, as there is a "?" next to it) until the FOLLOWING line is executed.
Not sure if the debugger is off one line in execution or update of displayed items, but something is off somewhere by "one line"
Thanks

Hi,
Good day.
+1, in my case there are no variables set at all under Context window.
Regards.
JJ

@rotorboy What you're describing sounds a lot like the file being executed by PHP doesn't match exactly with the file in Atom. Can you confirm they are identical?

Can confirm identical.
There is a single copy of the file foo.php. I save changes to the file, and set a fresh break point (I used to clear all old breakpoints prior to setting new ones after a save but that option has been removed).
I then execute the file via url entered in browser. Stopping on line after variable $a was  set often (but not always) yields ? In watch window: $a ?. Only after stepping over next line is the set value for $a shown.
-Avi

On May 14, 2018, at 11:38, Caleb Champlin<EMAIL_ADDRESS>wrote:
@rotorboy What you're describing sounds a lot like the file being executed by PHP doesn't match exactly with the file in Atom. Can you confirm they are identical?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Hey,
I have set the paths correctly as before. Tried restarting the IDE as well. And the files are in sync. Will check later again, on my way home.
Regards.
JJ


Error while npm run setup-api in ssi-bridge

Hi,
I followed this tutorial: https://wiki.iota.org/integration-services/getting_started/installation/node_setup
And when running the npm run setup-api in the ssi-bridge part, this error occurs.
><EMAIL_ADDRESS>setup-api /home/myuser/integration-services/api/ssi-bridge
> npm-run-all build start-setup-api

><EMAIL_ADDRESS>build /home/myuser/integration-services/api/ssi-bridge
> npm-run-all build-tsc build-lint

><EMAIL_ADDRESS>build-tsc /home/myuser/integration-services/api/ssi-bridge
> tsc --project ./

><EMAIL_ADDRESS>build-lint /home/myuser/integration-services/api/ssi-bridge
> eslint src --ext .js,.jsx,.ts,.tsx

=============

WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.

You may find that it works just fine, or you may not.

SUPPORTED TYPESCRIPT VERSIONS: >=3.3.1 <4.5.0

YOUR TYPESCRIPT VERSION: 4.6.4

Please only submit bug reports when using the officially supported version.

=============

><EMAIL_ADDRESS>start-setup-api /home/myuser/integration-services/api/ssi-bridge
> node dist/index.js setup-api

/home/myuser/integration-services/api/ssi-bridge/node_modules/@iota/is-shared-modules/node_modules/@sinclair/typebox/typebox.js:86
    schemas;
           ^

SyntaxError: Unexpected token ;
    at Module._compile (internal/modules/cjs/loader.js:723:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/home/myuser/integration-services/api/ssi-bridge/node_modules/@iota/is-shared-modules/lib/models/schemas/user-types.js:4:19)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>start-setup-api: `node dist/index.js setup-api`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>start-setup-api script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>setup-api script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/myuser/.npm/_logs/2022-06-10T10_51_55_970Z-debug.log

Any idea of the cause? I'm not too proficient with node.js.

I found that the error was the node version. I missed that requirment.


Update eventlogs.json

Added Windows Powershell evtx files

PowerShell event logs are already captured in the relevant section - the name you provided is also not correct as the file name format for these is "Microsoft-Windows-Powershell*', which is defined above in the config.


Fix missing language error for language dropdown menu in navigation bar

Fix missing language error for language dropdown menu in navigation bar
Fixes #1276 .
Changes proposed in this pull request:

translations.js for each language under locales folder

cc @HospitalRun/core-maintainers

I also noticed this just now, was going to submit a PR but you were faster.
Could you also rename the hindi locale to hi (including the folder) so that it's consistent with the rest of the locales? I think that would help.

No problem, just added a commit 9f95180 according to your suggestion :)


manager: Pump in data for the integration test

We need to simulate the real usage for the manager integration test as well.
(We already have it for the longhorn-engine).
We can ask Longhorn manager to attach the volume to the node that longhorn-tests was running, then grab /dev/longhorn/xxx and test it.

We still need to cover tests other than test_basic.py


Add SafeSwap to landing page

📘 Issue Description
Enhance the Landing Page with SafeSwap Branding
The current landing page lacks any visual identity or branding for SafeSwap. To establish a strong brand presence, we want to incorporate the "SafeSwap" title prominently on the page. Since we don’t yet have a logo, feel free to experiment with different font styles and placements.
Task Details:

Propose 2-3 design options where the "SafeSwap" title is effectively integrated into the landing page.

Option 1: Place the title prominently in the header/navigation bar for consistent visibility.
Option 2: Feature the title as a central hero element on the page, paired with a tagline or key message.
Option 3: Include the title in the footer or as a watermark-like element for subtle branding.

Experiment with different font types and sizes to explore distinct styles that align with SafeSwap's vision.

Present mockups or design sketches for each option to aid in decision-making.

Notes:

Ensure the title is visually appealing and blends seamlessly with the current landing page design.
Focus on creating a strong and professional look that resonates with users.
Keep the designs responsive and adaptable to various screen sizes.

Can I be assigned this issue?

Pls assign this to me

@0xdevcollins any updates?

@danielcdz Can I start working on this issue


How to use in node.js

Could anyone tell me how to use this fantastic library in node.js?
When I using:
require ('is');

I get the error:
Can not find module 'is_js'

see https://www.npmjs.com/package/is-js
add is-js to your package.json file and then npm install.

Hey @alejandropaciotti
You should require the module name, like this:
var is = require('is_js');
is.number(42);
=> true

The package @ryanguill mentioned is not related to this repository.
This is the npm module I've published: https://www.npmjs.com/package/is_js
Sorry for the module name clutter. Unfortunately, the package name 'is' was taken.
Cheers.

Wow, I installed is-js and tested it seemed perfect, then read the following comment and noticed that are similar and not just in the name.
Anyway, thank you, has been very helpful and congratulations to the creator!
Excellent idea!

Yeap Scotts' module looks great too. Thanks @alejandropaciotti


--harmony-proxies option not working

This is my mocha.opts file in my test/ folder:
--compilers js:babel/register
--require mocha.conf.js
--harmony-proxies

I'm using mocha v2.3.4, and node v5.1.0 and I get the error:
  error: unknown option `--harmony-proxies'

EDIT: In fact, none of the --harmony options are working.

Looks like a regression in 2.3.3. Works in 2.3.2.

@danielstjules I don't know about that, I can't reproduce it using his setup.

@boneskull I think it's a regression :(
$ cat test/mocha.opts
--harmony-proxies
dstjules:~/Desktop
$ mocha --version
2.3.2
dstjules:~/Desktop
$ mocha

  0 passing (4ms)

dstjules:~/Desktop
$ npm install -g<EMAIL_ADDRESS>/usr/local/bin/mocha -> /usr/local/lib/node_modules/mocha/bin/mocha
/usr/local/bin/_mocha -> /usr/local/lib/node_modules/mocha/bin/_mocha
<EMAIL_ADDRESS>/usr/local/lib/node_modules/mocha
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS><EMAIL_ADDRESS>├──<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>├──<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>└──<EMAIL_ADDRESS><EMAIL_ADDRESS>dstjules:~/Desktop
$ mocha --version
2.3.3
dstjules:~/Desktop
$ mocha

  error: unknown option `--harmony-proxies'

Looks like it's my fault, sorry: https://github.com/mochajs/mocha/commit/c4647bf2fa167501e40d1c9a3858b09eae741700

@JaKXz Note that this still works by passing options to the bin. So in the meantime, you can do:
mocha --harmony-proxies
I'll have a fix for this tomorrow.

@danielstjules thanks!

Nevermind, this isn't a regression after all. Any node-specific flags (harmony, etc) need to be passed via CLI, and not placed in mocha.opts. When passed via CLI, bin/mocha will spawn an instance of bin/_mocha with the harmony flags.

This was a result of https://github.com/mochajs/mocha/pull/1910 But we can't remove getOptions from _mocha, due to https://github.com/mochajs/mocha/issues/1645 I think an immediate solution would be to check whether or not the options have already been loaded

Fixed in master. Thanks again! :)

Thank you, @danielstjules!

Harmony flags doesn't work for me while using bin/_mocha (required by istanbul)
  "devDependencies": {
    "chai": "^3.5.0",
    "istanbul": "^0.4.2",
    "mocha": "^2.4.5"
  },

I'm trying --harmony_default_parameters node flag
Reproduction here
Obs.: it does work for bin/mocha binary

@josmardias mocha exists so that _mocha can be run with node flags.  You will need to execute istanbul with node flags.


General Backlog

Pages to Add

[ ] Process/How It Works
[ ] Students
[ ] Application Process Page

Design

[ ] Alignment of Footer Links

Other

[ ] Continuous Integration
[ ] Jekyll Features 1
[ ] Jekyll Features 2
[ ] Faster Jekyll
[ ] Kramdown
[ ] Pass Variables in Include

Moved to General Project


Deadly boss Datapacking suggestions/requests

1: Have a field that the player can put in a string to put nbt onto the spawning boss when it is spawned like when commands can be run to have nbt on a mob. Override of stack any attributes that happen in the afterwards attributes section.
2: Ability to set potions effects ambient or not when applied.
3: Riding mob with a direct selection of another boss entry name to make a "mounted" boss? Although it could be technically achieved with the above nbt in the riding section I guess?
4: Ability to set any item to be ignored with a field that defaults to false when it comes to selecting one of the items from the inslot table to make into the affixed item. So one can use say offhand arrows for skeletons to allow skeleton bosses variable arrows to fire out or have visible trinkets in their hand without accidentally applying affixes to arrows or other types of gear that shouldn't be allowed to and causing either errors or game explosions and also wasting the boss's loot potential on something that didn't work.

Datapacking wiki page so (theoretically) less questions from pack devs trying to do their black magic?

1: Added via custom_nbt subkey.
2: Implemented via ambient and visible subkeys.
3: Probably gonna let that one sit for now and deal with it later.
4: That's actually already in there - it's automatic.  If the random selector picks an itemstack that is either empty, or unable to receive affixes, it will be rerolled.

Ah, well ok then. :D

I think this satisfies (5) https://gist.github.com/Shadows-of-Fire/937a6f2403928dea773e4de1081e401e


Login Process to be changed

Don't ask to create account to post, Have a verification process where it will give users a message after submitting that "The project is under reviewal and our team will get back to you"
And further to be done in https://github.com/dvstechlabs/Devcode/issues/43 for admin dashboard.
Also, don't ask for an account to see projects either, anyone should be able to see all the projects
Ask for account while commenting or liking with a react toast.

Updates to this : We'll be switching to Github and Google Auth instead using Authorizer


Correction for raw affiliation University Rennes 1, CREM UMR CNRS 6211, Rennes, France

Correction needed for raw affiliation University Rennes 1, CREM UMR CNRS 6211, Rennes, France
raw_affiliation_name: University Rennes 1, CREM UMR CNRS 6211, Rennes, France
new_rors: 015m7wh34;0047rmf80
previous_rors: 015m7wh34
works_examples: W4313444378
contact: b71b21d66a87c7440e20500d3c65d5b0:2d1240fca08b0f8c013179f8c4cd9ee5 @ univ-rennes.fr

This issue was accepted and ingested by the OpenAlex team on 2024-10-10. The new affiliations should be visible within the next 7 days.


Ignore NCrunch temporary files.

While NCrunch is running it creates little temporary files in the pattern nCrunchTemp_*. These are automatically cleaned up, but a badly timed git status or git add -A can catch them momentarily.
Unfortunately I can't find any official documentation that discusses these files, but here are a few examples of public GitHub repos were people have added an ignore rule like this:

https://github.com/TinyBlueRobots/NancyFs/blob/master/.gitignore#L63
https://github.com/cloudfoundry-incubator/if_warden/blob/master/.gitignore#L68
https://github.com/peterkeating/nancy-boilerplate/blob/master/.gitignore#L46

and some mention of the files on NCrunch forums:

http://forum.ncrunch.net/yaf_postst1304_Don-t-start-builds.aspx
http://forum.ncrunch.net/yaf_postst1093_NCrunch-cannot-build-project-that-VS-can.aspx

ping @remcomulder - a couple of questions before I merge this:

can I get a :thumbsup: that this is intended behaviour and not a bug?
and if that's the case, what's the best way to get this reflected in the docs?

NCrunch generates these temporary files to work around the limitations of MSBuild while loading projects.  Under normal operation, they only exist for a couple of seconds and are usually immediately removed.  Sometimes a critically timed crash or source control operation can lead to the files being noticed.  They should not be submitted to source control.  I've just now updated the NCrunch documentation accordingly.

Cool, thanks @remcomulder! That docs link then: http://www.ncrunch.net/documentation/considerations-and-constraints_using-ncrunch-with-source-control

@remcomulter fantastic, thanks for the speedy response!


<EMAIL_ADDRESS>request ignored

Hi,
thanks for providing ssh-rs!
When executing long-running commands I get the following log messages:
DEBUG [ssh::channel::local::channel] Currently ignore message 99
DEBUG [ssh::channel::local::channel] Currently ignore request<EMAIL_ADDRESS>DEBUG [ssh::channel::local::channel] Currently ignore message 96

IMHO those keepalive requests should be implemented in ssh-rs.

Yep you're right. Will fix this asap


Add new iterable convenience getters in cds.service and cds.entity

Entities

[ ] .keys [^1]
[ ] .associations [^1]
[ ] .compositions [^1]
[ ] .is_struct
[ ]  .texts

Services

[ ] .entities [^1]
[ ]  .types [^1]
[ ]  .events [^1]
[ ]  .operations [^1]

Note: some of this actually also has to be reflected in cds-types
[^1]: iterable map

This has been resolved in cds-types instead. The additional features on entities (.is_struct et al.) can be added on demand.


Move from GAE/MVM to CustomRuntime (Jetty)

Lots of little changes, the main is moving from GAE to Jetty / Docker

@amygdala -- This is Jetty as a Custom Runtime -- based on GAE.
@hegemonic -- Please take a look at the readme for Managed VMs

Shun managed to deploy it, but not run locally, and otherwise code looks good to him.


DataGrid Row Nested Group

Summary
Datagrid row grouping, with nested grouping, and with the capability of show total in number columns; without supressing the column sorting and filtering.
In this grouping mode, the paging disappear, because it doesn't apply and would be to much difficult to undestand. And in this mode, the loading of group records must have the options of lazy loading.
Use case
This is a similiar example to my needs.
I have buses registered in my database, each bus travel once in a day, each travel has a target city, and a bus station where it arrives. I will have around 30 buses. If i filter an specific month, i wil have a datagrid with 900 travel records.
I want to see quickly, how many travels have an station, and which travels belong to a bus, and arranged by date, and with total of travels by each bus inside that station group, and each station.
With a few clicks, i wanto to change that grouping quickly to buses as the first group, then group by statition, and then see sorted records of travel by date.
With the current datagrid that isn't possible.
Examples
Odoo community filter and grouping
https://apps.odoo.com/apps/modules/11.0/sewi_web_search_group_by_date_intervals/example_order_grouped_list.png
Workarounds
Maybe, the first step is to sort columns in a nested way. Example, sort by stations, then sort by buses, then by date. But with this aproach, it will still be difficult to the user have a general view of buses, stations, etc.

This appears to be a request for nesting into a hierarchical datagrid. We actively recommend against this pattern and do not plan to support it. The primary reason is that it confuses the behavior of many aspects of a datagrid. See https://github.com/vmware/clarity/wiki/Hierarchical-datagrid for some detail.
Ultimately I recommend you consider a different approach to visualizing your content to avoid hierarchy. It seems more appropriate to use filters to condense the list of content to specific groupings instead of nesting inside of rows.


Return whole subject instead of only grants

Also use SetHeader as AddHeader won't overwrite existing headers (someone could send their own access header and won't get overwritten)

@benarena


KAFKA-5694; Add AlterReplicaDirRequest and DescribeReplicaDirRequest (KIP-113)

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6538/
Test FAILed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6539/
Test FAILed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6540/
Test FAILed (JDK 7 and Scala 2.11).

@becketqin @junrao @ijuma Can you help review this patch if you have time? Thank you!
This patch has implemented all features in KIP-113 except the ability to move replica between log directories on the same broker. The implementation of that feature is a bit tricky because it requires the creation of a temporary replica on the broker. Thus I choose to separate the implementation of KIP-113 into two patches.
Note that this patch allows user to specify the destination log directory of a replica if the replica has not been created on the broker yet. More specifically, user can use AdminClient.changeReplicaDir() before creating the reassignment znode so that the replica will be created in the destination log directory when broker receives LeaderAndIsrRequest later. This allows user to balance load across log directories using the kafka-reassign-partitions.sh as long as the replica is always moved to a given log directory on another broker. The caveat is that the replica may be created in the wrong log directory if the broker restarts after it received ChangeReplicaDirRequest but before it receives LeaderAndIsrRequest.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6541/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6527/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6586/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6571/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6576/
Test FAILed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6591/
Test FAILed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6592/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6577/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6599/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6584/
Test FAILed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6627/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6612/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6623/
Test FAILed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6638/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6628/
Test FAILed (JDK 8 and Scala 2.12).

@becketqin Tests have been added to cover every new request/response/API and I have reviewed the patch end-to-end. It is fully ready for review now. Thanks!

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6643/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6695/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6680/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6713/
Test FAILed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6728/
Test FAILed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6729/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6714/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6745/
Test FAILed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6760/
Test FAILed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6761/
Test PASSed (JDK 7 and Scala 2.11).

@becketqin Thanks much for your review. I have addressed all comments and reviewed the patch end-to-end. Can you take another look? Thanks!

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6746/
Test PASSed (JDK 8 and Scala 2.12).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6764/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6749/
Test PASSed (JDK 8 and Scala 2.12).

@becketqin Thanks much for taking time to review the patch! I have addressed most of the comments and rebased the patch onto trunk head. The only one that I am not sure is whether we should rename AlterReplicaDirRequest to AlterReplicaLogDirRequest (and similarly for other related classes). After this one is addressed, I will review the patch myself end-to-end and let you know.

@junrao Could you please provide some comment as to whether we should rename AlterReplicaDirRequest to AlterReplicaLogDirRequest?
@becketqin prefer AlterReplicaLogDirRequest so that it is more explicit that we are referring to log directory instead of arbitrary directory.
On the other hand, I prefer AlterReplicaDirRequest because I think AlterReplicaLogDirRequest is a bit verbose. I also think it should be clear enough to user/developer that the dir means log dir as long as the field name in AlterReplicaLogDirRequest is log_dir.

I can take a look at the patch in the next day or two.

@junrao Thanks much for taking time to review the patch! I have addressed all the comment. Can you take another look when you get time?

Thanks for the patch.  It looks good overall.
I think we should split the changes to the Options class, to create a base class, into a separate JIRA.  It's not related to KIP-113.  I'm also not completely convinced we should do it, but perhaps we can discuss that in another JIRA or on the mailing list.

@cmccabe Thanks much for the comment! I personally don't mind whether we refactor the Options class in this patch or in a separate patch. I just talked to @becketqin and he prefers to do it in this patch if there is no concern. The argument is that this patch adds three more Option classes to Apache Kafka and it is reasonable to try to reduce the extra code in this patch.
Can you explain a bit more what is your concern with the change to the Option class? We can move it to another JIRA if there is anything worth further discussion about this change.

@junrao Thanks much for your review! I have addressed all comments except for the last one which we are discussing. And I have gone over the patch end-to-end, removed unused imports I can find and improved comments. The patch has been rebased onto trunk HEAD.

@junrao Thanks for taking time to review the patch!
@becketqin I have rebased patch onto trunk head and addressed all comments from Jun. Do you have time to take a look and commit the patch? Thanks!

@becketqin Thanks much for taking time to review the patch again in detail! I have updated the patch to add comments and throw exception if an expected error is found.
Regarding the error code in DescribeLogDirResponse, it seems that there is currently no realistic issue with assuming CLUSTER_AUTHORIZATION_FAILED when the response is empty -- it doesn't affect correctness or performance. Then the reason for adding the response level error is purely ideological, which applies to other requests as well (e.g. DESCRIBE_GROUPS_RESPONSE or DESCRIBE_CONFIGS_RESPONSE). We have discussed this offline previously. It probably makes sense to have a response level error for every response instead of only DescribeLogDirResponse. Can I open a separate ticket and make a separate pull request for this?
I would like to avoid making non-trivial change to this patch at this moment so that it can be finished soon. I feel that the use of this extra field is kind of unnecessary in itself. It probably makes more sense to add the response level error in AbstractResponse to solve a bigger problem. Or we can add this response level error to DescribeLogDirResponse in the future when it is needed. Doe this make sense?

@lindong28 Yeah, it is probably worth adding a response level error for all the requests. We can do it in separate KIP.

@lindong28 Thanks for the patch. Merged to trunk.
Thanks a lot for the review, @junrao and @cmccabe

I think this PR broke binary compatibility for the AdminClient, code compiled against 0.11.0 fails like:
org.apache.kafka.clients.admin.DescribeClusterOptions.timeoutMs(Ljava/lang/Integer;)Lorg/apache/kafka/clients/admin/DescribeClusterOptions;

@ijuma This patch added new methods in the interface AdminClient. According to https://wiki.eclipse.org/Evolving_Java-based_APIs_2, this should not cause binary incompatibility. Not sure why you see that error.
I also tried the following steps to hopefully reproduce the error:

git clone -b upgrade-to-11.0.0 https://github.com/lindong28/kafka-monitor.git
compile with ./gradlew jar
Replace ./build/dependant-libs/kafka-clients-<IP_ADDRESS>.jar with kafka-clients-1.0.0-SNAPSHOT.jar, where kafka-clients-1.0.0-SNAPSHOT.jar is generated by Apache Kafka adefc8ea076354e.
Run ./bin/kafka-monitor-start.sh config/kafka-monitor.properties

It appears that the project can still be compiled and run after I replaced the jar.
Can you tell me how I can reproduce this error? Also, do you know which change in this patch can break binary incompatibility, e.g. addition of new methods?

@lindong28 Sorry, I thought it was obvious from the error message, but I noticed now that the person that ran into it only pasted the method affected and not the actual error.
The binary compatibility issue due to the removal of the timeoutMs method from various classes. The method now exists in the abstract class, so code that is recompiled works (source compatible), but code that is not recompiled breaks with a NoSuchMethodError. We should reintroduce the removed methods in 1.0.1 and trunk to fix the issue. Would you kind filing a JIRA, please?

@ijuma Sure. I created https://issues.apache.org/jira/browse/KAFKA-6174. We can continue discussion there.


DEFAULT PROTOCOL SELECTION

I was configuring enoa-client with a following host.
host: <IP_ADDRESS>
Now My question is if i configure a host without specific protocol, Would enoa-client create a url for host including default protocol selected by enoa-client itself?
If yes then still I had to give the host like this host: http://<IP_ADDRESS> then it will work for the communication otherwise i have to manually concatenate the protocol with the host.

It is not related to enoa-client it depends on adapter which you want to use. Enoa-client will just manage communication with server. Adapter is responsible of making Server link/url.

Ok I didn't know about the default protocol selection.
URL is clear  domain.com/api that is related to adapter but what about default protocol if is not given for communication, because it is base of communication?

What if adapter didn't give the protocol information then?
Will request call  be rejected by enoa-client? OR Will default Protocol be set by enoa-client?


CDO pardes has been removed in CDO 2.0.5

As from the title, this makes the CDO based version no longer operative, since it is used to find which what variables are in the file

Has it been substituted by another command?

I think that vardes should do the same, but we need to check this. Also, on mafalda we still have cdo 1.9.9 which as the pardes command, while is no longer there on wilma


Added type getter to value

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
Added a type getter to value struct. It's necessary to build a list of declare-queries in query builder.
Pull request type
Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[x] Other (please describe):

From v.3.29 you can get type from types.Value
			p := table.NewQueryParameters(
				table.ValueParam("$seriesID", types.Uint64Value(1)),
				table.ValueParam("$seasonID", types.Uint64Value(1)),
				table.ValueParam("$episodeID", types.Uint64Value(1)),
				table.ValueParam("$views", types.Uint64Value(views+1)), // increment views
			)
			pt := make([]string, 0)
			p.Each(func(name string, v types.Value) {
				pt = append(pt, v.Type().String())
			})

Closed because type getter released with v3.29.0


Add initial scalar FP operations (addss, subss, etc) to x64 backend.

Need to better separate data structures for sse and regular regs
Lowering is not right .. made sure all paths towards lowering are
covered but still need to review what is there and correct
Need to emit code. Currently have placeholders.

@julian-seward1
Hi .. this current snapshot isn't much different than you saw earlier but it has been rebased against the latest merge which which forced a few updates to my beginnings.
I am testing the example:
RUST_BACKTRACE=1 RUST_LOG=debug cargo run -- wasm --target x86_64 --set use_new_backend=1 -dvTD ben_simple.wat

I should maybe add .. basically good, it looks like it's moving along the right lines.

@jlb6740 I realised just now that you won't be able to use the emit_REX_OPCODES_MODRM_SIB_IMM_*G_*E and emit_REX_OPCODES_MODRM_*G_*E family of functions to do emission of XMM insns without some (minor) modifications.
Specifically, these are currently only set up to produce a legacy prefix of (none) or 0x66.  But in your case, you now need to be able to generate the legacy prefixes
(none)  or 66  or F2  or  F3
(working from memory here).  I suggest the following:

delete const F_PREFIX_66 (it's a kludge)

create a new enum
enum LegacyPrefix = { PfxNone, Pfx66, PfxF2, PfxF3 }

add a new argument prefix: LegacyPrefix to emit_REX_OPCODES_*, in between sink and opcodes

at the place where the 66 byte would previously have been emitted (sink.put1(0x66)), instead inspect prefix and emit the relevant byte

change all the places that specify F_PREFIX_66 to pass Pfx66 instead.  There aren't many.

Note that the Intel docs are a bit confusing about this.  In particular, the REX byte is silently omitted from the description.  For example, for CVTPI2PD, the encoding is shown in the docs as 66 0F 2A /r, but what that actually means is 66 <RexByte if necessary> 0F 2A /r.  0F is the first opcode byte and 2A is the second.  66 isn't an opcode byte but rather a prefix.  The fact that the Rex byte -- if needed -- goes between them explains why we couldn't just pass 0x660F2A as the opcodes arg to emit_REX_OPCODES_* here.  Instead we would have to pass 0x0F2A for opcodes and Pfx66 for the proposed new prefix argument.

Hi @julian-seward1 this is the 3rd update ... overwrote what was there yesterday. Is the proper way to push an insns similar to this in emit_test.rs:

insns.push((
Inst::mov64_m_r(Addr::imm_reg(0, rax), w_rdi),
"488B38",
"movq    0(%rax), %rdi",
));

Note, I modified the expected encoding here and from "488B38" to "488B37" and all tests still passed when running "cargo test -- --nocapture". I take it I did not run the test correctly or could this indicate some issue in testing?

@jlb6740 thanks for the respin!  I'll have a look later today.
That test should fail if you changed the expected output, so I suspect it isn't getting run.  Maybe try cargo test --all ?  Or (cd cranelift && cargo test --all)?  I definitely had them running and failing before.

I guess RM_R_Op should then be changed to INT_RM_R_Op

Errr, this is tricky, for reasons to do with copy coalescing in regalloc. At least for now, I'd prefer to have an Xmm-to-Xmm move instruction that operates only on the entire register. We can come back and refine this later. So you'd drop the Scalar bit here, giving SSE_Mov_R_R. And correspondingly emit whatever Intel recommends for Xmm-to-Xmm moves .. is it movapd reg, reg perhaps?

@julian-seward1 There are a couple of comments particularly around naming that I partially did or held off completely but you may prefer still need to be done. For example, I think the Intel manual describes cpuid features flags SSE, AVX, AVX512, etc that I think make good prefixes (we use SSE in this pull request to form SSE_RM_R_Op), but there is no corresponding INT cpuid requirement for the current RM_R_Op instructions.

@julian-seward1 @cfallin Rebased for Chris's latest updates.

@julian-seward1 Thanks for the suggestions! I like somehow capturing the CPUID feature (SSE, SSE2, AVX, etc) and wanted to do this in an earlier push but wasn't sure how we'd want it done. It's good to encode this information now so good suggestion. On that note, I was thinking SSE_OP should really be SSE_RM_OP for consistency and convenient cross checking purposes. We'll want SSE_RMI_OP (actually created here already), SSE_RVM_OP, etc in the future. Do you think this would be fine to add (maybe update in a future patch)?
Also potentially in a future patch I am not sure the value of having XMM_R_R. Seems this instruction format can be capture with XMM_RM_M ... same reason we combined SSE_RM_M and SSE_R_R. It would simplify logic in a few places. Do you think we can remove this as well in another patch?
Note, one thing I didn't do here in this patch was remove the F_PREFIX_66 since that is a valid prefix that I think we will need. If you still think its best to remove I can push the removal.
Also separately I noticed that it doesn't appear that cargo run -- wasm disassemble is printing based on lowered vcode. I say that because I redundant rex bits appear to be retained in the binary when I don't expect that. I am thinking this is printing from original cranelift lowering? Will have to investigate this further but will probably open this as an issue and submit a patch.

Ah, you're right, Inst::XMM_R_R is redundant because Inst::XMM_RM_R will cover that case.  Not sure what I was thinking there.
The reason I proposed simply SSE_Op and not SSE_RM_R_Op and SSE_R_R_Op etc is that for almost all SSE(*) insns, both the reg-mem and reg-reg forms exist.  Hence if we did that we'd get a lot of duplication in the two enums.
Regarding SSE_RMI_OP op, there are no SSE insns where one of the operands is a literal (immediate) value, so this would never get used.  There are a few SSE insns in which there is an immediate 8-bit value, but that is basically an opcode extension, not an operand, and they are rare, so we can special-case those later if we need them.


Add loadbalancer-api endpoints

# Ensure local dev container for loadbalancer-api is up and running and exposed on port 7608
curl  localhost:7608/v1/tenant/8263b19b-6aea-4dd7-a2cd-ffa7efe513e9/loadbalancers
{
  "version": "v1",
  "kind": "loadBalancersList",
  "load_balancers": []
}

# spin up local api-gateway
make run-local

# hit api gateway
curl -k https://localhost:8080/loadbalancer.api/v1/tenant/8263b19b-6aea-4dd7-a2cd-ffa7efe513e9/load_balancers
{
  "version": "v1",
  "kind": "loadBalancersList",
  "load_balancers": []
}

Uhm... this is getting rid of the vhost flag 🤔

Let's sync tomorrow, as it seems to me there's a communication gap here. I agree with removing the vhost construct, but otherwise, we do need to stay with the all-in- one image approach and not lean too much on setting the endpoints via helm. In my view, this gets us further in getting lbaas in place while adhering to the direction and learnings from previous iterations.


增加 I18N 组件

:tada: This PR is included in version 1.0.0-beta.1 :tada:
The release is available on npm package (@beta dist-tag)
Your semantic-release bot :package::rocket:


Is there a way I can query the parent model from has-one child?

If I'm using has-one relation like in the docs example:
type Profile struct {
	ID     int64 `bun:",pk"`
	Lang   string
	UserID int64
}

type User struct {
	ID      int64 `bun:",pk"`
	Name    string
	Profile *Profile `bun:"rel:has-one,join:id=user_id"`
}

I can query Profile using .Relation("Profile").
Is there a way I can query the User from Profile?
Using
var profile Profile

err := db.NewSelect().Model(&profile).Where("?TableAlias.id = ?", id).
		Relation("User").
		Scan(ctx)

it gives model=Profile does not have relation=\"User\"".

You can define a relation on Profile model:
type Profile struct {
	ID     int64 `bun:",pk"`
	Lang   string
	UserID int64
        User *User `rel:"belongs-to"`
}

It works. Thanks. I think docs should be extended because I didn't understand it right away and I had to open this issue.
What do you think?

Do you have a suggestion how to improve it?

Yeah. I will add this:
A little note about Has-One and Belongs-To:
You can query each other by using .Relation(), example:
err := db.NewSelect().Model(&user).Where("?TableAlias.id = ?", id).Relation("Profile").Scan(ctx)

and the opposite:
err := db.NewSelect().Model(&profile).Where("?TableAlias.id = ?", id).Relation("User").Scan(ctx)

An example is worth a thousand words.

If you make the docs repo public I can help you with some PR for other things as well.


add new pair in crypto

hi brian
can you add another pair coin. your lib is good but it is need to be strong with add another data

Hi @hossain93,
I do not control the availability of the data. All data is provided by TradingView. Anything available in TradingView (as long as it has a technicals tab), should be available in tradingview-ta.
I'm going to close this issue. If you still have questions feel free to reply. Have a good one.


Adding some basic VI approximation and fitting routine

Copying over from https://github.com/blackjax-devs/blackjax/pull/392#discussion_r1020745315
After #392, we should add the 2 most basic VI algorithm: meanfield and full rank ADVI [1]. Below is a working example of Meanfield ADVI:
import jax
import jax.numpy as jnp
from jax.scipy import stats

def gen_meanfield_logprob(params):
    mu_param, rho_param = params
    sigma_param = jax.tree_map(jnp.exp, rho_param)
    def meanfield_logprob(position):
        logq_pytree = jax.tree_map(
            stats.norm.logpdf, position, mu_param, sigma_param
            )
        logq = jax.tree_map(jnp.sum, logq_pytree)
        return jax.tree_util.tree_reduce(jnp.add, logq)
    return meanfield_logprob

# gen_meanfield_logprob(init_params)(init_position)

def meanfield_sample(
    rng_key, meanfield_param, num_samples: int
    ):
    if not isinstance(num_samples, tuple):
        num_samples = (num_samples,)
    mu_param, rho_param = meanfield_param
    sigma_param = jax.tree_map(jnp.exp, rho_param)
    mu_flatten, unravel_fn = jax.flatten_util.ravel_pytree(mu_param)
    sigma_flatten, _ = jax.flatten_util.ravel_pytree(sigma_param)
    flatten_sample = jax.random.normal(
        rng_key, num_samples + mu_flatten.shape
        ) * sigma_flatten + mu_flatten
    if len(num_samples) == 0:
        return unravel_fn(flatten_sample)
    return jax.vmap(unravel_fn)(flatten_sample)

# meanfield_sample(rng, init_params, ())

def meanfield_approximate(rng, init_params, log_prob_fn, optimizer, sample_size=5, num_steps=200):
    def meanfield_approximate_step(
        state, rng_key_sample
        ):
        params, opt_state = state
        def kl_fn(params):
            sample = meanfield_sample(rng_key_sample, params, sample_size)
            logq = gen_meanfield_logprob(params)(sample)
            logp = log_prob_fn(sample)
            return (logq - logp).mean()
        # compute KL divergence
        elbo, grad = jax.value_and_grad(kl_fn)(params)
        updates, opt_state = optimizer.update(grad, opt_state, params)
        params = jax.tree_map(
            lambda p, u: p + u, params, updates
            )
        return (params, opt_state), elbo

    def run_optimization(init_params):
        opt_state = optimizer.init(init_params)
        state = (init_params, opt_state)
        rng_key = jax.random.split(rng, num_steps)
        return jax.lax.scan(
            meanfield_approximate_step, state, rng_key
            )

    return run_optimization(init_params)

Fitting a model looks like:
import matplotlib.pyplot as plt
import numpy as np

import optax
import tensorflow_probability.substrates.jax as tfp

tfd = tfp.distributions

rng = jax.random.PRNGKey(0)

seed0, seed1, rng = jax.random.split(rng, 3)
X = jax.random.normal(seed0, (100, 98))
y = X @ np.arange(98) + jax.random.normal(seed1, (100,))

@tfd.JointDistributionCoroutineAutoBatched
def model():
    sigma = yield tfd.HalfNormal(5.0, name='sigma')
    mu = yield tfd.Normal(0.0, 1.0, name='mu')
    beta = yield tfd.Sample(tfd.Normal(mu, sigma), X.shape[-1], name='beta')
    yield tfd.Normal(X @ beta, 1.0, name="y")

# init_position = model.sample(seed=rng)
pinned = model.experimental_pin(y=y)
init_position = pinned.sample_unpinned(seed=rng)

bijectors = pinned.experimental_default_event_space_bijector()
def log_prob_fn(unbound_param):
    param = bijectors.forward(unbound_param)
    log_det_jacobian = bijectors.forward_log_det_jacobian(unbound_param)
    return pinned.unnormalized_log_prob(param) + log_det_jacobian

# This is just one way to do it. We could also use a flattened array to represent mu and rho
mu_param = jax.tree_map(jnp.zeros_like, init_position)
rho_param = jax.tree_map(jnp.zeros_like, init_position)
init_params = (mu_param, rho_param)

optimizer = optax.chain(optax.clip(10.), optax.adam(1.))
output = meanfield_approximate(rng, init_params, log_prob_fn, optimizer)

[1] https://arxiv.org/abs/1603.00788

In #392 we define a VISamplingAlgorithm, and here we would need to define a new base type ParametrizedVISamplingAlgorithm base type.

@rlouf
I think I can take charge of this, but just for sure:
We assume the log_prob_fn (i.e. log p(x,z) ) in BlackJax takes in a real value flattened array (rather than a dict or something on constrained space) right

Great! No there is no such assumption in the library (or at least shouldn't be), we try to support PyTree states as much as we can.

@rlouf
To follow the design principle of blackjax, I believe VI should also has an API of the form below? :
new_state, info =  kernel(rng_key, state)

which would perform one optimization step for the ELBO.

As you can see with the pathfinder implementation, Blackjax treats VI differrently from MCMC algorothms.
The idea is that you first fit an approximation to the target density, and then sample from this approximation with something like (in peudo-code):
approx, info = approximate(rng_key, position)
samples = sample(sample_key, approx, num_samples)

I think at the higher-level the API will always be something more or less like this. We can consider a kernel-like lower interface for some algorithms if it makes sense. But again, I am no VI expert and open to suggestions.

Can someone then, give a minimal working example for the Mean Field VI? This would be helpful also for the refactoring of the pathfinder API in #465 and the implementation of the full rank approach, i believe.

MFVI is implemented here

I understand. Altough i would argue that it would be helpful to get a foot in the door, if one wants to help to develop VI further. Could be as easy as having a multivariate normal and evaluating mean field and full rank. For the current implementation i don't see immediately how the pseudo-code you provided is implemented in the library.

@LarsKarbach I understand your point and I really wish there could be a template for implementing VI variants (e.g. as simple as providing a log_q function and a sampling function) but the APIs are still in the very initial stage. At this moment, there are still lots of boilerplate code in the implementation... Probably after the fullrank VI's PR got merged in, we could start working on simplifying the VI implementation process.


Fix link

Link to Azure’s Well Architected Framework is broken
Should be:
https://learn.microsoft.com/en-us/azure/architecture/framework/resiliency/app-design#use-availability-zones-within-a-region

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

ID: cc1d501f-9474-0d82-da86-a265a9235e7f
Version Independent ID: 17d0d9e4-bf21-8d3e-4714-e8401cd41fe4
Content: Use availability zones for high availability in Azure NetApp Files
Content Source: articles/azure-netapp-files/use-availability-zones.md
Service: azure-netapp-files
GitHub Login: @b-hchen
Microsoft Alias: anfdocs

@gvanteylingen
Duplicate of #100367

This is not a duplicate, same issue exist in TWO different documents:
https://learn.microsoft.com/en-us/azure/azure-netapp-files/use-availability-zones
https://learn.microsoft.com/en-us/azure/azure-netapp-files/whats-new
Hence me opening two feedback requests.

@gvanteylingen - thanks for reporting. The link has been corrected in both documents: https://learn.microsoft.com/en-us/azure/azure-netapp-files/use-availability-zones and, per https://github.com/MicrosoftDocs/azure-docs/issues/100367
https://learn.microsoft.com/en-us/azure/azure-netapp-files/whats-new
@AjayBathini-MSFT - this has been resolved and can remain closed


Update create.dart

Changes:

Fix word mistake

Issues:

#82453

Thanks for the fix. Can you please sign the CLA as instructed above so we can accept this contribution? Thanks!

Thanks for the fix. Can you please sign the CLA as instructed above so we can accept this contribution? Thanks!

Signed

@googlebot I signed it!

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat.

I requested a test exception for an identical PR at https://github.com/flutter/flutter/pull/82752 (sorry, I didn't see this before I put that out)
@Hixie said:

seems like something we should be able to test? i mean, a test would have caught what you're fixing, for one :-)
we have a bunch of similar tests that verify the output of flutter run, flutter --help, etc

https://discord.com/channels/608014603317936148/608018585025118217/843970329188761600

@jmagman Hi, I've created a test for this fix, could you check, please?

manually landing this since it is green and tests are passing.


useResource: Loading still "true" even after Error received

I think this is a bug? I would expect that loading is false once we either have data or an error returned by useResource

Just to be clear, I know why this failed/404'd. But this still feels like a bug and shouldn't happen

Agreed! Definitely a bug


ppmSeq_v2_format

Some very minor adaptations so I would appreciate a review from whoever is free on Allenby

I've fixed an existing test and added tests for ppmSeq_v2.


Update opensaml version to 2.6.6 from 2.6.4

Resolves https://github.com/wso2/product-is/issues/4893


Pubsub messages documentation is empty

https://google-cloud-python.readthedocs.io/en/latest/pubsub/subscriber/api/message.html

This builds properly on my machine. Any troubleshooting advice?

Run the same commands from a RTD build. You can see the exact commands in every build: https://readthedocs.org/projects/google-cloud-python/builds/ (e.g. our nox -s docs session uses Python 3.6 but RTD uses 3.5)
I also just realized the RTD build has been failing for 10+ days and for some reason I stopped getting email notifications about this.

I just wiped the cache and started a fresh build and am seeing the fame failure:
    Traceback (most recent call last):
      File "/home/docs/checkouts/readthedocs.org/user_builds/google-cloud-python/envs/latest/lib/python2.7/site.py", line 703, in <module>
        main()
      File "/home/docs/checkouts/readthedocs.org/user_builds/google-cloud-python/envs/latest/lib/python2.7/site.py", line 683, in main
        paths_in_sys = addsitepackages(paths_in_sys)
      File "/home/docs/checkouts/readthedocs.org/user_builds/google-cloud-python/envs/latest/lib/python2.7/site.py", line 282, in addsitepackages
        addsitedir(sitedir, known_paths)
      File "/home/docs/checkouts/readthedocs.org/user_builds/google-cloud-python/envs/latest/lib/python2.7/site.py", line 204, in addsitedir
        addpackage(sitedir, name, known_paths)
      File "/home/docs/checkouts/readthedocs.org/user_builds/google-cloud-python/envs/latest/lib/python2.7/site.py", line 173, in addpackage
        exec(line)
      File "<string>", line 1, in <module>
    KeyError: 'google.cloud.gapic'

Fixed.


[Feature Request]: add a Golang Client

Describe the problem
We are trying to build LLM apps with Golang and use chroma as the vectorstore.Unfortunately chroma do not have any Go clients.
Describe the proposed solution
Just like python/js, it woulbe be greate if we have go client
Alternatives considered
No response
Importance
would make my life easier
Additional Information
No response

Besides... if this really is in our plan, I would like to contribute.

Does this work for your needs?
https://github.com/amikos-tech/chroma-go

Does this work for your needs?
https://github.com/amikos-tech/chroma-go

Is this  officially verified or trusted by chroma community?

It's not "1st party" but it's built by a core contributor @tazarov

Closing this for now... please let me know if anything else pops up here and we can re-open it.

@jeffchuber, yes, @bjwswang got involved with the go client, so I think we can close this safely.

thanks!


Grails 3 - Does this plugin available for Grails 3

I want to know if this plugin is available for grails 3 .

for grails 3 support
http://alvarosanchez.github.io/grails-spring-security-rest/latest/docs/#_jwt_support

Also looking for using this one on a grails 3 app, and don't want to use spring security at all.
If it doesn't work, will create a new plugin for grails 3 with the same purpose and most of the logic present on this one.

Hi. We don't have time to migrate it to Grails 3 for now. You are most welcome to create a new one, and to use as much logic from ours as you want :)

@pabloalba I have some minimal version of the plugin working in Grails 3, the thing is, I don't need to use the spring security integration, so didn't use that code, I used the Cry[toService, UrlSafeBase64Utils, the JwtStatelessTokenProvider (I don't need the default provider yet), the SecuredStateless annotation and moved the SecurityStatelessFilters to a Grails 3 interceptor/
I then interceptor I have some stuff hardcoded that would move to the config, but I think the basic flows will work soon (generate token, check token).
Also have some doubts about the username keyword currently used in to generate the token, I would like to delegate that to the user, so the user configures everything and the plugin doesn't make any assumptions on attribute names or class names. Will notify here when the basic plugin is available.


Update stale comment for ListenerConditionAccepted

What type of PR is this?
/kind cleanup
/kind documentation

What this PR does / why we need it:
Fixes stale comment for ListenerConditionAccepted (Pretty much copy pasting Nick's suggestion https://github.com/kubernetes-sigs/gateway-api/issues/1896#issuecomment-1493840812 :) )
Which issue(s) this PR fixes:

Fixes https://github.com/kubernetes-sigs/gateway-api/issues/1896
Does this PR introduce a user-facing change?:

NONE

/lgtm


Add modules and tracking info to the configuration parsing context (#1320)

Fixes #1320
Add modules and tracking info to the config parsing context, and an associated test.
You can now do neat things like:
target-path: "target_{{ modules.datetime.datetime.utcnow().strftime('%Y%m%dT%H%M%S') }}"

in your dbt_project.yml

This feature is really useful.  A mention in the docs would be appreciated as it took a bit of googling to find this issue in order to find out that it exists.


[Pipelines Support] Add validation in configuration script to prevent KeyNotFound errors

Description
This PR adds an extra validation to catch errors during the Test Project configuration. If one or more of the DirectLine secrets can't be found, the script will throw an error and abort the execution.
With this early catch, we'll prevent having KeyNotFound errors in the tests.
Detailed Changes

Updated configureConsumers to add retries for getting the DirectLine secrets from Azure and to throw an error in case it's blank after 3 attempts.

Testing
This image shows the error being thrown when the script can't set one of the bots' DirectLine secret.

Promoted to MS in PR# 412


Fixes #12306 by attempting the download using the provided artifact path

Removing the existence check for the artifact directory and change of artifact folder to parent directory should resolve the problems seen in #12306. It looks like the engine.ArtifactEngine.processItems() method will handle retry and failure, so no further changes should be necessary. It also looks to be a problem for DownloadBuildArtifactsV0, so updating here as well.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: NicholasDenaro sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Feat/Add Podium Connector

Closes #689
Checklist

[x] Ran Linter
[x] Created PR from non-main branch

Catalog variables
Notes
Testing
GET
URL: localhost:4444/v4/locations

POST
URL: localhost:4444/v4/campaigns

PUT
URL: localhost:4444/v4/campaigns/d1a28bf4-d9a2-462f-b7a2-a3816fae5cac

PATCH
URL<EMAIL_ADDRESS>
DELETE
URL<EMAIL_ADDRESS>
Pagination
Before pagination

After pagination using limit and cursor params

Token printout

Testing
GET
URL: https://proxy.withampersand.com/v4/contacts

POST
URL: https://proxy.withampersand.com/v4/campaigns

PUT
URL: https://proxy.withampersand.com/v4/campaigns/e084d528-0b38-4f1b-a95e-940ca0fdf61f

PATCH
URL<EMAIL_ADDRESS>
DELETE
URL<EMAIL_ADDRESS>
Invalid requests
Wrong method

Wrong path

Pagination
Before pagination

After pagination with limit and cursor pagination

Successful console operation (operation & events)

Failed console operation (operation & events)

Raw token response