fix re-setting properties on BytesMessage

Sleuth JMS instrumentation cleared all properties on ActiveMQBytesMessage and was unable to put them back.
fix MessageNotWriteableException - Message body is read-only while re-setting properties on BytesMessage
please squash commits with merge

I only tested with ActiveMQ. Please check.

@jeqo could you please help me to fix a test? I believe it shouldn't be failing. It probably relies on clearing properties even if there's no need to clear.
ITJmsTracingMessageConsumer>ITJms_1_1_TracingMessageConsumer.receive_customSampler:300

Hey @me3x thanks for the fixes!
I've test it further and actually that test case is preventing to break functionality here. Let me explain:

That case is a non-traced producer sending a message, and a traced consumer with a sampler based on queue name.
traced consumer should be able to extract context from producer (null in this case) and inject context for further processing.
as in the current implementation we are returning when disjoint before reset properties, properties are kept as read-only, failing to inject context later. Check by debugging a breaking point on MessagePropagation:45

Based on this I recommend to remove disjoint flag as we need to reset properties anyway, simplifying loop logic.

btw, I've test it with Oracle WebLogic JMS and works before (doesn't have a similar bug as ActiveMQ) and works after. So, I think we are good to merge on that side.

@me3x , could you re-enable this IT that was validating this issue: ITJms_1_1_TracingMessageConsumer:253
If that one goes green we should be good to merge.

I removed disjoint check. It's a little bit weird design to rely on properties being writable for this scenario, but let's merge without it.

@jeqo Should we have similar test with BytesMessage. It failed only without instance of condition. In case of ActiveMQBytesMessage, setObjectProperty will not work after I call bytesMessage.reset();

@jeqo do you have any idea why it started to fail?  [ERROR]   ITJmsTracingMessageConsumer>ITJms_1_1_TracingMessageConsumer.receive_resumesTrace_bytes:255->ITJms_1_1_TracingMessageConsumer.receive_resumesTrace:275 expected:<"463ac35c9f6413ad-8fdeb02e21ce5744-1"> but was:

@me3x take a look to the last bytesMessage.reset() on PropertyFilter#resetBytesMessageProperties, it is closing the message again; triggering failure later when injecting context at the end:
  void handleReceive(Message message) {
    if (message == null || tracing.isNoop()) return;
    MessageConsumerRequest request = new MessageConsumerRequest(message, destination(message));

    TraceContextOrSamplingFlags extracted =
      jmsTracing.extractAndClearProperties(extractor, request, message);
    Span span = jmsTracing.nextMessagingSpan(sampler, request, extracted);

    if (!span.isNoop()) {
      span.name("receive").kind(Span.Kind.CONSUMER);
      Destination destination = destination(message);
      if (destination != null) jmsTracing.tagQueueOrTopic(request, span);
      if (remoteServiceName != null) span.remoteServiceName(remoteServiceName);

      // incur timestamp overhead only once
      long timestamp = tracing.clock(span.context()).currentTimeMicroseconds();
      span.start(timestamp).finish(timestamp);
    }
    injector.inject(span.context(), request);
  }

I think we can remove this reset and let JMS to close the message before sending it.

I tried and it didn't work without reset. It failed on JmsListener ... unable to read, because body was in write mode.

Could you add a test to show this? As you can see we have this issues based
on jms design choices and bug with activemq bytes message, and we are
trying to work around it. Maybe we are not considering the scenario of
readOnly msgs enough, which can lead to a deeper discussion (potentially
other Issue/PR). But we are currently supporting jms clients with this
implementation and we are fixing specific issue with activemq messages, so
I don’t think closing message for these should be added.
On Thu, 28 Nov 2019 at 15:02, Matúš Hennel<EMAIL_ADDRESS>wrote:

@me3x commented on this pull request.
In instrumentation/jms/src/main/java/brave/jms/TracingConsumer.java
https://github.com/openzipkin/brave/pull/1042#discussion_r351795256:

@@ -62,6 +63,9 @@ void handleReceive(Message message) {
span.start(timestamp).finish(timestamp);
}
injector.inject(span.context(), request);

if (message instanceof BytesMessage) {

 (BytesMessage message).reset();

Instrumentation should left the message in the same state it started. I
tried to read body in JmsListener and it failed.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openzipkin/brave/pull/1042?email_source=notifications&email_token=ABPE6XO3BAMXZZBJYH6NMDDQV7FPRA5CNFSM4JQC6T4KYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCNKIGZY#discussion_r351795256,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABPE6XJRKLRUH5ZVG5NOSH3QV7FPRANCNFSM4JQC6T4A
.

I don't have a test, but here is a stack trace:
Caused by: javax.jms.MessageNotReadableException: Message body is write-only
	at org.apache.activemq.command.ActiveMQBytesMessage.checkWriteOnlyBody(ActiveMQBytesMessage.java:867) ~[activemq-client-5.15.10.jar:5.15.10]
	at org.apache.activemq.command.ActiveMQBytesMessage.initializeReading(ActiveMQBytesMessage.java:872) ~[activemq-client-5.15.10.jar:5.15.10]
	at org.apache.activemq.command.ActiveMQBytesMessage.getBodyLength(ActiveMQBytesMessage.java:203) ~[activemq-client-5.15.10.jar:5.15.10]
	at com.cs.ifs.oxygen.common.JmsUtils.getBytesMessagePayloadAsString(JmsUtils.java:27) ~[classes/:na]
	... proxies and transactions ...

	at com.cs.ifs.oxygen.am.CoreRefDataListener.onMessage(CoreRefDataListener.java:60) ~[classes/:na]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_171-1-redhat]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_171-1-redhat]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_171-1-redhat]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_171-1-redhat]

@me3x I won't be able to help much if we don't have a test-case to check this scenario, I'm sorry.
If we want to cover this case where this change is needed, we need test cases first to prove that works and doesn't affect other scenarios.
If we need to review how we are handling JMS messages and if we need to reset them or not at the end, I'd prefer to take this on another PR and only solve issue with ActiveMQ Bytes Message here first.

from javax.jms.BytesMessage:

If {@code clearBody} is called on a message in read-only mode,

the message body is cleared and the message is in write-only mode.

If a client attempts to read a message in write-only mode, a

{@code MessageNotReadableException} is thrown.

I removed body reset. I'll create another PR

@me3x I've second thoughts about my previous comments. I realize now that we are only "touching" message content on this PR and not in the existing implementation where we deal with properties only, then we have to solve the read-only issue here. Sorry for the confusion.
To have temporal bytesMessage handling on the same place, we can move changes upper to TracingConsumer instead of PropertyFilter. Here is a draft with some comments:
  void handleReceive(Message message) {
    if (message == null || tracing.isNoop()) return;
    MessageConsumerRequest request = new MessageConsumerRequest(message, destination(message));

    byte[] body = null;
    if (message instanceof BytesMessage) {
      try {
        BytesMessage bytesMessage = (BytesMessage) message;
        body = new byte[(int) bytesMessage.getBodyLength()];
        //bytesMessage.reset(); // do we need this reset() before reading?
        bytesMessage.readBytes(body);
        bytesMessage.clearBody(); // any exception after this can lead to loose message
      } catch (Throwable t) {
        propagateIfFatal(t);
        //log(t, "error getting property {0} from message {1}", name, message);
        return;
      }
    }

    TraceContextOrSamplingFlags extracted =
      jmsTracing.extractAndClearProperties(extractor, request, message);
    // ....current code
    injector.inject(span.context(), request);

    if (message instanceof BytesMessage) {
      try {
        BytesMessage bytesMessage = (BytesMessage) message;
        bytesMessage.writeBytes(body);
        bytesMessage.reset();
      } catch (Throwable t) {
        propagateIfFatal(t);
        //log(t, "error getting property {0} from message {1}", name, message);
        //return;
      }
    }
  }

This will also mean we can rollback some of the changes on PropertyFilter back: mainly property names enumeration was enough (we are not using disjoint anymore).
Lastly, I'm worried about the impact of this changes as we are carrying the technical debt of an ActiveMQ bug, as well as touching message content. I'm asking other contributors (@openzipkin/brave) to give feedback here.
There are different options from my point of view: (1) add this workaround and maintain it until activemq client is fixed. (2) move this workaround to a new module (e.g. activemq) which will only impact/help ActiveMQ users (3) have this workaround on another repo (e.g. inside openzipkin-contrib) until bug is fixed.

We can write body back immediately. We don't have to wait. Clearing it is the only way to put the message to write mode, but it will remain writable until reset.

@me3x right, so we can do the write back right after the clearBody isn't it? This is much better. What do you think on moving things to TracingConsumer?
We can test if possible reduce the filter even further by adding (message instanceof BytesMessage && message.getName().equals("org.apache.activemq.command.ActiveMQBytesMessage")), so we can go for option 1 and keep the fix as part of the current module. I'll test this today.

@jeqo It's a good idea. I found that it's used also in class JmsTracing and TracingMessageListener, so there are 3 places. Do we have ActiveMQBytesMessage class available? If not, maybe it could be part of some recovery after exception?

@jeqo I mean current behavior is the worst possible, because we loose user's properties completely.

we could rethrow MessageNotWriteableException and handle it with clearing the body

@jeqo if I recall correctly, there's a fix to this upstream now?

@adriancole still waiting for the next ActiveMQ client release to be available.
I will create a PR with the changes and notes about target versions on README, and close this one.

we should close this now with ActiveMQ release fixing this internally correct? meanwhile it is nearing a year old :D

closing as out-of-date and seems possible addressed upstream. If not the case, please re-open


Stacktrace inside signal handler on ARM

I can't get stack trace inside a signal handler on Raspberry Pi 4 no matter what flag I add to compiler/linker options. I tried following :
-mapcs-frame
-funwind-tables
-fasynchronous-unwind-tables
-fno-omit-frame-pointer
-rdynamic is already used.
According to this answer, it is a limitation of ARM : https://stackoverflow.com/a/10881088/1311494
But I know applications doing this in ARM platform, so maybe it is a limitation imposed by certain architectures of ARM, not all ?
free(): invalid pointer
Stack trace (most recent call last) in thread 19107:
#5    Object "/lib/arm-linux-gnueabihf/libc.so.6", at 0xb54d412f, in
#4    Object "./bin/hyperiond", at 0x3c291f, in backward::SignalHandling::sig_handler(int, siginfo_t*, void*)
#3    Object "./bin/hyperiond", at 0x3c2857, in backward::SignalHandling::handleSignal(int, siginfo_t*, void*)
free(): invalid pointer
#2    Object "Aborted

Stack traces on ARM from the signal handler are possible with libunwind. I added support for it to backward and I'll be sending the pull request in a day or two
What you need to do is get the context passed to the signal handler and pass it to libunwind, telling it that it should process the signal handler frame pointed to by the context (UNW_INIT_SIGNAL_FRAME), I've added a call to backward to handle all that for you. As a bonus we can also handle invalid function pointer dereferences by looking at the return address.

In fact I already tried libunwind and passed the context to it without success. I'll be waiting for your patch. Thanks.

@pedronavf Any news on this ?

Oops, sorry. Got busy and completely forgot. Here it is! #183


Openocd Cfg File

Very nice project indeed, i'm looking for openocd Cfg file pico for debugging, can someone share ? i'm using already build uf2

You need more than a cfg because openocd bakes probe support code in the openocd image.
You can try this:
[https://sourceforge.net/u/phdussud/openocd/]
It hasn't been tested much so I can't guarantee anything

I have another branch of openocd that I try to keep up to date with the official repo of openocd. It contains a new implementation of the dirtyjtag code. The major difference with the implementation that is on sourceforge concerns batching of requests so there is less USB traffic. I am not sure it ends up feeling faster when you debug but if you guys want to try it out,  it is https://github.com/phdussud/openocd

I have another branch of openocd that I try to keep up to date with the official repo of openocd. It contains a new implementation of the dirtyjtag code. The major difference with the implementation that is on sourceforge concerns batching of requests so there is less USB traffic. I am not sure it ends up feeling faster when you debug but if you guys want to try it out, it is https://github.com/phdussud/openocd

Doesn't work at all.
$ lsusb
Bus 001 Device 016: ID 1209:c0ca Generic Jean THOMAS DirtyJTAG

$ sudo openocd -f /usr/local/share/openocd/scripts/interface/dirtyjtag.cfg -f /usr/local/share/openocd/scripts/target/bcm2835.cfg
Open On-Chip Debugger 0.12.0+dev-g81f929a97 (2024-10-18-09:28)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
Info : only one transport option; autoselecting 'jtag'
bcm2835.cpu
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : dirtyjtag version 2
Info : clock speed 4000 kHz
Error: JTAG scan chain interrogation failed: all zeroes
Error: Check JTAG interface, timings, target power, etc.
Error: Trying to use configured scan chain anyway...
Error: bcm2835.cpu: IR capture error; saw 0x00 not 0x01
Warn : Bypassing JTAG setup events due to errors
Error: missing data from bitq interface
Error: 'arm11 target' JTAG error SCREG OUT 0x00
Error: unexpected ARM11 ID code
Error: [bcm2835.cpu0] Examination failed
Warn : target bcm2835.cpu0 examination failed
Info : starting gdb server for bcm2835.cpu0 on 3333
Info : Listening on port 3333 for gdb connections

With the "official" port of DirtyJTAG openocd (https://review.openocd.org/c/openocd/+/7344) it at least detects the CPU:
Info : JTAG tap: rspi.arm tap/device found: 0x07b7617f (mfg: 0x0bf (Broadcom), part: 0x7b76, ver: 0x0)

With this it doesn't do anything.


KeyError: "['exclusive'] not in index"

New error appeared now that I actually have jobs running (was working when no jobs were running).
The 'exclusive' key is not found.

Can you paste in the line number and source file this error appears at please

Sure. First error appears at line 211, then following errors appears at lines 4108, 6200, and 6252


Django 3 Error

from django.utils import six
ImportError: cannot import name 'six' from 'django.utils'

It appears that this is a django issue and not django-import-export problem.

@napsterv
https://docs.djangoproject.com/en/dev/releases/3.0/#removed-private-python-2-compatibility-apis
django.utils.six - Remove usage of this vendored library or switch to six.

@napsterv
https://docs.djangoproject.com/en/dev/releases/3.0/#removed-private-python-2-compatibility-apis
django.utils.six - Remove usage of this vendored library or switch to six.

Alright. Got it.

In the end, is this a django issue or a django-import-export issue?

@andrewgy8 A django-import-export issue.

It looks like it's being fixed in the 2.0 branch.

any progress with it?

2.0 was released yesterday. Let us know how it goes.


Fix removing the flag

Codecov Report

Merging #9 into master will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master        #9   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            2         2
  Lines           83        85    +2
=========================================
+ Hits            83        85    +2

Impacted Files
Coverage Δ

include/bitflags/bitflags.hpp
100.00% <100.00%> (ø)

tests/src/bitflags_test.cpp
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Created WPF version of wallet.

Supporting windows headers:
inet.h  ->  winsock2.h
unistd.h   ->   "win/unistd.h"
sys/time.h    ->   "win/wintime.h"

Split folders: core, dotnet, mac

Finished 0.2.0 version of WPF xdagwallet.

This is legacy, please see the pull request from yisui/winsupport branch.


[Feature Request] Include creating a Chocolatey package into release process

micro looks like a great text editor and might be the only simple console text editor on Windows (there's vi and vim, but...). It would greatly help to popularize it and ease access to it if there was a Chocolatey package.
I am not aware of your release build process but I'd be happy to assist in working on this feature.

Releases are available from https://github.com/zyedidia/micro/releases/latest so you can already package them.
There is also Far Manager if you need simple text editor on Windows.

I know about Far Manager, I am a maintainer of Far chocolatey package. Far is not a text editor though.
The request was to add building a package to the release process. If that is something that the dev team doesn't want to do, I might do it myself later.

I believe that dev team is unaware of Chocolatey given that Windows is not the primary development platform. So I'd not spend time waiting for it to happen. PR may be accepted - at least snapd package definition was.

micro is not even tested on Windows on AppVeyor, so you may want to explore this to build choco packages independently from stable tags.

Yeah I'm not sure how to package for Chocolatey, so you'll probably have to do it yourself, but I'm glad to help out however I can.

Package is ready and approved https://chocolatey.org/packages/micro


OCI save or update CLOB. Order of fields.

What steps will reproduce the problem?
Save new or update an ActiveRecord with a CLOB field to ORACLE database through OCI cause an ORA-24816 error.
Oracle needs CLOB as last field of insert/update instruction.
For new record I can set the CLOB as last assign:
$record = new RecordClob();
$record->FIELD1 = value1
$record->FIELD2 = value2
$record->FIELD_CLOB = value_clob
$record->save();

It works even if I can't use the $record->load($request) function.
During the update this code doesn't work:
$record = RecordClob::findOne(['id'=>$id]);
$record->FIELD1 = value1
$record->FIELD2 = value2
$record->FIELD_CLOB = value_clob
$record->save();

The update SQL instruction doesn't keep the FIELD_CLOB as last field...
What is the expected result?
The save or the update of the record
What do you get instead?
OCI error
Additional info
It is possible to set the order of the field in the Active Record so I can put the CLOB as the last?

Q
A

Yii version
<IP_ADDRESS>

Ordering the field is not the solution because the SQL ends with the WHERE condition.
UPDATE "RECORD_CLOB" SET "FIELD_CLOB"='clobtext' WHERE "ID"=xx';
I found this code that works outside Yii2
$sql = "UPDATE CLOBTABLE SET CLOBFIELD= EMPTY_CLOB() WHERE id=:id RETURNING CLOBFIELD INTO :lob"; $conn = oci_connect('schema_name', 'pwd', 'connection_string'); $stmt = OCIParse($conn, $sql); $clob = OCINewDescriptor($conn, OCI_D_LOB); OCIBindByName($stmt, ':id', $id); OCIBindByName($stmt, ':lob', $clob, -1, OCI_B_CLOB); $clob->writeTemporary($clobtext); OCIExecute($stmt,OCI_DEFAULT); $clob->save($clobtext); OCICommit($conn); $clob->free(); OCIFreeStatement($stmt);
But I don't know how to pass $conn to the OCI functions, Yii::$app->db returns an object and not a resource as OCI function needs


Move similarity to use tensor.Tensor

Along the way this also means fixing up the serialization strategy

Including to save file as npy, gob.

Save as gob, npy.


[ADD] Keyboard Redragon Indrah

What you suggest?

[ ] Aurora
[ ] Aurora supported game, (Fill in the game)
[ ] Aurora Wrapper
[ ] Aurora Profile
[ ] Aurora supported device, (Fill in problematic devices)
[ ] Aurora Scripts
[ ] Aurora Updater
[ ] Aurora Lighting issue
[ ] Other, (Fill in another issue here)
[X] Add support for Redragon Keyboard

Keyboard:
Redragon Indrah
Please include any logs, screenshots, or files that are related to this issue:

For screenshots, you can use: http://cdn.pichau.com.br/media/catalog/product/cache/1/thumbnail/440x310/9df78eab33525d08d6e5fb8d27136e95/k/5/k555-7.jpg

I cannot find any SDK for that keyboard, so there isn't anything I can do to support it.

Reddragon keyboards accept RGB control over the HID protocol, no SDK needed.

@JoshWobbles Do you have a link to a document or page detailing how to control the lighting of this keyboard over HID?

I have not found one yet, would have to be created using hid analyzers, i took a quick peek and it does look like there is some bi-directional communication going on any time a lighting is changed either on the KB itself via hotkeys or in the software.

I can't add support for it unless I have a document detailing how to use it or access to the keyboard itself

Maybe this can help?
https://gitlab.com/CalcProgrammer1/OpenRGB/-/wikis/Redragon-K556-Devarajas

this can help?
https://github.com/D4rkTT/Redragon-RGB-SDK

Interesting so I was under the impression the RedDragon Devices lacked support for any led control this provides some hope that someday we might be-able to replace the software

My MODECOM keyboard is detected as Redragon K556 Devarajas (via OpenRGB), so if this gets added many MODECOM RGB keyboards might work aswell

This is not possible due to the firmware of redragon products not being able to receive real time lighting data.

We finally got a fairly complete build of QMK running on the Redragon keyboards with the OpenRGB HID protocol working.  Here is a short video of my Redragon K552 running QMK, connected to OpenRGB + Aurora running Overwatch.  The lighting works pretty well.
https://www.youtube.com/watch?v=Pf_Q3B1PmK4
I also tested this on the K556.  Most Redragon keyboards use the same Sonix microcontroller, so they should be supportable.  The stock firmware will never be supported for effects like this, as it lacks a direct control mode and is thus useless for real-time effects.  The only solution is to flash a custom replacement firmware.  We've chosen QMK for this as it already exists, is open source, and already runs on a ton of custom keyboards.

Openrgb killed my redragon k621 keyboard with no way to repair it. So double-check if your keyboard is compatible with openrgb.


refresh_aliases() fails with "Invalid argument"

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:
[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I have searched the existing issues and I'm convinced that mine is new.
Describe the bug
After updating from 20.1.9 to 20.7.2 applying/reloading the existing list of aliases leads to the following error:
Sep  4 01:04:58 opnsense configd.py[96512]: message 0b886246-4e61-4845-9bb4-2e67cafbf070 [filter.refresh_aliases] returned {"status": "error", "messages": ["Invalid argument."]}

I would like to track down this error, but the log does not contain enough information to do so. How could I get more (debug) output or find the (supposedly) broken alias?
Expected behavior
Reload/apply aliases without an error. If this fails, the log should contain the ID or name of the alias that fails.
Relevant log files
Sep  4 01:04:58 opnsense configd.py[96512]: message 0b886246-4e61-4845-9bb4-2e67cafbf070 [filter.refresh_aliases] returned {"status": "error", "messages": ["Invalid argument."]}

Additional context
The problem first appeared on 20.7.x, the same list of aliases worked fine on 20.1.4 for quite some time. However, this installation is ~5 years old, so new/better alias validations might have hit me this time.
Environment
OPNsense 20.7.2 (amd64, OpenSSL).

It should be a pfctl error:
https://github.com/opnsense/core/blob/80696b3be7cf3f1d16d418e438b9bc8978e0435f/src/opnsense/scripts/filter/update_tables.py#L167-L172
can you try https://github.com/opnsense/core/commit/abcb23703fd2d534e6b5ba6f9c538760e35a3e3e ?  It should append the alias name in the message.

@AdSchellevis, thank you, the error in the GUI contains the alias name. Thanks!
However, I've noticed that configd.log does no longer contain the error message after applying the patch. Is this expected?

not really, no, I haven't changed anything in that area.

FWIW, the alias that lead to the "invalid argument" error was a GeoIP alias. Editing and saving did not change anything. I've then added a new GeoIP aliases and suddenly the error was gone. :)


Issue with 'databricks jobs reset...'

The command 'databricks jobs reset --json-file PATH' is raising an error (Missing option "--job-id".) Instead submitting 'databricks jobs reset --job-id JOB_ID --json-file PATH' works with PATH referring to a JSON file with just the JobSettings

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

ID: b6b8f678-e0e7-c6b2-4f8d-9c808ba680c9
Version Independent ID: 1320a7d6-e2cb-e12c-d818-61daccb72b70
Content: Jobs CLI - Azure Databricks
Content Source: databricks/dev-tools/cli/jobs-cli.md
Service: azure-databricks
GitHub Login: @mamccrea
Microsoft Alias: mamccrea

Hi @krishnasriSomepalli - Thank you for your feedback. I have opened a ticket to have this issue addressed. I will respond here once the article has been updated. Please let us know if you have any additional feedback.
#please-close


Users SBAT download a smaller apk by using Dynamic Delivery

Expected Behavior
Users (maybe) can download a smaller APK

https://developer.android.com/studio/projects/dynamic-delivery

Current Behavior
Everything bundled in APK

Moving to roadmap.


Unable to cerate AMPLIFIED world, always default to NORMAL

Information

Server version: This server is running Paper version git-Paper-711 (MC: 1.16.5) (Implementing API version 1.16.5-R0.1-SNAPSHOT)

Full output of /mv version -p: https://j.mp/2QF3Pz7

Server log:

Details
I was able to reproduce my issue on a freshly setup and up-to-date server with the latest version of Multiverse plugins.
Description
Regenerating an AMPLIFIED world regenerates as NORMAL
Steps to reproduce
create a new amplified world
regenerate that world (seed settings do not matter)
that world is now a normal world
in addition amplified worlds are not tagged as type AMPLIFIED in the world config file
Expected behavior
regenerating an AMPLIFIED world does not change the world type

I manage to reproduce the issue. But it looks like a server bug. Some custom logging for reference:
> mv create test2 normal -t AMPLIFIED
[20:01:50 ERROR]: [Multiverse-Core] AMPLIFIED
[20:01:50 INFO]: CONSOLE: Starting creation of world 'test2'...
[20:01:50 INFO]: [Multiverse-Core] Loading World & Settings - 'test2' - Env: NORMAL - Type: AMPLIFIED
[20:01:53 INFO]: Preparing start region for dimension minecraft:test2
[20:01:53 INFO]: Preparing spawn area: 0%
[20:01:53 INFO]: Time elapsed: 248 ms
[20:01:53 INFO]: CONSOLE: Complete!
[20:01:53 ERROR]: [Multiverse-Core] NORMAL
>

Same problem with FLAT worlds

Having the same issue now on 1.21. flat worlds only generate normal worlds w/ the datapack gen i have. Cleanroom generator seems to be the only workaround currently.


glide.lock: Update with missing test imports

@tomdee did you create a new glide.lock from scratch (i.e. delete the old glide.lock and a glide up -v)?

Yes

LGTM!


Caching

I need to know how the dialogs (chats) caching is done. I saw the caching thing in iOS but I could not find any caching code in Android sample or q-municate app. Can anyone guide if I might miss it somewhere. Any help would be appreciated.
Thanks

+1


Landsat notebook - SatSearchError: {"message":"Forbidden"}

As described in an open satsearch issue (https://github.com/sat-utils/sat-search/issues/95) the Landsat notebook gives an error when trying to search for images.  This cell:
properties =  ["landsat:tier=T1"]
bbox = (gfa.bounds.minx[0], gfa.bounds.miny[0], gfa.bounds.maxx[0], gfa.bounds.maxy[0]) #(west, south, east, north)
results = satsearch.Search.search(collection='landsat-8-l1',
                        bbox=bbox,
                        sort=['<datetime'], #earliest scene first
                        property=properties)

print('%s items' % results.found())
items = results.items()
items.save('set.geojson')

results in
SatSearchError: {"message":"Forbidden"}

The suggested fix to set the url explicitly or to add an environment variable does not work in this case.

Thanks for posting this @jesswalker!    @matthewhanson is on the trail of a fix!

I've published a new version of sat-stac 0.2.3 which changes the default URL to the new domain:
https://earth-search-legacy.aws.element84.com
There's a new 0.3 sat-search coming, but it will be changing to the new earth-search (earth-search.aws.element84.com/v0) which does not currently have Landsat in it. When Landsat gets added this notebook should be updated to use the new sat-search and new earth-search.
But in the meantime, update sat-search from 0.2.2 -> 0.2.3

@jesswalker @rsignell-usgs for a functioning landsat example, check out http://gallery.pangeo.io/repos/pangeo-data/landsat-8-tutorial-gallery/
In addition to the sat-search pinning, we're trying to consolidate examples in that gallery, which use the latest pangeo binderhub infrastructure.


chapter 6 (Flux)\aircheap is not working.

chapter 6 (Flux)\aircheap is not working.
i met the error that is 'RouteStore.js?1441:3 Uncaught TypeError: Super expression must either be null or a function, not undefined'
npm -version 2.15.9
this is the package.json
{
"name": "aircheap",
"version": "1.0.0",
"description": "",
"main": "webpack.config.js",
"scripts": {
"start": "webpack-dev-server --progress --port 9001",
"build": "NODE_ENV=production webpack -p --progress --colors"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-core": "^6.17.0",
"babel-loader": "^6.2.5",
"babel-preset-es2015": "^6.16.0",
"babel-preset-react": "^6.16.0",
"webpack": "^1.13.2",
"webpack-dev-server": "^1.16.1"
},
"dependencies": {
"babel-polyfill": "^6.16.0",
"flux": "^3.0.0",
"react": "^15.3.2",
"react-autosuggest-legacy": "^2.2.6",
"react-dom": "^15.3.2",
"whatwg-fetch": "^1.0.0"
}
}

MapStore is deprecated in Flux version 3.0.0.
Didn't find out how to switch to ReduceStore in RouteStore.js

Installing Flux version 2.1.1 solved the problem for me.
Termin command: npm install<EMAIL_ADDRESS>


Update macOS framework target

Using Carthage, I wasn't able to integrate this framework into a macOS project I was working on due to several issues with code signing and framework paths.
In this PR I have changed the macOS framework structure to be more standardised and thus overcome these issues by:

Including an Info.plist
Changing the versioned folder name to "A" (to overcome codesigning errors relating to Xcode's handling of versioned frameworks)
Modifying the Framework Search Paths (to fix runtime "Library not loaded" error when attempting to reference library at /Library/Frameworks)

Thanks so much for your fantastic work!

Just tested, worked for me, merged! Thanks for your contribution.


Text color of key in Command Palette isn't adjusted

Godot version
v4.0.beta1.official [20d667284]
System information
Windows 10, Vulkan, NVIDIA GeForce RTX 3050 Laptop GPU
Issue description
The color of the key in the command Palette is still light colored in a light-colored theme, the rest of the editor text is dark colored.

Steps to reproduce
set editor theme to 'Light'
go to Command Palette
Minimal reproduction project
No response

The "Solarized (Light)" theme has the same issue:

I looked into it and one thing that stuck out to me in editor/editor_command_palette.cpp at line 133 is that the shortcut_text color is just set as pure white, regardless of theme it seems:
Color c = Color(1, 1, 1, 0.5);

Changing this to something darker like Color c = Color(0.4, 0.4, 0,4, 0.5);, the shortcut text now appears visible with the "Light" theme:

So this shortcut_text color should be altered to take a color from the theme.


⚠ ClamAV has degraded performance

In 98dd94c, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 88 ms

Resolved: ClamAV performance has improved in a02ac95 after 541 days, 7 hours, 50 minutes.


Remove reliance on Prefix.pch (deprecated theos feature)

This is a quick PR to fix compilation.
Prefix.pch was removed from theos with iOS 14, and although it's still possible to make things compile, it's better to just properly import the needed headers.

In a bit I'm going to submit a PR that removes theos completely (there's no need for theos or logos in the project), but I figured it'd be nice to at least fix this if you guys decide to keep theos.


You can squash commits in to one commit and then merge.


[WIP] Bump protobuf v1.2.0

Opening as "WIP", to make CI run here (bumping / regenerating caused some issues when I did the same in the swarmkit repository)

Looks like the XXX_unrecognized cause issues here as well (see https://github.com/docker/swarmkit/pull/2837 for the discussion on SwarmKit)
gometalinter --config .gometalinter.json ./...
73runtime\v2\runhcs\service.go:836:2:warning: too few values in struct literal (compile) (staticcheck)
74runtime\v2\runhcs\service.go:836:2:warning: too few values in struct literal (compile) (staticcheck)
75runtime\v2\runhcs\service.go:859:2:warning: too few values in struct literal (compile) (staticcheck)
76runtime\v2\runhcs\service.go:859:2:warning: too few values in struct literal (compile) (staticcheck)
77runtime\v2\runhcs\service.go:836:2:warning: unused struct field too few values in struct literal (structcheck)
78runtime\v2\runhcs\service.go:859:2:warning: unused struct field too few values in struct literal (structcheck)
79runtime\v2\runhcs\service.go:836:2:warning: too few values in struct literal (unconvert)
80runtime\v2\runhcs\service.go:859:2:warning: too few values in struct literal (unconvert)
81runtime\v2\runhcs\service.go:836:2:warning: unused variable or constant too few values in struct literal (varcheck)
82runtime\v2\runhcs\service.go:859:2:warning: unused variable or constant too few values in struct literal (varcheck)

🤔
Ran 66 of 73 Specs in 71.805 seconds
SUCCESS! -- 66 Passed | 0 Failed | 0 Pending | 7 Skipped

...

Done. Your build exited with 1.

@stevvooe if you have time; perhaps you could give this a look; looking for the changes in protobuf, I found discussions where you were on about preserving the "extra" fields; I wasn't sure if we wanted to keep them or discard them (downside of keeping them could perhaps be "more overhead" / memory?)

This may cause extra memory usage, but I don't think we necessarily want to turn off extras without a good reason. This change will cause a little extra memory bloat, so that may be reason enough.
Looking at the generated code, I don't see any causes for compatibility concerns. If you want to be sure, you can run the integration tests from an older checkout against a daemon built with these changes.

LGTM

Thanks for looking! I saw they also have a v1.3.1 now, but taking it one step at a time (I think BuildKit was on 1.2.0, so although not related, trying to keep my deps a tiny-bit in sync

Codecov Report

Merging #3116 into master will decrease coverage by 4.66%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #3116      +/-   ##
==========================================
- Coverage   45.14%   40.47%   -4.67%
==========================================
  Files         111       74      -37
  Lines       11971     9902    -2069
==========================================
- Hits         5404     4008    -1396
+ Misses       5733     5328     -405
+ Partials      834      566     -268

Flag
Coverage Δ

#linux
?

#windows
40.47% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

snapshots/native/native.go
1.79% <0%> (-41.26%)
:arrow_down:

archive/tar.go
16.99% <0%> (-26.8%)
:arrow_down:

metadata/snapshot.go
21.53% <0%> (-24.28%)
:arrow_down:

cio/io.go
1.52% <0%> (-21.38%)
:arrow_down:

content/local/writer.go
56.86% <0%> (-0.99%)
:arrow_down:

gc/scheduler/scheduler.go
66.34% <0%> (-0.97%)
:arrow_down:

oci/spec_opts.go
30.33% <0%> (-0.25%)
:arrow_down:

mount/temp_unix.go

sys/reaper_linux.go

services/server/server_linux.go

... and 34 more

Continue to review full report at Codecov.

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

LGTM


Submission in IE results in signature error

Attempting to submit the form in Internet Explorer 10 results in an error being returned by the validation API. I'm not sure what the problem is here.

It turns out that IE isn't posting the form data at all. The IE10 inspector shows that no data at all is being submitted to the server with $.post(). I'm pretty sure the culprit is JSON.stringify($('form').serializeObject()).

Yup, this is specific to IE 10, and to stringify().

I'm starting to think that something is going wrong upstream, before we get to stringify().


docker: add assets image with binaries + web files

The base image in this repo is 3.1 GB, while this is just 140 MB. I'm working on building a helm chart that will allow users to use any base mysql image, which will use this to copy over only the relevant assets. I'd like to set this image to be an automated build, triggered whenever the base image is rebuilt.

@enisoc I'm trying to copy the files to the proper destination, as compared to what you are doing in https://github.com/youtube/vitess/pull/3311/files#diff-17c3a71d3c4514bfd55ea66afbcc3e8dR46. I'm hoping to make the InitContainer as simple as possible.

This would be handy if it ever gets implemented - https://github.com/kubernetes/kubernetes/issues/831

@jvaidya My original thought here was to provide only the bare minimum to run Vitess in production, and to be honest, I'm not familiar with the things that you mentioned. That being said, I only intend on copying those binaries out, so if there was another specific use case where it would be useful to have these other artifacts, and it didn't bloat the container size much, I wouldn't necessarily be opposed.

Here is how I anticipate using this image
FROM vitess/assets as assets

FROM percona:5.7.20

# Copy binaries
COPY --from=assets $GOBIN $GOBIN/

# copy web admin files
COPY --from=assets $VTROOT/web $VTROOT/web

# copy vitess config
COPY --from=assets /mnt/config /mnt/config

# Create vitess user
RUN groupadd -r vitess && useradd -r -g vitess vitess && \
   mkdir -p /vt/vtdataroot && chown -R vitess:vitess /vt

# Create mount point for actual data (e.g. MySQL data dir)
VOLUME /vt/vtdataroot

Some action items from my conversation today with @enisoc and @sougou

[ ] require that the etcd operator be installed, but the chart will spin up etcd clusters using it
[ ] stop logging to container files and only ship to stdout/stderr
[ ] figure out how to make the mysql image agree on a uid with vttablet (@enisoc)

More work on integrating with Orchestrator will happen in a later PR.

Here's a discussion related to chowning and root privileges https://github.com/kubernetes/kubernetes/issues/2630#issuecomment-321009380


emptyvols option doesn't work for kompose convert/up

kompose convert and kompose up fails with emptyvols option:
$ kompose version
0.7.0 (c25b7e8)

$ kompose --provider=openshift --emptyvols -f examples/docker-compose.yaml convert -h
Error: unknown command "examples/docker-compose.yaml" for "kompose"
Run 'kompose --help' for usage.
unknown command "examples/docker-compose.yaml" for "kompose"

Without emptyvols option:
$ kompose --provider=openshift -f examples/docker-compose.yaml convert
INFO file "frontend-service.yaml" created
INFO file "redis-master-service.yaml" created
INFO file "redis-slave-service.yaml" created
INFO file "frontend-deploymentconfig.yaml" created
INFO file "frontend-imagestream.yaml" created
INFO file "redis-master-deploymentconfig.yaml" created
INFO file "redis-master-imagestream.yaml" created
INFO file "redis-slave-deploymentconfig.yaml" created
INFO file "redis-slave-imagestream.yaml" created

Same issue is seen with kompose up, and has been documented here #614

Taking a look at this :+1:

@ashetty1 , this is weird but if I run, I got error,
$ kompose --provider=openshift --emptyvols -f kompose/examples/docker-compose.yaml convert
Error: unknown command "kompose/examples/docker-compose.yaml" for "kompose"
Run 'kompose --help' for usage.
unknown command "kompose/examples/docker-compose.yaml" for "kompose"

but if I run it as,
$ kompose --provider=openshift  -f kompose/examples/docker-compose.yaml convert --emptyvols
INFO file "frontend-service.yaml" created
INFO file "redis-master-service.yaml" created
INFO file "redis-slave-service.yaml" created
INFO file "frontend-deploymentconfig.yaml" created
INFO file "frontend-imagestream.yaml" created
INFO file "redis-master-deploymentconfig.yaml" created
INFO file "redis-master-imagestream.yaml" created
INFO file "redis-slave-deploymentconfig.yaml" created
INFO file "redis-slave-imagestream.yaml" created

it worked :)

@surajnarwade yes. I saw the same behaviour too. If --emptyvols is passed after up/down, it works. Weird indeed.

@kadel , is it intentional ?

yes, that is intentional.
--emptyvol is not a global flag, so it has to be specified after subcommand.

Closing this.


Task - Filter source - number of citations

For each source, I would like to see the number of citation by model (number of citation for TaxonNames, Biological associations, Asserted Distributions, etc.)

This is in the citations by source task, if it's not, it's where it belongs.

Yes, citations by source give details for one source, I would like to filter sources and get summary on number of citations on each model (like nomenclature stats).

We anticipate needing the option to send a basic filter result to a different task to display specifics/other stats that take time to calculate there, so to me this is a new task request.  We can't do everything in a timely manner in one place.


A full list of available configurations can not be found in config.yaml file located in the root directory of this theme

hello dear friend, in your Getting Started | Stack , I'm read this:
A full list of available configurations can be found in config.yaml file located in the root directory of this theme. (If it is not there, please send an issue to let me know.)
so i can't to find it to notice you

Thanks for notifying and sorry for the late reply.
That file is actually located in the root directory of the theme (https://github.com/CaiJimmy/hugo-theme-stack), not in the starter template.


Update signaling version and Changelog

Packages impacted by this PR
@Azure/communication-chat
Describe the problem that is addressed by this PR

Update the dependency @azure/communication-signaling package version to fix the regressions in real time notification support in React Native.

Update the dependency @azure/core-rest-pipeline package version to fix the regressions in client response support in React Native.

Checklists

[x] Added impacted package name to the issue description
[ ] Does this PR needs any fixes in the SDK Generator?** (If so, create an Issue in the Autorest/typescript repository and link it here)
[x] Added a changelog (if necessary)

API change check
API changes are not detected in this pull request.


Tasks 388-390: Torque (merge issue fix)

Merge issues fixed for PR #207

task388_torque_event_detection.json | Given a passage, identify all events from it | Event Detection
task389_torque_generate_temporal_question.json | Given a passage, generate a temporal question | Question Generation
task390_torque_answer_temporal_question.json | Given a passage, a temporal question and a list of events in the passage, return a subset of event list that answers the given question | Answer Generation

@qiangning feel free to share your comments on the PR if you get a chance.

@PhaniRohithaKaza wondering if you can also help review this PR?

Hi @danyaljj  this is already reviewed in #207, I just created another pull request because I accidentally commited to master branch which was causing merge conflicts.

Sure. That makes sense Swaroop.
On Sat, Sep 18, 2021 at 10:14 PM Swaroop Mishra @.***>
wrote:

@.**** commented on this pull request.
In tasks/README.md
https://github.com/allenai/natural-instructions-expansion/pull/258#discussion_r711669259
:

@@ -329,6 +329,9 @@ Name | Summary | Category
task382_hybridqa_answer_generation | Given a question about part-of-speech tag of a word in the question, answer the question. | Answer Generation
task386_semeval_2018_task3_irony_detection | Given a tweet judge whether it contains irony or not. | Classification
task387_semeval_2018_task3_irony_classification | Given a tweet Classify the kind of irony it has. | Classification
+task388_torque_event_detection | Given a passage, identify an event from it | Event Detection

Thanks @qiangning https://github.com/qiangning for your comments. I
agree that, we should create token classification and textspan selection as
new categories because event detection is too specific and answer
generation is too general.
However, I think it may be a good idea to keep question generation as it
is because we have multiple text generation tasks which we have named
differently e.g. long text generation, sentence generation, question
generation etc.
@shailaja183 https://github.com/shailaja183, when you fix this PR, also
create an issue to rename some of the existing answer generation tasks to
text span selection and classification tasks to token classification
wherever appilcable.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/allenai/natural-instructions-expansion/pull/258#discussion_r711669259,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPBHJI3TKOITSQZW7U7V2DUCVBR3ANCNFSM5D7AHRHQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

@swarooprm PR updated, issue reported.

One more comment regarding task390_torque_text_span_selection: in the examples, the events are part of a comma-separated string. However, in the instances, they are included as a list of strings. We should use a consistent pattern.
You gave two options:

Change instance outputs to be a list of comma-separated events. Also mention in the text that the events must be listed according to the order in which they appear in the text.
Change the task instructions so that we expect exactly one event (among those that are of interest).

Addressed above comment (updated task description and output of examples accordingly).

Looks good! thanks @shailaja183!


Add a description field to people in the email registry

It would be great to allow an optional description field for things like the person's position like "Dean" or "rector" for people in the administration, to achieve a similar effect as linking teachers to their channels.
This would be useful since it's not immediately obvious what role an administration member has (as it is with teachers), and it would be easier to search administration members by their position rather than their name (esp. if the user doesn't know the name of the person with the position in question)

From discord chat:
I looked at the code and it seems like we'd need to add a field into the sql table (and maybe even do a migration) 😭
if we add descriptions which would require some modification of the sql structure anyways, would it be worth adding in more optional fields... I know that knowing who the course coordinator would be helpful (but apparently it changes year to year)... I would think that you just have a boolean field and it will be true for which teachers are the current course coordinators for a specific course... additionally, maybe if the teacher has a whatsapp or phone number to add that and/or if they only teach on one campus such as lev or tal ...


IMX, GODS and GOG Token: Add to 'Import Token' Search List

IMX, GODS and GOG tokens do not appear when searched for in the 'Import Token' section of the MetaMask UI.

Token Information:
IMX: https://etherscan.io/token/0xf57e7e7c23978c3caec3c3548e3d615c346e79ff
GODS: https://etherscan.io/token/0xccc8cb5229b0ac8069c51fd58367fd1e622afd97
GOG: https://etherscan.io/token/0x9ab7bb7fdc60f4357ecfef43986818a2a3569c62
May they please be added to the Import Token search list.

Hey @MRabenda,
I can see GODS and GOG, but still cannot see IMX in my list.

May you please confirm?

It should be solved now, if there is still issue please let me know


Shell instances launched by the tools from the desktop are always non-interactive.

(In that they never create a window with an OpenGL context and the works.)
This requires https://github.com/flutter/engine/pull/3011 to land with a roll. Fixes https://github.com/flutter/flutter/issues/5769 after.

cc @jason-simmons

LGTM

The engine patch has landed. Just amended this PR to roll the engine too. Will wait till bots are green.

Bots are green. Landing.


update deps

The CI failure is due to a change to Cargo.lock being missing from the commit.

Make sure to run a full cargo update as well, interested to see if we get any benefit from the performance improvements in: https://github.com/tokio-rs/tokio/releases/tag/tokio-1.24.0


feat: lazy iterator, less allocation

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.04% :tada:

Comparison is base (2980669) 85.40% compared to head (54939f4) 85.45%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #71      +/-   ##
==========================================
+ Coverage   85.40%   85.45%   +0.04%
==========================================
  Files          24       24
  Lines        1247     1244       -3
==========================================
- Hits         1065     1063       -2
+ Misses        182      181       -1

Files Changed
Coverage Δ

crates/cli/src/commands/add.rs
94.66% <100.00%> (ø)

crates/cli/src/commands/install.rs
96.38% <100.00%> (-0.05%)
:arrow_down:

crates/package_json/src/lib.rs
95.58% <100.00%> (+0.49%)
:arrow_up:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

How does this effect the performance? Can you run the benchmark folder and share before after execution times of adding fastify?

main (2980669):

this PR (54939f4):

Speaking of benchmark, I have a repo called parallel-disk-usage which compare benchmark of the PR against a fixed version: https://github.com/KSXGitHub/parallel-disk-usage/blob/0.9.0/.github/workflows/benchmark.yaml

@KSXGitHub I mean can you run this benchmark?

The warmup=5 is too much for me. I think I will benchmark it tomorrow. Or you can benchmark it yourself. Though I don't think there would be any visible difference, as the cost of allocations is negligible compared to network latency and IO.

BTW, I have a repo called parallel-disk-usage that has a CI that compare benchmark of PRs to a fixed version: https://github.com/KSXGitHub/parallel-disk-usage/blob/0.9.0/.github/workflows/benchmark.yaml. The deploy CI also benchmark it against similar tool: https://github.com/KSXGitHub/parallel-disk-usage/blob/0.9.0/.github/workflows/deploy.yaml.


Relationship not in include parameter nor getDefaultRelationships() is still being evaluated

I'm unsure if this is the intended behavior or not but I was a bit surprised to discover that relationships returned by the transform's getRelationships() method are still being evaluated even though the relationship name is not present in the include query parameter nor in the array returned from the transform's getDefaultRelationships().
I did a bit of digging and found that when a relationship is being transformed there's a check here that calls both isIncludedField() and isIncludedRelationship() to figure out if the relationship should be transformed or not.
However, isIncludedField() returns true since the default behavior for fields is to be included if no fields are present in the fields query parameter, causing the the check to fail and transform to continue.
My assumption would be that if my transformer has two relationships defined in getRelationships() and only one of them in getDefaultRelationships(), both relationships should not be evaluated.

Hey,
Thanks for the report! This part was difficult to implement (that's why it is a bit complicated), but I think the current behaviour should be in line with the specification.
The examples page of the specification covers this topic very well: the most important part is when it mentions that relationships are fields too, so the response will contain all of them by default (when you don't define sparse fieldsets). Of course, included resources will only be present if you explicitly ask for them (via the "include" query param) or define a relationship to be included by default via the getDefaultRelationships().
So I believe that your confusion comes from the name of the getDefaultRelationships() method. It should rather be getDefaultIncludedRelationships() or something similar (feel free to suggest a better name!).
I hope that I understood you well. Tell me, if you meant something else. However, I tested my API, and it worked the way I expect to be correct. To avoid such confusion, I will rename this method and add some documentation for it.

Thank you for your reply!
Yes, I fully understand this is a complex area of the spec :)
I agree with you. Relationships, as available under the relationships key of a Resource Object, should be considered fields as well. Renaming getDefaultRelationships() to getDefaultIncludedRelationships() does make sense and would have caused less confusion on my part.
I think it makes sense to always include all relationship fields (unless fields parameter is provided and states otherwise). I do however think that it's a common scenario is to provide only links.related for your relationship, unless you've specifically asked for the data using included. In that case, you already have the data and would most likely want to provide data for the relationship too. Do you have any suggestions how this would be handled using yin?
I failed to mention before that I greatly appreciate your effort creating this library. It seems very well written and well tested and I'm looking forward to exploring it more :+1:

Ah, really good question! I am afraid there is no workaround for it currently, however it definitely makes sense. I'll try to come up with a good solution (or you can send a PR if you have one).
Anyway, my first idea to solve this issue is to provide an isIncluded argument for the anonymous functions in the getRelationships() method and the end user can decide upon it to add the data part or not. However, you have to write an if statement for each relationship this way.
Another idea is to add an omitDataIfNotIncluded() method (or the like of it) to the AbstractRelationship object and it should make the decision instead of the end user. It is much cleaner, although it blocks the possibility to lazily load related resource identifier objects (so only load them when they are needed). In spite of this, I might prefer this solution. What about you?
Aand thanks for the compliments, I am glad that you found Yin to be useful. :)

Got it, thanks :)
For me personally, in my current project, there's a large set of resource types and relationships and performance/lazy loading is very important due to some of our back-end systems having pretty high latency. In these cases it would be golden to be able to load them only when requested.
The isIncluded approach would allow for lazy loading but like you said, you would have to manually handle it for every relationships. What do you think about passing $data as a callable to AbstractRelationship and that could be used in conjunction with omitDataIfNotIncluded()?

Yes, this was my third alternative, but I first felt it overcomplication so I rejected it. But after learning about your use-case, I now think it is a viable solution!
So a dataAsCallable() method could be added to the relationships and as you said, it can be used along with omitDataIfNotIncluded(). The drawback of the solution is that users have to call two methods to perform one task.
Another idea I came up with is to add a setDataWhenIncluded() and a setDataAsCallableWhenIncluded() to the relationships. It definitely offers a simpler usage than the first one, but limits customization (omitDataIfNotIncluded() might be called depending on several other factors).
Now I am a bit unsure which solution I prefer. Could you tell my your preference?

I've just implemented the first solution in my last commit (https://github.com/woohoolabs/yin/commit/6c8f328e2467e6b7cb08c5f09a5b2a6189e20c97), because I think the setDataWhenIncluded() method names wouldn't have been expressive enough. I hope that
you are OK with this!
P.S.: I am thinking about a bigger change in Yin: swapping the Links object with a plain-old PHP array because I became uncertain recently if an object is really useful and needed. Could you give me your input about this idea?

Sorry for my delayed response. I just tried out master and setDataAsCallable() solves my issue perfectly! Very appreciated, thanks a lot!
Feel free to close this issue :+1:

I think the current Links schema is pretty straight forward and provides a nice API. That said, I haven't used it enough to confidently know about the advantages/disadvantages compared to a plain array.


[IVANCHUK] Update gettext catalog for ivanchuk

What's the reason behind introducing es in addition to the es-ES we already have?
Should es be replacing es-ES instead of having 2 versions?
(I don't think it makes sense to have a "spanish (generic)" and "spanish (spain)" as 2 variants, maybe one of them should be es-419 for latin america?)

The es locale, that seems like it's been added, is a merge of the es translation we have in hammer branch. It just seems like a new locale, because we did not have it in master branch.
The es translation has been contributed by an external translating company, es-ES is a community contribution. And I guess that we can consider es a generic spanish translation, while es-ES contains Spain-specific translation.

OK, as long as both are a valid up to date translations.. :) Thanks :)


Edited README.

Minor edits to README.

Coverage remained the same at 95.595% when pulling fa8af6988c855080d935fe8b8ae8652612b4a193 on hsim13372:edit_readme into 89018893d885352c5ac630688cded5ef2b999d39 on cs207-group11:master.

Coverage increased (+0.003%) to 95.597% when pulling d2382302900e52c90182b3a9ded113b5dccac078 on hsim13372:edit_readme into 89018893d885352c5ac630688cded5ef2b999d39 on cs207-group11:master.


Change comment about exchange rate to USD

In CA transaction details add secondary currency name in the comment about exchange rate to "USD exchange rate..." (or "BTC/ETH rate" depending on selected secondary currency).
The full text should be:
"(USD exchange rate was not available at the time of transaction)" or "(USD rate calculated with the exchange rate at the time of transaction)"
https://zpl.io/bW7BRPj
https://zpl.io/2EGyyOY

Checked.
P.S. Was decided to leave the comment above the currency amount and name.


doc: add environments.md

Description: Added environments.md file to be inline with other open source repositories.
Testing done: Markdown file renders correctly and links work
Affected area:

Functional Area

New Functionality
[ ]

CI System
[ ]

CLI Tool
[ ]

Certificate Management
[ ]

Control Plane
[ ]

Demo
[ ]

Documentation
[ x]

Egress
[ ]

Ingress
[ ]

Install
[ ]

Networking
[ ]

Observability
[ ]

Performance
[ ]

SMI Policy
[ ]

Security
[ ]

Sidecar Injection
[ ]

Tests
[ ]

Upgrade
[ ]

Other
[ ]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? NO

Did you notify the maintainers and provide attribution?

Is this a breaking change? NO

Has documentation corresponding to this change been updated in the osm-docs repo (if applicable)? N/A

@shashankram are there any additional reviewers needed for this PR? or are you willing to merge?

@shashankram are there any additional reviewers needed for this PR? or are you willing to merge?

@nojnhuh, @jaellio, @trstringer could one of you review and merge this?


Update dependecy of eslint-config-standard-jsx

I've been having issues with a deprecation warning of react/jsx-space-before-closing and eslint-config-standard-jsx package, that are solved on v4.0.2 by this commit standard/eslint-config-standard-jsx@c13637e.
I would like to reference this issue bcomnes/sublime-standard-format#54 too, becouse this change fixes it for me.

Please remove the tilda character as we prefer to lock down dependencies for maximum consistency.

Released as 10.0.3.  🎉


ng-model not working properly

I am using the following code to select date. But the ng-model have empty value only on selecting date.

@thiruopti please, share your code...

you should use as follow:
//correct:

//incorrect:

Have same issue using latest (1.5.8) angular... I've:
<input date-time ng-model="pickedDate">
pickedDate is not changed in my scope on date pick... Notice, that dateTime directive has scope: true and model changes are committed to child isolated scope. Changing to scope: false helps, but changes the semantics...


Not able to flash stm32h735g_disco - TARGET: stm32h7x.cpu0 - Not halted

When using the new Zephyr-SDK-0.15.0, I cannot flash the stm32h735g_disco board.
If I build the zephyr/samples/hello_world project for the stm32h735g_disco and try to flash it, I receive this error:
-- west flash: rebuilding
ninja: no work to do.
-- west flash: using runner openocd
-- runners.openocd: Flashing file: /home/max/Desktop/zephyrproject/build/zephyr/zephyr.hex
Open On-Chip Debugger 0.11.0+dev-00724-g42b6471c1 (2022-08-17-18:23)
Licensed under GNU GPL v2
For bug reports, read
	http://openocd.org/doc/doxygen/bugs.html
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate

Info : clock speed 1800 kHz
Info : STLINK V3J9M3 (API v3) VID:PID 0483:374E
Info : Target voltage: 3.300602
Error: BUG: can't assert SRST
Info : [stm32h7x.cpu0] Cortex-M7 r1p2 processor detected
Info : [stm32h7x.cpu0] target has 8 breakpoints, 4 watchpoints
Error: read_memory: read at 0x5c001004 with width=32 and count=1 failed
Error executing event examine-end on target stm32h7x.cpu0:
/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg:236: Error: read_memory: failed to read memory
in procedure 'stm32h7x_dbgmcu_mmw' called at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 169
in procedure 'stm32h7x_mmw' called at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 259
in procedure 'stm32h7x_mrw' called at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 241
at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 236
Info : starting gdb server for stm32h7x.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
    TargetName         Type       Endian TapName            State
--  ------------------ ---------- ------ ------------------ ------------
 0* stm32h7x.cpu0      hla_target little stm32h7x.cpu       reset

Error: read_memory: read at 0x5c001004 with width=32 and count=1 failed
Error executing event examine-end on target stm32h7x.cpu0:
/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg:236: Error: read_memory: failed to read memory
in procedure 'ocd_process_reset'
in procedure 'ocd_process_reset_inner' called at file "embedded:startup.tcl", line 876
in procedure 'stm32h7x_dbgmcu_mmw' called at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 169
in procedure 'stm32h7x_mmw' called at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 259
in procedure 'stm32h7x_mrw' called at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 241
at file "/home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/stm32h7x.cfg", line 236
Error: timed out while waiting for target halted
TARGET: stm32h7x.cpu0 - Not halted
FATAL ERROR: command exited with status 1: /home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/bin/openocd -s /home/max/Desktop/zephyrproject/zephyr/boards/arm/stm32h735g_disco/support -s /home/max/zephyr-sdk-0.15.0/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts -f /home/max/Desktop/zephyrproject/zephyr/boards/arm/stm32h735g_disco/support/openocd.cfg '-c init' '-c targets' -c 'reset halt' -c 'flash write_image erase /home/max/Desktop/zephyrproject/build/zephyr/zephyr.hex' -c 'reset halt' -c 'verify_image /home/max/Desktop/zephyrproject/build/zephyr/zephyr.hex' -c 'reset run' -c shutdown

I compared the target file stm32h7x.cfg found in ~/zephyr-sdk/sysroots/x86_64-pokysdk-linux/usr/share/openocd/scripts/target/ from the Zephyr-SDK-0.14.2 with the file from the Zephyr-SDK-0.15.0 and saw some changes, which I then reverted one by one until I noticed that the change in line 145 broke the flashing process. After changing the line back to reset_config srst_only srst_nogate, I could flash the stm32h735g_disco board again.
I have also noticed that after applying the change to the stm32h7x.cfg file, I have to flash the nucleo_f429zi board twice before the flash command succeeds. Afterwards, I can flash it as usual until I flash the stm32h735g_disco again.
For clarification:

Flash order
Success?

stm32h735g_disco
:heavy_check_mark:

nucleo_f429zi
:x:

nucleo_f429zi
:heavy_check_mark:

nucleo_f429zi
:heavy_check_mark:

stm32h735g_disco
:heavy_check_mark:

nucleo_f429zi
:x:

nucleo_f429zi
:heavy_check_mark:

This problem only occurred after the switch to the new Zephyr-SDK version. In the previous 0.14.2 version, everything worked fine, and I can use the stm32h735g_disco without any issues on macOS, where I do not use the SDK.
To Reproduce
Steps to reproduce the behavior:

west build -b stm32h735g_disco -s zephyr/samples/hello_world/ -p always
west flash

Impact
annoyance
Environment (please complete the following information):

OS: Linux
main branch
Zephyr SDK 0.15.0

I've contacted STM32 openocd maintainer for this specific issue.
Meanwhile, if this is blocking, I suggest to use stm32cubeprogrammer runner. Reducing criticality to low since there is an alternate solution.

@maxstreitberger I suspect an openocd configuration issue.
Would  you mind trying to replicate the configuration provided for nucleo_h743zi.
Regarding nuclo_f429zi, I'll open a dedicated ticket, as I've found the root cause, and I'm not sure it applies to H7

@maxstreitberger Can you try: https://github.com/zephyrproject-rtos/zephyr/pull/50860 ?


Comment here to be added as a collaborator

Comment below - you can say anything
We will all be using this repository today. Even though it's public, you will not be able to make changes until you're given the correct permissions. We've automated this process via the GitHub API and some fancy chatops. Once you comment, you'll be added as a collaborator.
You'll also start to receive a lot of emails. (:exclamation:) You can slow these down immediately by clicking the 'unsubscribe' button.

From ☀  Orlando, FL

From El Paso, TX

Hello World! Git
From: Chicago, IL

From Bartlett, IL :hand:

Searcy, Arkansas :pig2:

:parasol_on_ground: From Ogden Dunes, IN

From Wheeling, IL

From :snowflake:  Chicago

From :snowflake: Chicago, IL

:tada: @cgraham1, @zzbarrao, @nobrzudDFS, @nilknarfgnow, @kairudloff, @psaweh, @skairamk, and @kphanik38 are now  repository collaborators. :balloon:

from: Beach Park, IL

From Glenview, IL

Riverwoods, RWD

From: Chicago, IL

:tada: @pjbrown9, @jrpatte, @ningguodfs, and @tbujas are now  repository collaborators. :balloon:

hello git world.

:tada: @discoversmo is now a repository collaborator. :balloon:

Hello from Chicago, IL, USA

Born in Ballia, India. :snowflake: arlington heights, IL is my adopted home.

learning from Clinton Township Michigan

from me

:tada: @SJKramer, @sharadtiwari, @johnbrauner, and @familyreader12x are now  repository collaborators. :balloon:

from Des Plaines, Il

:tada: @MukthaNarayan and @randy1017 are now  repository collaborators. :balloon:

@githubteacher


README: add snippets for the tracing package

It would be good to have a few snippets to demonstrate how to create a span, add some annotations, end it.

Just a random idea: Could we perhaps make fully fledged applications or microservices and add tracing and metric collection to them? That way we can actually point people to show them how to use our package lest there is the mindblock of them having to figure out how to integrate the app by themselves. I also believe that this is DevExp improvement and could even be translated into a blog post/talk.

Hi, @odeke-em! I'd like to take a stab at this next. So basically the goal is a non-trivial example that incorporates multiple features of OpenCensus, right? (various measures, views, and traces)

Actually @odeke-em I just came across this draft of yours: https://medium.com/@odeke_et/3636820d98c8
Does that mean you're already working on this issue?

@freddygv ahah interesting that you found that URL, I wonder how? I actually just published it a few hours ago, please see https://twitter.com/orijtech/status/971890040304480257.
That was a comprehensive example though. I believe @rakyll already worked on this with https://github.com/census-instrumentation/opencensus-go/pull/507.

We can close this issue, we have enough examples already.


Platform model

What:

Adding Platform.model for iOS (Should be extended to android to return Build.Model). Web returns null for now, should also throw a warning.
Adding a guard for Pixelratio for iOS. will now round for iOS

Why:

Helps in detecting devices to specify style changes.
makes the styling easier for iOS.

How:

Checklist:

[ ] Documentation
[ ] Tests
[x] Ready to be merged
[x] Added myself to contributors table

@dmikey @MSiddharthReddy - I think we should add in Android parity before merging, thoughts?


Help positioning taskbar icons to the middle for ultrawide monitors

Summary of the new feature/enhancement
Fancyzone solved my ultrawide monitor window management problems. The other thing I struggle with is positioning the taskbar icons from the left to the middle. It is possible with taskbar "tricks", but causes problems when the resolution changes (like when I un-dock my laptop from the ultrawide screen). Would love to have a powertoy to automate this somehow.

Hi @attila-kocsis
thank you for your feedback, this feature request is already tracked by https://github.com/microsoft/PowerToys/issues/799
Please add you comments there, I'm closing this as a diuplicate.
Thank you.


detect measurements in identifier name and suggest making them the unit token

something to warn about

we have this.  I know its helped me catch things that involve meters before


does not support pulid_v1？

After testing, it was found that the model does not support pulid_v1, and an error message will appear saying 'PulidFluxModel' object has no attribute 'id_adapter'. I am not sure if this is due to the issue with torch2.4.1+cu124

@Songssx This node is explicitly for PuLID Flux! Not for SDXL. If you want to use the older you can use this repo:
https://github.com/cubiq/PuLID_ComfyUI
At the moment, I don't see the point in also supporting the old model. Each flow has only one type of model loaded in 99% cases (SDXL or FLux or SD3 etc.). If a mix is needed, the nodes from PuLID_ComfyUI and ComfyUI-PuLID-Flux are compatible, i.e. PulidFluxEvaClipLoader, PulidFluxInsightFaceLoader can be used for both models PuLID (SDXL, Flux)


landing page: implement contributors display

Reuse the display logic used for creators (#338)

For each contributor type display a list of contributors.

Closed via https://github.com/inveniosoftware/invenio-rdm-records/pull/239


[SMALLFIX] Address TODOs and some small improvements

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/12414/
Test PASSed.

Merged build finished. Test PASSed.

LGTM, thanks for the improvement.


Autofix file should end with a newline

Bug Report
TSLint version: 4.0.2
TypeScript version: 2.1.4
Running TSLint via: CLI
TypeScript code being linted
export const x = "x";

Enable the file end with newline rule, and see that it fails the linter.
TSLint could autofix this error. It currently does not.

I wouldn't mind trying to fix this but I'm not sure when I'd have the time

How do you know which line ending to choose? \r\n or \n?
Of course this could be inferred from the other line endings in the file, but what if there is only a single line?

Good point.
One idea is to only autofix this when there are multiple lines in the file, that way the line ending can be inferred.
Another strategy is just to guess. Not ideal, could potentially be configured, but that seems like a lot of overhead for such a small edge case.
Does the existing TSLint rule just check that the file ends in \r\n or \n?

Does the existing TSLint rule just check that the file ends in \r\n or \n?
It just checks if the last character is \n. That covers both cases.
I like the idea of fixing only multiline files. Otherwise when guessing wrong we could introduce new failures for the linebreak-style rule.

Is it possible to check what the value of the linebreak-style rule is while trying to autofix the eofline rule?

Nope, currently each rule is limited to its own configuration.
There is no way to access the config of another rule, although that would be pretty useful in many cases.

I don't think we want rules reading options that don't belong to it. I'm fine with only fixing files with multiple lines.

How do you know which line ending to choose? \r\n or \n?
Of course this could be inferred from the other line endings in the file, but what if there is only a single line?
hi there
Just put enter and add a new line and save the file this warning will disappear


NavigationActions navigates incorrectly when TabNavigator is nested in DrawerNavigator

RESUBMITTING THIS ISSUE
Added Expo snack here which clearly replicates the issue: https://snack.expo.io/r1It-LsWG
I believe I have found a bug when nesting TabNavigator in DrawerNavigator when using the same screen in multiple tabs.
In this example I'm using the screen "ProfileScreen" in both Tab1 and Tab2 and in Tab3 I have a button that should navigate to Tab2 -> ProfileScreen. This works perfectly if I only use TabNavigator but when It's nested in a DrawerNavigator, the navigator sends me to Tab1 -> ProfileScreen.
Here's my example App.js
import React from 'react';
import { StyleSheet, Text, View, Button } from 'react-native';
import { DrawerNavigator, TabNavigator, StackNavigator, NavigationActions } from 'react-navigation';

const ProfileScreen = () => {
  return (
    <View>
      <Text>This is profile</Text>
    </View>
  )
}

const Tab1Navigator = StackNavigator({
  Main: {
    screen: () => {
      return (
        <View>
          <Text>Main screen in tab 1</Text>
        </View>
      )
    },
  },
  Profile: {
    screen: ProfileScreen,
  },
});

const Tab2Navigator = StackNavigator({
  Main: {
    screen: () => {
      return (
        <View>
          <Text>Main screen in tab 2</Text>
        </View>
      )
    },
  },
  Profile: {
    screen: ProfileScreen,
  },
});

const Tab3Navigator = StackNavigator({
  Main: {
    screen: (props) => {
      return (
        <View>
          <Text>Main screen in tab 3</Text>

          <Button title="Take me to profle in tab2" onPress={() => {
            props.navigation.dispatch(NavigationActions.navigate({
              routeName: 'Tab2',
              params: {},
              action: NavigationActions.navigate({
                routeName: 'Profile',
              }),
            }));
          }}/>
        </View>
      )
    },
  },
});

const Tabs = TabNavigator({
  Tab1: {
    screen: Tab1Navigator,
  },
  Tab2: {
    screen: Tab2Navigator,
  },
  Tab3: {
    screen: Tab3Navigator,
  },
}, {
  lazy: true,
  tabBarPosition: 'bottom',
  tabBarOptions: {
    showIcon: false,
    activeTintColor: '#e91e63',
  },
});

const Drawer = DrawerNavigator({
  Tabs: {
    screen: Tabs,
  },
}, {
  contentComponent: () => <View />
});

export default class App extends React.Component {
  render() {
    return <Drawer />
  }
}

Current Behavior
Button in Tab3 using NavigationActions sends me to Tab1 -> ProfileScreen
Expected Behavior
Button in Tab3 using NavigationActions should be sending me to Tab2 -> ProfileScreen

software
version

react-navigation
1.0.0-beta.21

react-native
0.50.0

node
8.9.1

npm or yarn
yarn 1.3.2

Thanks for reporting, I have mostly one question atm: Do you need to have the screen called the same way in all 3 navigators? I mean, you could attach them to the same component but call it in different ways, in order to "avoid" having the navigation send you to "the first one it sees" with that name.
I also suggest that you take a look at this issue because the "root" is the same: https://github.com/react-community/react-navigation/issues/444
btw you wrote

RESUBMITTING THIS ISSUE

Which was the first iteration of this?

Which was the first iteration of this?

Oh right, sorry. The first one is at #2043

Do you need to have the screen called the same way in all 3 navigators? I mean, you could attach them to the same component but call it in different ways, in order to "avoid" having the navigation send you to "the first one it sees" with that name.

Well yes, of course I could attach them with different names, but that's kinda just avoiding my/the issue. The given example here is an extremely simplified version of it really.
In my real project, I have dozens of screens under the "Profile" section and I declare all those routes in a single file. I then require that file inside 4 different tabs since they are possibly accessible from there (F.e. in a notifications tab and in a posts feed tab).
Using unique names for all those routes in all different tabs would feed like an unnecessary code duplication, or in my case, a code quadruplication. :)

Gotcha, but in that case, I really suggest you read the approach proposed here:  #444
Anyway I'll keep this open, but I'm not sure how it would be fixable.

Yes thanks, I checked #444 and it describes a similar scenario. However, I don't really have any issues navigating within each tab.
The issue here is really with the sub-action in NavigationActions. F.e. when a user presses a notification in my app, I want to send him to my tab2 (Notifications tab) and from there into the Profile screen. But he always gets sent to the Profile screen inside tab1 (Posts feed tab).
You see what I mean?

I'm not really sure how NavigationActions.navigate() works under the hood, but it would sound pretty straight forward to send the parent routeName to that sub action so it would search inside that route first. :)

The issue here is really with the sub-action in NavigationActions.navigate(). F.e. when a user presses a notification in my app, I want to send him to my tab2 (Notifications tab) and from there into the Profile screen. But he always gets sent to the Profile screen inside tab1 (Posts feed tab).

yeah that's my guess too.
Btw not sure it's strictly related, but can you check if these PRs would help with fixing your issue?
https://github.com/react-community/react-navigation/pull/2544
https://github.com/react-community/react-navigation/pull/3094 (this prob is not really strictly related)

hi there!
this is resolved now -- i updated to 1.3.1 and it works as expected: https://snack.expo.io/H1W1_rDuz
you'll just want to be careful that if you navigate to the profile, then go back to tab3 and navigate to profile again, it'll push a second profile screen. to handle this, use a key:
action: NavigationActions.navigate({
   routeName: 'Profile',
   key: 'tab2-profile' // or some thing like the id
}),


Crash with owo lib

Mod Name
owo-lib
Mod Homepage
https://www.curseforge.com/minecraft/mc-mods/owo-lib/files/all?page=1&pageSize=20&version=1.20.1
Minecraft version
1.20.1
Describe the bug
Start up crash
Steps to reproduce
1.Install mods
2.Launch minecraft
Logs
https://gist.github.com/Tomat777/0d8a743a1660b3e53c3386e1019ebf7d
Additional context
Beta 34 worked fine. Crashes on both 47.2.20 and 47.1.3.

Having similar crash. Also, posted in the support channel on Discord. Here is my log:
latest.log

Crash replicatable here as well

Confirmed crash, same error as provided here.

s∞n


Add test packages as optional imports to OSGi manifest

Check List:

Fixes #1290
Unit tests : NO

Added org.junit, org.opentest4j and org.testng as optional imports to the OSGi Import-Package manifest entry. This allows org.assertj.core.api.Assumptions.getAssumptionClass() to resolve these classes if their bundles are installed in the current environment - without these import statements, they won't load and the assumption will throw an IllegalStateException.
Proper regression testing would be nice, but requires a full-blown OSGi integration test which does not exist yet.

Thanks @kriegfrj !


Use relative assetsPublicPath

Description
assetsPublicPath needs to be relative, so that it can work with FLAGR_WEB_PREFIX='/foo'
Motivation and Context

How Has This Been Tested?
tested locally with and without the FLAGR_WEB_PREFIX setting.
FLAGR_WEB_PREFIX='/foo' make run

make run

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Fix #222


CUDA out of memory in per-scene optimization

Thanks for sharing the code.
However, when I run per-scene optimization,   CUDA is out of memory even if I set the batch size to 1.
The code is listed below:
CUDA_VISIBLE_DEVICES=2,3,4 python train.py --dataset_name scannet --root_dir scene0000_01 --exp_name exp --num_gpus 3 --batch_size 1,

and the output:
LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [2,3,4]
LOCAL_RANK: 2 - CUDA_VISIBLE_DEVICES: [2,3,4]
LOCAL_RANK: 1 - CUDA_VISIBLE_DEVICES: [2,3,4]

Training: 0it [00:00, ?it/s]Traceback (most recent call last):
  File "train.py", line 259, in <module>
    trainer.fit(system, ckpt_path=hparams.ckpt_path)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 696, in fit
    self._call_and_handle_interrupt(
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 648, in _call_and_handle_interrupt
    return self.strategy.launcher.launch(trainer_fn, *args, trainer=self, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/strategies/launchers/subprocess_script.py", line 93, in launch
    return function(*args, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 735, in _fit_impl
    results = self._run(model, ckpt_path=self.ckpt_path)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1166, in _run
    results = self._run_stage()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1252, in _run_stage
    return self._run_train()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1283, in _run_train
    self.fit_loop.run()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/loops/loop.py", line 195, in run
    self.on_run_start(*args, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/loops/fit_loop.py", line 223, in on_run_start
    self.trainer._call_lightning_module_hook("on_train_start")
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1550, in _call_lightning_module_hook
    output = fn(*args, **kwargs)
  File "train.py", line 146, in on_train_start
    self.model.prune_cells(self.train_dataset.K.to(self.device),
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/home/yangwang/NeRFusion/models/nerfusion.py", line 191, in prune_cells
    uvd = K @ xyzs_c  # (N_cams, 3, chunk)
RuntimeError: CUDA out of memory. Tried to allocate 2.34 GiB (GPU 0; 10.76 GiB total capacity; 7.21 GiB already allocated; 1.23 GiB free; 7.23 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Traceback (most recent call last):
  File "/home/yangwang/NeRFusion/train.py", line 259, in <module>
    trainer.fit(system, ckpt_path=hparams.ckpt_path)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 696, in fit
    self._call_and_handle_interrupt(
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 650, in _call_and_handle_interrupt
    return trainer_fn(*args, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 735, in _fit_impl
    results = self._run(model, ckpt_path=self.ckpt_path)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1166, in _run
    results = self._run_stage()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1252, in _run_stage
    return self._run_train()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1283, in _run_train
    self.fit_loop.run()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/loops/loop.py", line 195, in run
    self.on_run_start(*args, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/loops/fit_loop.py", line 223, in on_run_start
    self.trainer._call_lightning_module_hook("on_train_start")
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1550, in _call_lightning_module_hook
    output = fn(*args, **kwargs)
  File "/home/yangwang/NeRFusion/train.py", line 146, in on_train_start
    self.model.prune_cells(self.train_dataset.K.to(self.device),
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/home/yangwang/NeRFusion/models/nerfusion.py", line 191, in prune_cells
    uvd = K @ xyzs_c  # (N_cams, 3, chunk)
RuntimeError: CUDA out of memory. Tried to allocate 2.34 GiB (GPU 2; 10.76 GiB total capacity; 4.87 GiB already allocated; 263.56 MiB free; 4.89 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Traceback (most recent call last):
  File "/home/yangwang/NeRFusion/train.py", line 259, in <module>
    trainer.fit(system, ckpt_path=hparams.ckpt_path)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 696, in fit
    self._call_and_handle_interrupt(
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 650, in _call_and_handle_interrupt
    return trainer_fn(*args, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 735, in _fit_impl
    results = self._run(model, ckpt_path=self.ckpt_path)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1166, in _run
    results = self._run_stage()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1252, in _run_stage
    return self._run_train()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1283, in _run_train
    self.fit_loop.run()
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/loops/loop.py", line 195, in run
    self.on_run_start(*args, **kwargs)
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/loops/fit_loop.py", line 223, in on_run_start
    self.trainer._call_lightning_module_hook("on_train_start")
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1550, in _call_lightning_module_hook
    output = fn(*args, **kwargs)
  File "/home/yangwang/NeRFusion/train.py", line 146, in on_train_start
    self.model.prune_cells(self.train_dataset.K.to(self.device),
  File "/opt/anaconda3/envs/ngp_pl/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/home/yangwang/NeRFusion/models/nerfusion.py", line 190, in prune_cells
    xyzs_c = w2c_R @ xyzs_w + w2c_T  # (N_cams, 3, chunk)
RuntimeError: CUDA out of memory. Tried to allocate 2.34 GiB (GPU 1; 10.76 GiB total capacity; 2.53 GiB already allocated; 1.98 GiB free; 2.55 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

Environment:
GeForce RTX 2080 Ti
ubuntu 20.04
cuda 11.4
pytorch 1.12.1
If you have any idea about this problem, i will be really appreciated.

Hi the code should be able to run with even one 2080 Ti. Could you test with 1 GPU and see if that passes? If so I will investigate into this multi-gpu related bug. Also could you test with --downsample 0.5 to see if test passes.

I test it with 1 GPU and it still fails. However, the code can run with one 3080 Ti.