Add prefix and suffix for tag

[x] Changes have been thoroughly tested to not break existing functionality.
[x] New functionality has been documented or existing documentation has been updated to reflect changes.
[x] Visual changes are explained in the PR description using a screenshot/recording of before and after.

This will help folks who need to add prefix, but don't want to type it manually.

This should probably be tagPrefix() and tagSuffix() rather than the other way round. Also for the properties and getter methods. Also, there shouldn't be any default '' for the setter methods, its a required parameter

Can you add some basic docs to tags-input.md please?

Updated the docs. Do you think the explanation is clear enough?

Thanks


Add Nouns Members URI

Hi there, we implement nounsDao's Members URI in Implementations/API !!

Thanks for this PR @0xRory !

@0xRory I think in the current implementation, delegatee-ethereum-address points to delegators' addresses by mistake. should be a reversal.


[Packager] npm3 mainless package.json throws

When using nod5 + npm 3 vanilla install, trying to require a module that does not have "main" in it's package.json (for ex socket.io-client) the packager fuses to require successfully. After downgrading to npm2 the same error disappeared.
not sure if it's because of missing "main" actually, but it's definitely a packager bug
(not letting me require files directly from node_modules using relative paths either for some reasons).
Can produce repro if needed

@dzannotti Still seeing this issue? This package has a 'main' entry in lib/index, but I did notice it won't load unless you load the browser-compatible file as mentioned here: http://stackoverflow.com/a/32234446/1370358
If you think this is still an issue, please reopen here or open another issue with a repo we can test against. Thanks!


The same "fix: allow use zeegaree without unity" needs to be done for Zeegaree-Lite also

I just installed Lubuntu Next 17.10, and whether it is because I am now using Lubuntu Next, or because I went from 17.04 to 17.10, Zeegaree-Lite would not run* until I found the fix for Zeegaree, and made most of the alterations shown on: "https://github.com/mivoligo/Zeegaree/commit/f9cff56b13d223441d23d4a3290dcfc1ca1f0cd4"
(The code referencing "Pomodoro" was not applicable for Zeegaree-Lite)
The line:
LAUNCHER = Unity.LauncherEntry.get_for_desktop_id("zeegaree.desktop")
needed to be altered to:
LAUNCHER = Unity.LauncherEntry.get_for_desktop_id("zeegaree-lite.desktop")
as well)
*Terminal output showing bug:
scott@scott-Asus-M2N68-AM-PLUS:~$  python /data/scott/Downloads/Zeegaree-Lite-master/zeegaree_lite.py
/data/scott/Downloads/Zeegaree-Lite-master/zeegaree_lite.py:21: PyGIWarning: Notify was imported without specifying a version first. Use gi.require_version('Notify', '0.7') before import to ensure that the right version gets loaded.
from gi.repository import Unity, Notify
Traceback (most recent call last):
File "/data/scott/Downloads/Zeegaree-Lite-master/zeegaree_lite.py", line 21, in
from gi.repository import Unity, Notify
ImportError: cannot import name Unity
(by the way:
I don't know what to do about the PyGIWarning, as when I add the line "gi.require_version('Notify', '0.7')" before "from gi.repository import Notify"
I get:
scott@scott-Asus-M2N68-AM-PLUS:~$ python /data/scott/Downloads/Zeegaree-Lite-master/zeegaree_lite.py
Traceback (most recent call last):
File "/data/scott/Downloads/Zeegaree-Lite-master/zeegaree_lite.py", line 22, in
gi.require_version('Notify', '0.7')
NameError: name 'gi' is not defined
)
scott@scott-Asus-M2N68-AM-PLUS:~$ uname -a
Linux scott-Asus-M2N68-AM-PLUS 4.13.0-16-generic #19-Ubuntu SMP Wed Oct 11 18:35:14 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
scott@scott-Asus-M2N68-AM-PLUS:~$ lsb_release -dsc
Ubuntu 17.10
artful
scott@scott-Asus-M2N68-AM-PLUS:~$ echo $DESKTOP_SESSION
QLubuntu
Zeegaree-Lite 1.2

same than higher

Sorry but I'm not maintaining this project any more.


Initial Python QPS Worker

This is the initial python qps worker.  It currently only supports a SYNC server with proto (non-raw) messages.  It doesn't have hooks into the Jenkins test, but can be run with ./run_test.py (options)

I don't think for python we check in the generated _pb2 files into the repository (they're generated on demand), so they probably need to be removed from this PR.

Ad run_test.py script:
We actually already have two cmdline utils to run the performance tests (written in C++):  qps_driver and qps_json_driver, so having an extra test driver written in python seems not to be useful. Also, we're probably trying to abandon the qps_driver approach that uses lots of cmdline arguments to configure the tests and using JSON to configure the scenarios seems to be the way to go.
That said, I think the qps_driver written in C++ is a bit of an overkill and in the future we might want to replace the qps_driver with something written in a more high-level language (perhaps python) - but there would be some extra challenges involved, so for now we will probably stick with the C++ qps_json_driver.
Can we remove run_test.py from this PR (but let's keep the code in case we need it) and instead test the python workers with qps_json_driver?
Btw, integrating python with the rest of the performance testing framework should be easy enough -
see https://github.com/grpc/grpc/pull/6204/files which is adding ruby integration (we don't need to do integration in this PR, but that's where we are aiming).

I've updated the tests to be run using tools/run_tests/run_performance_tests.py -l python.  I've also removed the _pb2 files from the commit.  This branch was too far behind master, and was missing some stuff around qps_json_driver, so I've moved this to #6216


silabs: siwg917: Fix memory definitions

Fix the unit path and register definitiosn for flash and RAM.

@jerome-pouiller any comments on this one? Making the DT node unit path match the reg property should hopefully be non-controversial, since upstream CI will fail otherwise. As for the indicated amount of RAM, I took that from the 917 specs (there are configurations supporting more, but going with the lowest RAM config should be a safe choice for now).

I believe I have copied the memory addresses from the linker file of WiseConnect. I am going to check that this morning.

I believe I have copied the memory addresses from the linker file of WiseConnect. I am going to check that this morning.

Note that I'm not really changing the addresses, rather just making sure that the DT node unit address is in sync with the reg property. Generally, it's the reg property value that gets used (which I'm not changing), so syncing the unit address with it shouldn't make any other difference except making DTS syntax checkers happy.

I believe I have copied the memory addresses from the linker file of WiseConnect. I am going to check that this morning.

Note that I'm not really changing the addresses, rather just making sure that the DT node unit address is in sync with the reg property. Generally, it's the reg property value that gets used (which I'm not changing), so syncing the unit address with it shouldn't make any other difference except making DTS syntax checkers happy.

Sorry, I realized that I am actually changing reg for the other node here. However, at least in my testing I didn't see any breakage.

In my linker file, I have found:
 MEMORY
 {
   rom   (rx)  : ORIGIN = 0x81c2000, LENGTH = 0x6e000
   ram   (rwx) : ORIGIN = 0xc, LENGTH = 0x2fc00
   psram (rwx) : ORIGIN = 0xa000000, LENGTH = 0x800000
 }
 MEMORY
 {
   udma0   (rwx)  : ORIGIN = 0x2fc00, LENGTH = 0x400
   udma1   (rwx)  : ORIGIN = 0x24061c00, LENGTH = 0x400
 }

0x2fc00 == 191kB. Probably we could use <0 DT_SIZE_K(192)> and properly declare udma0. However, for now I am not super comfortable with this change.

0x2fc00 == 191kB. Probably we could use <0 DT_SIZE_K(192)> and properly declare udma0. However, for now I am not super comfortable with this change.

Ok, but then at least the unit address needs fixing, i.e. it should be memory@0 instead of memory@400

@jerome-pouiller now updated, please take another look


fixed issue #19187

Brief Information
This pull request is in the type of:

[X] bug fixing
[ ] new feature
[ ] others

What does this PR do?

It fixes the bug occuring in test/min-max-axis.html test case.
Fixed issues

#19187

Details
Before: What was the problem?

The bar-chart ignores the yAxis.min setting and instead seems to use the auto-calculated value. In min-max-axis.html test case as you can see, the max is not set so it fails auto-calculating the axis labels.

After: How does it behave after the fixing?

The yAxis minimum value should be as specified. (yAxis min is set 5 in our case). It was fixed by when either one is fixed and the other is not,by making sure that the min is always smaller than the max and also the vice versa. Finally after adjusting the min and max we set the minFixed or maxFixed to true so that it won't auto calculate a wrong axis label.

Document Info
One of the following should be checked.

[X] This PR doesn't relate to document changes
[ ] The document should be updated later
[ ] The document changes have been made in apache/echarts-doc#xxx

Misc
ZRender Changes

[ ] This PR depends on ZRender changes (ecomfe/zrender#xxx).

Related test cases or examples to use the new APIs
N.A.
Others
Merging options

[ ] Please squash the commits into a single one when merging.

Other information

Please do not use force pull in the future. This helps us better understand the change.


[camera] Image is captured without flash

Hello, I'm using the camera plugin version 0.8.1, testing on a Motorola One Hyper.
The flash is not working properly.
At the moment the takePicture function is called, the flashlight indeed is turned on as expected but the end result (the XFile returned) seems to be a "dark" image as if the flash was turned off.
I've tested with both always and torch flash modes and the result is the same.
Thanks in advance.

Hi @guilhermeagostinelli

At the moment the takePicture function is called, the flashlight indeed is turned on as expected but the end result (the XFile returned) seems to be a "dark" image as if the flash was turned off.

If the flash turned, then the image is captured with flash but still dark? Or Is the flash timing when capturing the image?
Can you please provide your flutter doctor -v and  Android version of Motorola One Hyper you've
If possible, can you please sample the image taken from this device using the official sample?
Thank you

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.


Communication Channels Blog Post

This is an alternative to #58 which boils things down to broad strokes and doesn't try to make any statements aside from clearly factual ones. Not 100% sure I like the wording and 50/50 on it being a blog post vs something in an About page, but gotta start somewhere.

ACK

Changes proposed here were merged back into #58.


Failed to initialize LBP port

Hello all,
I have managed to built the on premises setup on a set of servers, and also succeeded to setup a connection on a LTE system, using the edge node as a bridge. However, when I try to add the LBP port the process fails to enable and the nts container fails.
I manage to restart it, and attach to it and the error that it ouputs for the LBP port is:
NES: [ERR] Missing: section PORT0, entry lbp-mac, in config file.
NES: [ERR] Failed to add dataplane rules.
NES: [ERR] Could not initialize nes ACL.
NES: [ERR] Could not initialize ctrl.
Am I missing something in the configuration, that i should add? the error points somewhere that the mac of the lbp port is missing from somewhere. Is it missing from the portal or i should add it somewhere else also?
Note: that the UE/eNB port and the EPC port are pinging just fine, and the S1 establishment is being done properly.
Thank you

@akiskourtis have you update the NTS config file with the required LBP ports?  "NES: [ERR] Missing: section PORT0, entry lbp-mac, in config file." suggests missing information.

I see that if i do it manually (add the lbp-mac in the nts.cfg file), the docker starts properly (the traffic does not arrive a the lbp, but maybe that's another issue)
But if I do it through the portal, there is not way, at least from what I see to input the lbp-mac field.
My sample cfg file
[PORT0]
name = 0000:01:00.3
description = I350 Gigabit Network Connection
pci-address = 0000:01:00.3
traffic-type = IP
traffic-direction = lbp
egress-port = 2
MTU = 1500
[PORT1]
name = 0000:81:00.0
description = [enp129s0f0] Ethernet Controller 10-Gigabit X540-AT2
pci-address = 0000:81:00.0
traffic-type = IP
traffic-direction = upstream
egress-port = 2
mac = a0:36:9f:69:6c:f8
MTU = 1500
route = prio:99,ue_ip:<IP_ADDRESS>/0,srv_ip:<IP_ADDRESS>/32,encap_proto:noencap
[PORT2]
name = 0000:81:00.1
description = Ethernet Controller 10-Gigabit X540-AT2
pci-address = 0000:81:00.1
traffic-type = IP
traffic-direction = downstream
egress-port = 1
MTU = 1500
[VM common]
max = 32
number = 2
vhost-dev = /var/lib/appliance/nts/qemu/usvhost-1
[NES_SERVER]
ctrl_socket = /var/lib/appliance/nts/control-socket
[KNI]
max = 32

side note: in the policy editor if i don't fill the source IP it does not let me save and apply it, so I put it as <IP_ADDRESS>, is it correct?

Apparently, I did not assign the policy on the correct interface, and also the timeline of the actions plays an important role.
I noticed that after I define the breakout interface, then I need to also add the policy (from there it gets the lbp-mac field)
Just one minor comment for the documentation, the <IP_ADDRESS> parameter on the input part of the policy needs to be added (in the comments, or the snapshot), as it may be confusing at the start of the deployment.
Apart from that I believe the issue can be closed, as it can be solved either manually adding the lbp-mac on the nts.cfg, or carefully updating the UI parameters.
Thank you for the support @krishnajs !

Thanks, @akiskourtis  ! We will take care of the documentation.


Bug in base tests

If DEBUG is set, the tests will fail to run

Hm, they run fine for me?
Can you give more information?

Not positive the details, but if DEBUG is set, then flask won't let you call the setup function multiple times. By adding DEBUG=False to the test config, this overrides the tester's defaults

See https://github.com/ga4gh/server/issues/791


Missing file

I can't seem to find the config.json.sample file. I'm also having issues using the term "export", I have tried to use "set" instead. Either way, I can't get the app to work, because I can't put in my credentials. Please help.

Thanks for bringing this up - the credentials system changed for Watson Natural Language Processing, so will have to update the steps accordingly.

@dcary01 can you reference which step in the README you are referring to? Which OS are you using?

@dcary01
I have now updated the instructions. You do not need config.json.sample.
Instead, after you run npm install, you need to create Cloudant DB and Natural Language Understanding services. After that, you need to save the URL value from cloudant credentials (after creating new credentials) and IAM_APIKEY value from natural language understanding (after creating new credentials).
Next you need to feed those credentials to the app by using environmental variables. The way to do that is to do something like this, directly into your command line (make sure you are in watson-second-opinion directory) and run the following commands (use your own credentials):
watson-second-opinion$ export IAM_APIKEY=xJLkOtKCXISqQHwjfdRBb99u2r-5sJ7n_sEsfsTJXZiJ
watson-second-opinion$ export<EMAIL_ADDRESS>watson-second-opinion$ node app.js

After you run node app.js if all is well, you can go to localhost:4000 in the browser and start the app. I just started mine, so i know it works! Hope this helps. Let me know if you have any other questions.

@dcary01 I updated to source code to use the updated env variables (IAM_APIKEY and CLOUDANT URL) so please do a git pull origin master before trying to run the app.
(i.e. pull latest version of the code, I updated it a couple minutes ago)

@horeaporutiu thank you as always for keeping this repo updated!
@dcary01 please reopen if you run into any more issues.
Closing this one based of https://github.com/IBM/watson-second-opinion/commit/763bd6b15e5a2542ad0a8f06a5ce36b220ff755e


Question: How to clear the chat bot window?

Great little addition, the chatbot. Just when I needed one.
Quick question; How do you clear the chat window for a new chat?

Hey, we faced some issues with the current design. We'll be reengineering it so that the conversation is in state. This will enable:

Streaming
Loading old conversations
Clearing conversations

As of now, it's not possible. We'll release the new version at the end of month.

Hey, we faced some issues with the current design. We'll be reengineering it so that the conversation is in state. This will enable:

Streaming
Loading old conversations
Clearing conversations

As of now, it's not possible. We'll release the new version at the end of month.

This is great news! I look forward to being able to regenerate responses as well as modify them when using LLM.

Since version 0.6, you can clear chat content. I think this improvement has been developped by @mmikita95.
def clear_conversation(state):
    # initializes a new conversation instead of existing one
    state["chatbot_conversation"] = Conversation()


Remove editCommand from Logic

Fix #56

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@d1910c1). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #78   +/-   ##
=========================================
  Coverage          ?   60.36%
  Complexity        ?      374
=========================================
  Files             ?       74
  Lines             ?     1312
  Branches          ?      109
=========================================
  Hits              ?      792
  Misses            ?      492
  Partials          ?       28

Impacted Files
Coverage Δ
Complexity Δ

.../seedu/address/logic/parser/AddressBookParser.java
100.00% <ø> (ø)
11.00 <0.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 d1910c1...a57ad56. Read the comment docs.


Check and skip empty local APT repositories

fixes pkg2appimage fail when there are no local APT repositories which causes $FILES variable to be empty

Thank you :+1:


fix python urllib3 test

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary

What does the PR accomplish, why was it needed?
This PR fixes the failing test called test_recent_date by updating the source file containing the RECENT_DATE defined in file src/urllib3/connection.py which is used in the test.
Change Log

Package: python-urllib3
Change: Fix test_recent_date test by updating the hard-coded date in file src/urllib3/connection.py.
Does this affect the toolchain?

NO
Test Methodology

Failing Test build: 479264
Passing Test build: Reusing the buddy build from main as 3.0-dev build is not functional - 485241

Same ask as in #7294.

This is a tricky one, as upstream already makes this change in their main branch but haven't yet created a new release containing it. Since we haven't updated this package to the latest version, yet, I'm fine with taking this PR as-is and potentially removing it as we upgrade the whole package to the latest version (which may then contain the change from this patch).


Round Number To n Digits

Wanted to gauge interest before creating a PR. Would others consider this clear & useful?
const round = (n, decimals = 0) => Number(`${Math.round(`${n}e${decimals}`)}e-${decimals}`)

Importantly the above works correctly with all floating point numbers.
// All of the following *should* return 1.01 but *actually* return 1

Number(1.005.toFixed(2))
Math.round(1.005 * 100) / 100

Hi, thanks for the interest! I like the idea, was planning to add something like what is mentioned on this SO thread. Basically, round the number only if necessary and omit trailing zeroes. Do you think you can code that, so we can add it?

Of course @Chalarangelo!
The current implementation has the type signature (Number, Number?) => Number so it already only rounds if necessary and omits trailing zeroes (Numbers don't have trailing zeroes)
If you wanted (Number, Number?) => String you can easily just call .toString() on the result

@ecwyne get cracking, we should get this added! 😉


⚠ Bofrost.de has degraded performance

In de7f00d, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 756 ms

Resolved: Bofrost.de performance has improved in 986480b after 306 days, 4 hours, 24 minutes.


Please bring back Session.WithConditions

Your Question

During the update from gorm v1.20.6 to 1.20.7 which is considered a patch update the Session's WithConditions struct member was removed (commit https://github.com/go-gorm/gorm/commit/26504f5caeb8c31dff62e8ddab68cee6b85a6580#diff-3133f5a3c5ce0087b14a818cff68c205e4aa03eb83b4f0f7f06137ae2b4351ec).

The document you expected this should be explained

Expected answer

I think this should not have been a patch release but rather a major release (backward incompatible change).
Or please state clearly that gorm does not adhere to semantic versioning (which is ok, but need to be advertised).

Hi @audricschiltknecht
Yeah, sorry for the breaking changes,  we turn on the WithConditions option to default as received many reports because of  forgot to enable this option, so this changes is considered to make everything clear to fix the current situation.

Is WithConditions the same as NewDB?

From what I understand, you need to reverse the value, ie. NewDb = !WithConditions

From what I understand, you need to reverse the value, ie. NewDb = !WithConditions

Yes, I think the NewDB should not been common used, and most likely only be used when writing some plugins, so it should not be the default option that can cause confusion.


npm install issue

npm install the new version on jspdf 1.5.3 utilizes git repository url. We are facing challenges in installing this since we are inside a firewall and github is not accessible. Previous version 1.5.1 didn't have any reference to github. Is there a workaround or solution for us to use npm install 1.5.3 ?

Same issue here.
I didn't want to install a previous version (1.5.2), so I ended up using my phone wifi.

install command  npm i jspdf -->error issue.
npm ERR! code ENOENT
npm ERR! syscall spawn git
npm ERR! path git
npm ERR! errno ENOENT
npm ERR! enoent Error while executing:
npm ERR! enoent undefined ls-remote -h -t<EMAIL_ADDRESS>npm ERR! enoent
npm ERR! enoent
npm ERR! enoent spawn git ENOENT
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in:

npm install the new version on jspdf 1.5.3 utilizes git repository url. We are facing challenges in installing this since we are inside a firewall and github is not accessible. Previous version 1.5.1 didn't have any reference to github. Is there a workaround or solution for us to use npm install 1.5.3 ?

there is a problem with the latest version 1.5.3. try installing a previous version. It worked for me:
npm install<EMAIL_ADDRESS>--save

Same issue here.
I didn't want to install a previous version (1.5.2), so I ended up using my phone wifi.
This still seems like something that needs to be addressed.

there is a problem with the latest version 1.5.3. try installing a previous version. It worked for me:
npm install<EMAIL_ADDRESS>--save

Same issue.
I didn't want to install.
npm ERR! code ENOGIT
npm ERR! Error while executing:
npm ERR! undefined ls-remote -h -t<EMAIL_ADDRESS>npm ERR!
npm ERR! undefined
npm ERR! No git binary found in $PATH
npm ERR!
npm ERR! Failed using git.
npm ERR! Please check if you have git installed and in your PATH.

Hi,
There is a problem with the latest version 1.5.3. try installing a previous version. It worked for me:
npm install<EMAIL_ADDRESS>--save

we also have the same issue.
Cannot we simply install eligrey/FileSaver manually (npm i file-saver) and let the jsPDF skip this dependency?

Same issue here.
I didn't want to install a previous version (1.5.2)

@HemakumarReddy installing npm install<EMAIL_ADDRESS>--save help me thanks for mentioned


 The send function should verify that the amount is positive to prevent this.
Minimal Viable Test :)
from pyethereum import tester

class TestEtxContract(object):

    CONTRACT = 'contracts/etx.se'

    def setup_class(cls):
        cls.s = tester.state()
        cls.c = cls.s.abi_contract(cls.CONTRACT)
        cls.snapshot = cls.s.snapshot()

    def setup_method(self, method):
        self.s.revert(self.snapshot)

    def test_negative_send_should_fail(self):
        assert self.c.send(tester.a0, -1000, sender=tester.k1) == 0
        assert self.c.balance(tester.a0) ==<PHONE_NUMBER>00
        assert self.c.balance(tester.a1) == 0

Fixed in d3ee0c1


[BUG] Sparse Attention with block sizes < 16

If we run (sparse) BigBird with block sizes < 16, we get the following error:
File "deepspeed/ops/sparse_attention/matmul.py", line 472, in make_dxx_lut
    xincs[:, 0] -= (div - 1) * step
IndexError: index 0 is out of bounds for dimension 1 with size 0

It seems that step is pre set to 16 (here), and then div will be set to 0 when block < 16 (here), which means that xincs = xincs.view(-1, 1).repeat(1, div) will have a shape of (-1, 0), so xincs[:, 0] raises an IndexError.
Is it possible to use smaller blocks or is this behavior a limitation of deepspeed?
To Reproduce
from deepspeed.ops.sparse_attention import SparseSelfAttention, BigBirdSparsityConfig

# create a dummy config
config = BigBirdSparsityConfig(
    num_heads=8
    block=8
    different_layout_per_head=False,
    num_random_blocks=3,
    num_sliding_window_blocks=3,
    num_global_blocks=1
)

# define the attention module
bigbird_attn = SparseSelfAttention(sparsity_config=bigbird_config, max_seq_length=1024)

# call the attention module with fake data:
x =  torch.randn(8, 1024, 64).cuda()   # (num_heads, seq_len, hidden_size)
bigbird_attn(x, x, x)  # yields IndexError

ds_report output
--------------------------------------------------
DeepSpeed C++/CUDA extension op report
--------------------------------------------------
NOTE: Ops not installed will be just-in-time (JIT) compiled at
      runtime if needed. Op compatibility means that your system
      meet the required dependencies to JIT install the op.
--------------------------------------------------
JIT compiled ops requires ninja
ninja .................. [OKAY]
--------------------------------------------------
op name ................ installed .. compatible
--------------------------------------------------
cpu_adam ............... [NO] ....... [OKAY]
cpu_adagrad ............ [NO] ....... [OKAY]
fused_adam ............. [NO] ....... [OKAY]
fused_lamb ............. [NO] ....... [OKAY]
sparse_attn ............ [NO] ....... [OKAY]
transformer ............ [NO] ....... [OKAY]
stochastic_transformer . [NO] ....... [OKAY]
 [WARNING]  async_io requires the dev libaio .so object and headers but these were not found.
 [WARNING]  async_io: please install the libaio-dev package with apt
 [WARNING]  If libaio is already installed (perhaps from source), try setting the CFLAGS and LDFLAGS environment variables to where it can be found.
async_io ............... [NO] ....... [NO]
transformer_inference .. [NO] ....... [OKAY]
utils .................. [NO] ....... [OKAY]
quantizer .............. [NO] ....... [OKAY]
--------------------------------------------------
DeepSpeed general environment info:
torch install path ............... ['/home/mtreviso/test-fast-transformers/env/lib/python3.8/site-packages/torch']
torch version .................... 1.10.0+cu102
torch cuda version ............... 10.2
nvcc version ..................... 11.1
deepspeed install path ........... ['/home/mtreviso/test-fast-transformers/env/lib/python3.8/site-packages/deepspeed']
deepspeed info ................... 0.5.8, unknown, unknown
deepspeed wheel compiled w. ...... torch 1.10, cuda 10.2

System info

OS: Ubuntu 20.04
GPU: RTX 2080
Python version: 3.8.5

Hi @mtreviso did you find a way to resolve this? I am also blocked by this issue. What I am trying to do is set the block size=1 and increase the num_sliding_window_blocks to for example 16. Then it will be an exact sliding window sparse attention (not just block-sparse). Thanks.

Nope. I ended up moving to a pure pytorch implementation.


Python: Modernise the py/explicit-return-in-init query.

Rebased this branch after merging #1961

Running the new and improved query here: https://lgtm.com/query/8916484868186951346/
Results from the original: https://lgtm.com/query/5042346687305091535/

By using the new query with pointTo analysis to check if the return value is None: results found in 43 projects. Before, results found in 45 projects.
Some of them are still not desirable. For example

ret = super().__init__(); return ret
log = logging.getLogger(); return log.error()

Should we do anything about these before we merge?

Oh, as for the two results you point out, I think it's fine to leave them in. Even if they won't cause problems during runtime, it is still superfluous (and potentially confusing) to use a return statement in those places.


Error: The argument type 'String' can't be assigned to the parameter type 'Uri'.

Hey everyone! Anyone knows how to fix this error?

Same here =/


6-wheel rover controller

I realize a six-wheel controller (6 x 4)  for lunar rover on ros2_controller base now and maybe it relevant for this repo.
I can modify steering controller library or write controller from scratch.

Can you outline the kinematics of such a rover? It isn't a skid steer, you think of a rocker-bogie suspension system?

yeah, like rocker-bogie with front and rear steering pair of wheel, where  front and rear pair of wheels turn in the same direction.

Do you need other kinematic equations like described here?
If yes, please start with a PR updating the docs.
Then: we could implement this by refactoring the steering_controllers_library by not implementing the resulting vehicle-kinematics in the lib, but only axis-specific kinematics and the composition is done in the respective controller implementations. This would also help here #692. But this is a bigger change as what you are asking for.


Add support for imjournal rate limit settings

Fixes issue #200

Would be great if this could be merged in, we're looking for this particular config as well.

Will this be merged in sometime?

This does not build?


Formatting JSON with Cyrillic characters into Bibtex

The cases are tested via RunKit at the Citation.js main page. However, I write code for browser (Vue3).
Different browsers are used (Firefox and Chrome-based).
Actually, I didn't expect the difference between processing of English and Cyrillic texts, but that what I am faced with.
There is an example (Ukrainian):
const Cite = require('citation-js')
const bibjson =  {"id":"antonenko1997","ISBN":"966-7219-00-3","type":"book","title":"Як ми говоримо","author":[{"given":"Б.Д.","family":"Антоненко-Давидович"}],"issued":{"date-parts":[[1997]]},"edition":"4","publisher":"Українська книга","citation-key":"antonenko1997","publisher-place":"Київ"};
const bibtext  = (new Cite(bibjson)).format('bibtex');

Result:
@book{antonenko1997,
	address = {̈},
	author = {-, ..},
	edition = {4},
	year = {1997},
	publisher = {̈ },
	title = {  },
}

The same is got via the interface to Zenodo.
Thus, the example from the documentation:
let example = new Cite('10.5281/zenodo.1005176');
example.format('bibtex');

Result:
@article{Willighagen2018Larsgw,
	author = {Willighagen, Lars and Willighagen, Egon and Badger, The Gitter and {\v C}erm{\' a}k, Petr and Wienke, Johannes},
	year = {2018},
	month = {nov 2},
	publisher = {Zenodo},
	title = {Larsgw/{Citation}.{Js}: V0.4.0-10},
}

Let's replace the link with that to a Ukrainian article:
let example = new Cite('10.5281/zenodo.1048805');
example.format('bibtex');

Result:
@article{undefined2017XviXviii,
	author = {-, .},
	journal = {Zenodo},
	year = {2017},
	month = {nov 14},
	publisher = {Zenodo},
	title = {̈  {Xvi}--{Xviii} .  {\"  } : '-  {\"  }  },
}

Maybe, some additional options should be passed? I'd appreciate any suggestions.

Thank you, that's a good point, I hadn't thought of that. I'm pretty sure you can't just include non-ASCII characters in normal BibTeX and I haven't implemented how to escape Cyrillic characters yet so it removes them to ensure the output is at least parseable, even if incorrect. I'll look into a solution.

It seems that the problem is a bit wider.
As far as I understand, the general view is like this: vanilla Bibtex disallows everything but ASCII characters. Non-ASCII symbols are escaped in Latex manner.
But now is the age of Unicode, and many applications and services process all the data in Unicode and do not escape non-ASCII. E.g.  Overleaf (cloud-based LaTeX editor) uses the UTF-8 encoding for all text files.
The same as Zenodo does.
For example, Bibtex of a random Polish publication on Zenodo looks like this:
@book{zarzeczny_grzegorz_2017_3745683,
  author       = {Zarzeczny, Grzegorz and Piekot, Tomasz},
  title        = {Przystępność tekstów urzędowych w internecie},
  publisher    = {{Oficyna Wydawnicza ATUT – Wrocławskie Wydawnictwo Oświatowe}},
  year         = 2017,
  address      = {Wrocław},
  month        = mar,
  doi          = {10.5281/zenodo.3745683},
  url          = {https://doi.org/10.5281/zenodo.3745683}
}

However, if I store Bibtex in JSON via Citation.js and then retrieve back as Bibtex, I get:
@book{zarzeczny_grzegorz_2017_3745683,
	address = {Wroc\l{}aw},
	author = {Zarzeczny, Grzegorz and Piekot, Tomasz},
	year = {2017},
	month = {3},
	publisher = {Oficyna Wydawnicza ATUT -- Wroc\l{}awskie Wydawnictwo O{\' s}wiatowe},
	title = {Przyst{\k e}pno{\' s}{\' c} tekst{\' o}w urz{\k e}dowych w internecie},
}

This escaping is bad for user experience and actually is not needed for today's environment.
It would be great to have an option to process Unicode text in Citation.js as is (like biber does, I presume). So it would solve the problem with Cyrillic and other non-ASCII texts as well.
The question is this - how deep this Latex-alike conversion is hidden inside Citation.js? Is it possible to "just drop it", when some flag is provided, or that would ruin all the logic of the tool?

I think BibLaTeX (with the biber backend) can indeed process Unicode text (though that may require a specific LaTeX engine as well), so that is a good idea for a flag. That wouldn't be much of a problem. Still, I feel like it should not silently drop characters if they cannot be escaped. Maybe a warning message is enough, I don't know.

Maybe I've used wrong word, I didn't mean dropping the characters. I was asking whether it is possible to omit the non-ASCII escaping operation from the pipeline.

I understand what you meant, I just meant that in addition to adding that flag, I would ideally like to find a default behavior that does not silently drop Cyrillic characters, which is what happens now.

In the v0.7.8 release, there's an option to keep all unicode. This might become the default in the future.
const { plugins } = require('@citation-js/core')
const config = plugins.config.get('@bibtex')
config.format.asciiOnly = false


Normalize the return from the 'resources' API.

Currently, the Item stuff will return something like: { data: ..., errorMessage: ... }. But on an error we get: { code: ..., source: ..., receivedAt: ..., type: ...} where 'code' is an HTTP status code and 'type' is the underlying redux-action type.

provide all bits all the time (merge with null bit template).

data
errorMessage
statusCode
source
receivedAt

drop the 'type', it exposes useless/confusing/needless underlying info.
change 'code' to statusCode and provide/use statusCodes mapper to allow us to do if (statusCodes.NOT_FOUND === statusCode) ...

This is mostly accomplished in current work, along with converting the data to a modeled item earlier on, which simplifies things a bit. The remainder of the work will be captured in additional issues.


Linux: OpenSUSE package count

pfetch-rs only shows how many flatpaks I have installed rather than how many packages I have installed from different package managers

openSUSE Tumbleweed and original pfetch used Bedrock's package manager(pmm) to check how many packages are installed

Thank you for reporting this. I couldn't find the usage of either pmm or zypper in the original pfetch source code (these are all package managers checked) so it is strange that it counted them for you there. The solution seems to be to implement a zypper package count (ideally in libmacchina).

I just looked more into this and this issue lead me down a rabbit hole.
libmacchina already supports RPM package count, which is the backend used by zypper by interacting with its sqlite database directly. However, it turns out that RPM also supports different database formats (bdb and ndb), where ndb is used by OpenSUSE. It will probably be really hard to create an implementation that directly accesses this ndb file, as this is a RPM native database implementation with no libraries I could find supporting it (for more detail see https://github.com/Macchina-CLI/libmacchina/issues/154).
So to get a package count on OpenSUSE, the options are to either change the RPM backend from ndb to sqlite (has to be done by the user), work on an implementation that gets the info from the bdb file directly (really hard) or just invoke an rpm process like the original pfetch did it (really slow).
I will probably implement the last one for now to have a package count on OpenSUSE (although being really slow) that can be disabled with the PF_FAST_PKG_COUNT option similar to nix.

With version 2.6.1, openSUSE package count has gotten significantly faster, as long as the rpm-devel package is installed.


[SPARK-39488][SQL] Simplify the error handling of TempResolvedColumn

What changes were proposed in this pull request?

This is a followup of https://github.com/apache/spark/pull/35404 and https://github.com/apache/spark/pull/36746 , to simplify the error handling of TempResolvedColumn.
The idea is:

The rule ResolveAggregationFunctions in the main resolution batch creates TempResolvedColumn and only removes it if the aggregate expression is fully resolved. It either strips TempResolvedColumn if it's inside aggregate function or group expression, or restores TempResolvedColumn to UnresolvedAttribute otherwise, hoping other rules can resolve it.
The rule RemoveTempResolvedColumn in a latter batch can still hit TempResolvedColumn if the aggregate expression is unresolved (due to input type mismatch for example, e.g. avg(bool_col), date_add(int_group_col, 1)). At this stage, there is no way to restore TempResolvedColumn to UnresolvedAttribute  and resolve it differently. The query will fail and we should blindly strip TempResolvedColumn to provide better error message.

Why are the changes needed?

code cleanup
Does this PR introduce any user-facing change?

no
How was this patch tested?

existing tests

cc @LuciferYang @amaliujia @viirya

thanks for review, merging to master!


Azure ID Error

Bug report
As of 2023-10-17T08:59:15.000Z, I have started seeing the following errors in my Azure auth:
azure: ID token issuer \"https://login.microsoftonline.com/TENANT-UUID/v2.0\" does not match expected issuer \"https://login.microsoftonline.com/organizations/v2.0\"","level":"error","method":"GET","msg":"500: Error getting user email from external provider"

[x] I confirm this is a bug with Supabase, not with my own application.
[x] I confirm I have searched the Docs, GitHub Discussions, and Discord.

Describe the bug
Azure login in is no longer working for my multitenant app. It might be related to this: https://github.com/supabase/gotrue/pull/1269.
To Reproduce
I'm not sure -- i haven't changed anything in my app since yesterday and started seeing these errors.
Expected behavior
There should be no errors.
Screenshots
If applicable, add screenshots to help explain your problem.
System information

OS: Running in Supabase cloud.
Version of supabase-js: ^2.36.0
Version of Node.js: 18.2

Additional context
Add any other context about the problem here.

I see the same thing. I think its has to do with appending"2.0" to the issuer:
https://github.com/supabase/gotrue/blob/4c50357841c51c2da0eff4d7f8920aed5e640df2/internal/api/provider/azure.go#L62
Docs state to omit that for Active directory 1.0 apps:

Our app has been down for our users, hopefully this gets resolved soon.

@hf was there a deploy for Supabase auth related to the changes you made yesterday? I don't know where to check, but I saw you merged in some changes to gotrue that seem related?

It seems we're hitting this error: https://github.com/supabase/gotrue/pull/1269/files#diff-ea3c11f35c15f1496340532424b81c805cc3f6fb541800add5cd6f497548b324R130. I believe the changes here should have fixed it: https://github.com/supabase/gotrue/pull/1272/files. But I'm not sure how gotrue / supabase deploys work, or if that code is in production. If it is, I'm not sure why I'm still seeing this error.
@hf given this is affecting production customers, it would be great to know if your team can act on this asap.

@mosnicholas not sure if you situation allows, but I was able to resolve my issue by switching my from Azure Tenant URL from:
https://login.microsoftonline.com/organizations to https://login.microsoftonline.com/common see the following for info:
https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-client-application-configuration
I was also required to add email to the login scope:
... = await supabase.auth.signInWithOAuth({
...
options: {
scopes: 'email,profile',
..
},
});

Thank you for updating here @aaron-xandria

hey everyone, we've fixed this issue in #1275 and will roll it out to all affected projects on Supabase.


ODP-2255 - Upgrade bootstrap and jquery.datatables versions

What changes were proposed in this pull request?

Upgrade bootstrap and jquery.datatables versions
Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

Upgraded below
bootstrap version to 5.0.0
jquery.datatables version to 2.0.0


fix issue with offline view + scan bottom view + make OpenFoodAPIClient more robust

Fix issue with offline view ( text not visible)
make OpenFoodAPIClient more robust
try to fix sonarcloud connection problem

If the user enter a barcode with keyboard, the bottom view didn't use all the required height


IBM SSP CM, Engine, PS and SEAS charts v1.2.1 - 6030 iFx01 log4j 2.16.0 update

The PR is for v1.2.1 release of our product offerings IBM Sterling Secure Proxy and Sterling External Authentication Server. This will be tgz only delivery.
Currently we are supporting OCP 4.6 for our helm charts.
So please review it.

Hi @dperaza4dustbit, Request you or someone from your team to review this PR.

I am raising new request as we have added new version of helm charts with new log4j Jars.


Img2img

Img2Img winter update!

text-guided image conditioned generation (img2img), either from simple sketch or uploaded image. No model reload required
img inpainting. Model reload required, can be done from UI!
newly refreshed UI! 3 input tabs, text-img2img-img inpainting

Awesome! Thank you so much :)

Updated UI with image inpainting.
I am planning to refactor this code a bit while including support for newer models in the next PRs.
Some bugs with UI are still expected until I tidy things up, I will try to keep it very basic so that it can be more stable (aka it won't ever be as fancy as other projects).


Restic performance issue

Output of restic version
restic 0.7.0
compiled with go1.8.3 on linux/amd64
How did you start restic exactly? (Include the complete command line)
restic -p /tmp/pass -r rest:https://restic:password@server1:8000/user backup /home/user/Downloads/

What backend/server/service did you use?
rest-server 0.9.3
Expected behavior
The backup speed should be as fast as my Internet connection (or close) but not as slow as what I'm currently getting.
Actual behavior
The speed is very fast when it starts then it settles down to as slow as  900KiB/s
scanned 300 directories, 898 files in 0:00 [12:39] 2.66%  859.446 KiB/s  637.031 MiB / 23.376 GiB  52 / 1198 items  0 errors  ETA 7:42:41
Steps to reproduce the behavior
Do you have any idea what may have caused this?
Actually, I'm very new to Restic. I recently find it and I was testing it to make sure that it can handle daily laptop backups (about 100GB). I've started to write a script wrapper (BASH) to run everything automatically but the speed is just a bummer. Could you please help me optimize it?

Hey, welcome to the restic issue tracker! I think there are two different things at play:

Was this a subsequent (=non-initial) backup? We don't have a local metadata cache yet, so all metadata is loaded on demand from the repo. This is sometimes slow, depending on the latency of the remote. You can force re-reading all files locally so that no metadata is read from the repo, use restic backup --force. This is not a permanent thing, we're working on the metadata cache (see #1040).
The throughput that is printed during backup is not the throughput of data written to the repo, but data processed in the backup stage. So first restic starts reading files, bundles them together and writes the data to temp files. That's really fast. Then it starts uploading to the repo and slows down. That'll be fixed after the cache is done.

Hi
Thanks a lot for the quick reply, for the welcome, and for the explanation :)!
Actually, it was a new backup. So it's an initial backup. I guess "-f" option won't matter right? Anyways, I've run the backup with "--force" as you suggested:
restic -p /tmp/pass -f -r rest:https://restic:password@server1:8000/user backup /home/user/Downloads/
Unfortunately, I got the same speed :(.
Laptop connection speed: 100/100 Mbps download/upload (tested)
Backup server connection speed: 4/1 Gbps download/upload (tested)

For an initial backup --force has no effect, that's correct. I'm a bit at loss what's the cause of the slow speed here is. What do you get when you use a local directory for a repo? or running the REST server locally?

I've run the rest-server on my internal network to test. The speed was much better (around 15MiB) compared to the remote backup server but it still is slow considering that it's a 1Gbps network. Are there any parameters to fine-tune the throughput? What's causing the bottleneck here? I've also checked if the /tmp was full but it wasn't because I read that Restic uses it during the backup process.

@codesmaker, please append a dozen lines or so of vmstat 1 output from source and destination servers during the time when you observe slow speed. I suspect source CPU or destination disk overload.
There aren't any tunables, everything should be as fast as possible out of the box.

Please find attached.
vmstat.txt

Huh, that is really weird, both sides are completely underutilized in all aspects. There must be some explanation for this behaviour, though it will be quite hard to find it without access to the servers.
You might try with http transport (no SSL) to try to see if https brings any slowdown.
Are there any firewalls between the machines, that could somehow introduce any slowdown?

Bingo! The problem was with SSL! It's strange though no? Do you know why?

I have only one thing in mind. If for some reason http keepalive connections are not working, then you constantly fire up new connections for every new request. And when you add SSL handshake on top of that, the latency goes up the roof.
Still, we weeded out all such bugs before 0.7.0, so I don't see how it could happen.

Is there anything in between you and the server? Any load-balancer, proxy, or anything?

Actually no. The laptop is behind a router (with firewall). The rest-server is installed on the backup server which has a firewall too but port 8000 is open. Do I need to open another port?

No, you don't need another port. We've had reports of middle boxes (proxys, load balancers) interfering with restic traffic, so I thought that this may be the case for you. Do you see high CPU load on one of the machines when you do a backup over HTTPS?

Not really. On the server side, all the CPU's cores are at ease. On the laptop, it's in the range of 4-30% max which I find normal no? Does it have something to do with the SSL certificate itself? I use letsencrypt. Maybe a bug in the rest-server? Have you guys experienced such issues?

Certificate really shouldn't matter, and BTW I'm also using letsencrypt and observe no performance issues.
Somehow, judged by the vmstat output, I feel like the slowdown comes from the client side, but I can't guess what could be wrong. Maybe turn on debugging on the client and try to see if there's anything fishy in the log output? @fd0, you have any other ideas?

Maybe a regression to what we observed earlier, many many open http sessions? (like per file ones).
@codesmaker, can you check on the laptop side (with netstat -nt) if it has many sockets open to the rest box?

Actually just one to the rest-server box:
tcp        0  65783 <IP_ADDRESS>:55632     IP:8000       ESTABLISHED

That's what it is suppose to be, if you use a certificate, yes.

Very mysterious, indeed. Hm.

Btw: Please upgrade to 0.7.1, see https://restic.github.io/blog/2017-07-25/please-upgrade-to-0.7.1 for details about a serious bug we discovered recently.

Thanks for the heads up! I'll upgrade right away. Do you guys think it would impose a serious security risk if I use the rest-server with authentication but without SSL? I understand that Restic encrypts the data by its own and the SSL only needed to encrypt the authentication process. I think the risk would be minimized if I only accept connections to the rest server from one IP. I've also tried the SFTP but unfortunately it isn't as fast as the rest server backend solution.

I don't recommend using the REST server without ssl: The password can be read by everybody who is able to observe your traffic. This doesn't allow decrypting data (as restic encrypts the data before transmission) but allows removing all your data from the REST server. You probably don't want that.
I'd rather like to find out what's going on here. Can you try with TLS again, but disable HTTP2 with the following command?
$ GODEBUG=h2client=0 ./restic backup [...]

How is the speed then?

So I've run:
GODEBUG=h2client=0 restic -p /tmp/pass -r rest:https://restic:password@server1:8000/user backup /home/user/Downloads/
No joy.

Can you check with wireshark if the data traffic looks suspicious? Many retransmits, very small or large packets?

Can't see anything wrong neither but I'm not 100% sure. Please find attached.
wireshark.txt

@codesmaker  I think it could be the problem with MTU discovery. Do you use some vpn like OpenVPN, L2TP or other? Or may be your internet connection is based on vpn technology, e.g. pptp ?

@chromium58 Not at all but even it was the case, I would have the same issue with the HTTP no?

@codesmaker
No, https uses DF "Do Not Fragment IP flag" and http not.

HTTPS servers set the DF or Do Not Fragment IP flag on packets and regular HTTP servers do not.
This matters because HTTP and HTTPS usually transfer a lot of data. That means that the packets are usually quite large and are often the maximum allowed size.
So if a server sends out a very big HTTP packet and it goes through a route on the network that does not allow packets that size, then the router in question simply breaks the packet up.
But if a server sends out a big HTTPS packet and it hits a route that doesn’t allow packets that size, the routers on that route can’t break the packet up. So they drop the packet and send back an ICMP message telling the machine that sent the big packet to adjust it’s MTU (maximum transfer unit) size and resend the packet. This is called Path MTU Discovery.

This can create some interesting problems that don’t exist with plain HTTP. For example, if your ops
team has gotten a little overzealous with security and decided to filter out all ICMP traffic, your web server won’t receive any of those ICMP messages I’ve described above telling it to break up it’s packets and resend them. So large secure packets that usually are sent halfway through a secure HTTPS connection will just be dropped. So visitors to your website who are across network paths that need to have their packets broken up into smaller pieces will see half-loaded pages from the secure part of your site.

Quote source - http://markmaunder.com/2009/10/20/routers-treat-https-and-http-traffic-differently/

This is very interesting information!
@codesmaker could you try setting a lower MTU manually (ifconfig eth0 mtu 1400) on client and server and try again?
@chromium58 wouldn't MTU problems (which are oftentimes voodoo) show up in wireshark, either as ICMP packets from hops on the path or as retransmits?

@fd0 If MTU size is a problem - in wireshark we should see icmp packets, but they can be filtered on any hop between client and server, that's why PMTU discovery can fail. TCP retransmits - i suppose we should see them too and i don't have explanation about why we don't :)
But commonly MTU problems seem to appear if overlay or encapsulation technologies are used like VPN. That's why i asked about it first.

Very interesting stuff indeed! Decreasing the MTU on the client and server to 1400 didn't help :(.

Hi also have problems with the rest-server.
My 2017 Macbook (i7 16GB RAM) is connected via Gigabit Ethernet to my server.
I get around 55 MiB/s throughput for an incremental backup. I would expect around twice that
Apparently, CPU is the bottleneck here. Both machines have multiple threads of rest-server / rustic running consuming 100%.
Thats disappointing. Restic's slogan tells something different.
But every rsync or scp is faster in comparison.
Whats the problem here? Both machines have plenty of RAM for leveraging the page caches.
Both are multicore machines with HW encryption support...
:(

Interesting, I have several ideas what might be the cause here:

Could you paste the output of an incremental backup run? Is there a line saying found parent snapshot?
It may also be the latency between the laptop and the server (although it is in the LAN), this will be resolved when #1040 lands.
You can also try running restic backup --force (which will not use metadata from a previous snapshot, but re-hash everything locally)

Please report back.

Hi @fd0,

I don't see found parent snapshot in my debug log
I am already using #1040
I will try the --force tonight.

But I guess that latency isn't the problem in my case. I have a wired gigabit connection with just a single switch in between.
Also the fact that both systems use 100% CPU makes me think that the problem is somewhere else?

Hm. If you don't see the using parent backup line for a new backup, then restic fails to find a previous backup and will re-hash all data locally. That uses a lot of CPU and is basically the same as running backup --force.
Does something differ in between the snapshots? Do the names of the directories vary? Is the hostname different (check the Host column in restic snapshots)?

Since there hasn't been any activity here recently and I cannot reproduce the issue I'm going to close it for now. Please feel free to add further comments. Thanks.


"Fixture" not working - shows only example.json - Cypress V10.2.0

Describe the bug
cy.fixture not working with Cypress v10 - it shows only "example.json". Problem is, that in fixtures dir, there is no example.json, but there is another (logins.json) and this is not shown.
To Reproduce
Steps to reproduce the behavior:

Open VS Code
Open file with test
try to add cy.fixture("") - context help has only "example.json", even if the file is not there. No other files in context help.

Expected behavior
cy.fixture("") should offer real files in fixtures directory.
Environment (please complete the following information):

Extension version: v2.5.0
VS Code version: 1.68.1
OS: Windows | Mac | Linux (distro): Linux Mint 20.1 Cinnamon

** Developer Tools Console Output **
In console I do not see nothing.
Additional context
None

The problem is here:
root() {
return this._workspace.workspaceFolders[0].uri.fsPath;
}
When you have more folders in workspace, it takes the first one. But it is right only if you are working with first folder. For others it returns fixtures fromthe first workspace folder.

Hi @siglp!
Should be resolved in v2.6.0, support for multiple workspaces was provided.


Support upstream and product release drafter

Publish on GH release page an upstream / product release note draft, based on pre-released changes.
Note: at the moment I could not publish Ustream(1.1.x) and product(1.0.x) changes at the same time. Only show up the latest "branch" changes. So, if the latest commit is on main branch then GH release page will publish a 1.1.x release-note draft, called Next 1.1.x.
Related to: #407
Main Doc: https://github.com/release-drafter/release-drafter

After discussion with @pjgg , the issue is that the release note drafter action can only generate a single draft with the latest changes, and that for this draft it is unable to pick a branch for the release to be drafted.
Should we put this on hold until more exploration is done?

n hold until more exploration is done?

Yes, let's do another iteration!


METRON-2247 - rpm-docker: Provide an option to bypass running rpmlint

Contributor Comments
This PR allows full dev deploy users to skip rpmlint processing via setting an environment variable.
For justification for excluding rpmlint from the build please see https://issues.apache.org/jira/browse/METRON-2247
The PR contains the needed logic to tunnel an option variable from vagrant->ansible->docker to the shell script that actually runs rpmlint
The shell script has been modified to skip running rpmlint if the SKIP_RPMLINT environment variable has been sent.
To demonstrate this option for a single vagrant operation use:
env ANSIBLE_ARGS='--extra-vars "SKIP_RPMLINT=1"' vagrant up

To use the option permanently place the ANSIBLE_ARGS environment variable in your profile.
Testing:
an exit 1 was added to the build script where the rpmlint command was being run. This causes the build process to die if rpmlint is being run. Running vagrant up without setting the SKIP_RPMLINT environment variable causes the build process to die.  Setting the variable  allows a full dev build to continue.
A full dev build was done both with and without SKIP_RPMLINT being set to verify the Metron deploys fine either way.
Pull Request Checklist
Thank you for submitting a contribution to Apache Metron.
Please refer to our Development Guidelines for the complete guide to follow for contributions.
Please refer also to our Build Verification Guidelines for complete smoke testing guides.
In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following:
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[x] Have you included steps or a guide to how the change may be verified and tested manually?

n/a Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && dev-utilities/build-utils/verify_licenses.sh

n/a Have you written or updated unit tests and or integration tests to verify your changes?

[x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

n/a Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

[x] Have you ensured that any documentation diagrams have been updated, along with their source files, using draw.io? See Metron Development Guidelines for instructions.

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
It is also recommended that travis-ci is set up for your personal repository such that your branches are built there before submitting a pull request.

@tigerquoll please update the PR title - the git elves won't match on mixed-case for the Jira logging. Needs to be "METRON-2247 rpm-docker: Provide an option to bypass running rpmlint." As a heads up, github seems to trample the commit message like this even if you set it correctly when committing your changes locally, so you have to manually edit before submitting the PR When you've done that, please close/reopen the PR - hopefully the gitbot will start logging the PR comments ongoing.

Thanks for the work @tigerquoll .  I think this is a useful addition. +1
Let's try to get +0 or better from those that commented on the JIRA before merging.... @justinleet and @mmiklavc.

Nice @tigerquoll! +1 from me.

+1, this is a great quality of life feature


Bump json-schema/JSON-Schema-Test-Suite to 1.1.2

/cc @bighappyface
No effort move, all tests still passing. I'm currently looking at using 1.2.0 (seen that)

@mirfilip please use a global ignore for the .idea directory. That is a user-specific ignore as not everyone uses the Jetbrains products.
Otherwise +1

@bighappyface I cannot use a global ignore as some projects I work with do keep this under version control. Anyway, it was rather a thing for every other contributor that uses Jetbrains stuff so that the IDE config doesn't get committed.
I've checked some popular repos and they indeed refrain from specifying IDE specific stuff. Reverting that then.

@mirfilip thanks for the update. Last request: please squash this down.

@bighappyface Sure! Also, please see #265 as it supersedes this PR.


macOS shopackify build error

Error happens when using shopackify build
Reproduce:
$ shopackify build

Error message:
✖ Error packing styles and scripts
Error: spawn webpack ENOENT
    at Process.ChildProcess._handle.onexit (node:internal/child_process:282:19)
    at onErrorNT (node:internal/child_process:480:16)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'spawn webpack',
  path: 'webpack',
  spawnargs: [ '--config', './webpack.production.config.js' ]
}

Resolved in latest release v1.0.9 locking


Hint: Adjust Secret Shrine Final Chest Hint to be a Double Hint

Simple change. The final chest hint isn't very good, it should be a double hint that says:
They say that Secret Shrine Wart and Final Chest have (or whatever the phrasing is)... [insert item for Wart here] and [insert item for Final Chest here]

Done


Additional CASCI Methods

Hi,
I am doing potential energy surface scans of excited states. And cannot find methods to improve the results other than NEVPT2.
It would be nice if one could use casci methods beyond "standard" casci. (e.g. IVO-CASCI or CISNO-CASCI or something like that)
Thanks. :)

I think one can generate IVOs, or CISNOs before hand for the given excited state and then these orbitals can be used for the CASCI calculations.
Something like this ..
CISNO = .... # Generated from the TDA or CIS method of PySCF
mc = mcscf.CASCI(...)
mc.kernel(CISNO)

Yeah the optional first argument of the CASCI kernel function is a set of MOs, to which you can pass any array you please. If I understand IVO's correctly:
mo_occ_ivo = mf.mo_occ.copy () # Important to copy, not edit in-place
nocc = numpy.count_nonzero (mo_occ_ivo>0) # At any rate, figure out, i.e., where the HOMO is
mo_occ_ivo[nocc-1] -= 1 # subtract an electron from HOMO
dm_ivo = mf.make_rdm1 (mf.mo_coeff, mo_occ_ivo) # (N-1)-electron density matrix
fock_ivo = mf.get_fock (dm=dm_ivo) # (N-1)-electron Fock operator
mo_ivo = mf.canonicalize (mf.mo_coeff, mf.mo_occ, fock=fock_ivo)[1] # Diagonalize Fock w/o mixing occ/vir
mo_ivo[:,:nocc] = mf.mo_coeff[:,:nocc] # Only keep the new virtual orbitals

mc = mcscf.CASCI (mf, ...)
mc.kernel (mo_ivo) # IVO-CASCI (if I understand correctly)

Thank you Matthew. This seems to work as it should. :D

Yeah the optional first argument of the CASCI kernel function is a set of MOs, to which you can pass any array you please. If I understand IVO's correctly:
mo_occ_ivo = mf.mo_occ.copy () # Important to copy, not edit in-place
nocc = numpy.count_nonzero (mo_occ_ivo>0) # At any rate, figure out, i.e., where the HOMO is
mo_occ_ivo[nocc-1] -= 1 # subtract an electron from HOMO
dm_ivo = mf.make_rdm1 (mf.mo_coeff, mo_occ_ivo) # (N-1)-electron density matrix
fock_ivo = mf.get_fock (dm=dm_ivo) # (N-1)-electron Fock operator
mo_ivo = mf.canonicalize (mf.mo_coeff, mf.mo_occ, fock=fock_ivo)[1] # Diagonalize Fock w/o mixing occ/vir
mo_ivo[:,:nocc] = mf.mo_coeff[:,:nocc] # Only keep the new virtual orbitals

mc = mcscf.CASCI (mf, ...)
mc.kernel (mo_ivo) # IVO-CASCI (if I understand correctly)

I tried implementing CISNO-CASCI based on the density matrices generated in example https://github.com/pyscf/pyscf/blob/master/examples/tddft/22-density.py. But the resulting energies are very wrong.
As far as I understand CISNO one generates natural orbitals from the state average density matrix from a TDDFT calculation. So what I did is:

dm=0
for i in range(nstates):
      dm=dm+get_density_matrix(td,i)  # using the function from example 22

dm=(mf.make_rdm1()+dm)/(nstates+1)
occ,no=scipy.linalg.eigh(dm)

# and then occ,no is reordered to get the occupied orbitals first.

For now I'm quite satisfied with the performance of the IVOs. But If anyone knows whats wrong that would be nice.

It's wrong to diagonalize AO-based DM directly because AOs are not orthogonal. One of the correct way of obtaining natural orbitals is
https://github.com/pyscf/pyscf/blob/ca8c7c1680defdfee2380eda3af3a28d9fb375cb/pyscf/mcscf/addons.py#L350-L358

Ah thank you @hebrewsnabla :D
It seems to work now.


Repair Layout For Thank You Contribution Page

Currently the contributor image (which updates dynamically every 24 hours) is falling below the layout. In general, there may be too much space.
Create a new layout for this page.
Make sure the logo badge is centered at the top.
You can make a new theme if you want or use some css within the html file directly as well.
Don't change the metadata.
The theme switcher should work with the page (even if only some elements switch, such as the background.)
Feel free to be creative.
This page is to thank everyone that contributed to the repository.
Read the Docs.
Give a ⭐
Don't break anything. :)

Pls give me this issue

@Rajiiee You are assigned!

@omicreativedev  I've done changes in the galaxy theme .pls accept my pr. iam working on the other two themes as well


Added "Generative AI for Everyone" by Andrew Ng

What does this PR do?
Add resource
For resources
Description
A course by Andrew Ng on DeepLearning.ai teaches how generative AI works, and how to use it in your life and at work
Why is this valuable (or not)?
Available on one of the most trusted platforms and instructed by a great teacher
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Its a course
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

This is a time limited course. We don't list those


Add Description attribute to FieldRef element in ListInstance

Today, it's not possible to change description of field like "Title" in ListInstance. Can you add attribute Description to FieldRef element in ListInstance.

Hi,
Thanks for your feedback. Actually, from a schema perspective, at the Field element level, we support any XML content, so we can add support for a custom Description at the engine level. From a FieldRef perspective, we already have the DisplayName property, so if it doens't work, again we have to fix it a the engine level.
Thus, I will close this item and open a new one at the engine level, referencing this item.
Thanks.


issue #57: Async await tests

Transformed all tests to async await pattern.
Tests are now consistent ---> https://github.com/OpenZeppelin/zeppelin-solidity/issues/57

@sogoiii there is a failing test case for PullPayment can withdraw payment. I could reproduce it locally but could not find the cause. Do you have any ideas?

All tests passed locally for me. Weird. Is any test non-deterministic?

@federicobond I was on node 6.3.1, which makes that error go away. I rememeber as i was doing this, i found an issue that suggested the downgrade. I currently cannot find that issue. But that was why i changed my node version.  I simply cannot find that github issue.

Hmm... I Dont know the combination of testrpc and node to make this work.

@federicobond can you try truffle test instead of npm test?

Yes, it works with my globally installed truffle. A dependencies issue, maybe?

Yea, ill keep looking for the problem. Glad im not crazy about that npm and truffle difference.

@federicobond @maraoz Looks like if i change the version of solc from 0.4.4 to either 0.4.5 or 0.4.6, the error appears.
Looking at their repo, the only thing they added between 0.4.4 and 0.4.5 is this commit
Just to be clear on my procedure. On my global truffle folder, i hardcoded the 0.4.4 and ran a successful truffle test. I then hard coded the package to 0.4.5, npm installed, and ran truffle test, only to get the error.

I created this branch to see if travis was failing on master: https://github.com/OpenZeppelin/zeppelin-solidity/pull/98
Apparently this problem is unrelated to this PR, so I'll merge.
Opening an issue to investigate and solve this problem: https://github.com/OpenZeppelin/zeppelin-solidity/issues/99

@sogoiii thanks for the PR and the research on the problem with travis!

sweet!


Added a test to verify dynamic fork join scenarios

Pull Request Test Coverage Report for Build 4160

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 69.433%

Totals

Change from base Build 4156:
0.1%

Covered Lines:
12389

Relevant Lines:
17843

💛  - Coveralls


[TabView] Icons/Text shows in the top and reaches the content

Hi guys, I am working on a page with contains a TabView and using font-awesome icons instead of text. The icons are showing in the top of the TabView and part of them are shown inside the current content. I have been searching and I couldn’t find a way to center them vertically. I have shared my code and a screenshot. This only happens in the iPad...
HTML:
<TabView [(ngModel)]="_dashboardSelectedIndex" class="tab-view font-18 fa">
    <StackLayout class="no-fa" *tabItem="{title: '\uf085'}">
    </StackLayout>
    <StackLayout class="no-fa" *tabItem="{title: '\uf201'}">
    </StackLayout>
    <StackLayout class="no-fa" *tabItem="{title: '\uf025'}">
    </StackLayout>
    <StackLayout class="no-fa" *tabItem="{title: '\uf200'}">
    </StackLayout>
</TabView>

Thanks!

Hi @relez,
This is a known issue, which is described in this  thread. To solve the issue, you can set an icon instead of using iconFont and set up a title. For example:
<TabView iosIconRenderingMode="alwaysOriginal"  class="tab-view font-18 fa">
        <StackLayout class="no-fa" *tabItem="{ title:'test', iconSource: 'res://icon'}">
        </StackLayout>
        <StackLayout class="no-fa" *tabItem="{ title:'test', iconSource: 'res://icon'}">
        </StackLayout>
        <StackLayout class="no-fa" *tabItem="{ title:'test', iconSource: 'res://icon'}">
        </StackLayout>
        <StackLayout class="no-fa" *tabItem="{ title:'test', iconSource: 'res://icon'}">
        </StackLayout>
    </TabView>


add scope lesson

New lesson scope in english

Before translation should start we should review it in english :)

in english**.
sorry, what do you mean?
Are you going to review my pull request first?, or are you saying that we gonna wait for translation?

We should review this PR before someone starts to translate it :smile:

ok, cool :)

I'll look through this properly tomorrow, but fwiw under certain conditions variables can be hosted out of functions (not IIFEs). And yes, ideally we should get a "This problem has not.yet been translated" message for each of the.languages we support, so we can still merge stuff like this without breaking anything.

The concept of global variables is mentioned, and IIFE are mentioned as a way of creating another scope not as the only way.
I didn't explain that JS doesn't have block scope because it will make the lesson considerably longer.

JS does have block scope (ES6) but that's outside the scope of this lesson (pardon the pun)

hehe
There is block scope in try/catch blocks too, but explaining it in the same lesson would be to much.

:+1: for me. :clap:

Also it would be great if you could add a space after starting all your comments //, just to keep code style similar. I've not tested it, but if it works (after fixing typo and spaces) we can merge it in :+1:

cool, I fixed the typo and added the spaces.

Awesome! Is it possible for you to squash you commits? If you don't know how that's cool, we can merge it in anyway.

I squashed the commits. :smile:
(It was my first time doing it, outside of guides)

Awesome! :tada:


Ft landing page

create the booking form
create the booking page as assigned

Merged Caleb's edits on the landing page


More enforcement for formatting, etc.

Add more formatting enforcement like done in momepy and spaghetti

.pylintrc
.pre-commit-config.yml
linting step for .github/workflows/testing.yml
add in flake8 and isort
etc.

We now enforce linting and formatting with black + ruff.


On Mac, rotating image in Finder does not result in rotated image after loading

Here's the code:
SDL_Surface* surface = IMG_Load(path.string().c_str());
This works usually, but if I use the Mac Finder to rotate an image (command-L), the image appears rotated in the Finder, but loads with the original orientation in SDLImage.
I suspect this is some kind of optimization in MacOS to make rotation a change in metadata instead of actually rotating the image pixels to save time, but I'm not sure.

Can you attach a link to a rotated image?

Here is a simple pixel heart. It was originally oriented like a normal heart. Then I rotated it in the Finder. Photoshop opens it as rotated, but SDLImage does not. Hopefully uploading to GitHub here doesn't change it.

heart-full.png.zip
Just in case uploading alters the image somehow, here it is compressed.

What happens if you remove the __MACOSX folder next to the image?

I don't see a __MACOSX folder, that might just be added when you zip it.
Interestingly the image appears rotated in both Finder and Photoshop, but non-rotated in the GitHub app.
So this may be some edge case that Adobe optimized for since they're Mac friendly.
This issue isn't the end of the world, just confusing since I assumed I could rotate images in the Finder and use with SDLImage, but I guess not. Easy enough to rotate elsewhere.
Might just want to make a note of it in the documentation somewhere.

Ok, I figured it out. I opened the png in an app that shows the png metadata.
And the rotated image has an Orientation property that non-rotated pngs do not.
So I guess it would be up to SDLImage to rotate the png? Or maybe at least send us the metadata for orientation so we can do it ourselves.

gimp and gnome's image viewer also show the image as non-rotated.
I opened the file in imhex, and see an embedded iTXT chunk containing the following text.
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 6.0.0">
 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  <rdf:Description rdf:about=""
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:xmp="http://ns.adobe.com/xap/1.0/"
    xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
    xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#"
    xmlns:tiff="http://ns.adobe.com/tiff/1.0/"
    xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/"
   dc:format="image/png"
   xmp:CreatorTool="Adobe Photoshop 24.4 (Macintosh)"
   xmp:ModifyDate="2023-05-09T19:32:18-07:00"
   xmp:CreateDate="2022-11-16T19:14:27-08:00"
   xmp:MetadataDate="2023-05-09T19:32:18-07:00"
   xmpMM:OriginalDocumentID="xmp.did:9d46c96f-0c34-4c07-a596-61726ed10945"
   xmpMM:DocumentID="xmp.did:9d46c96f-0c34-4c07-a596-61726ed10945"
   xmpMM:InstanceID="xmp.iid:9d46c96f-0c34-4c07-a596-61726ed10945"
   tiff:Orientation="8"
   photoshop:ColorMode="3">
   <xmpMM:History>
    <rdf:Seq>
     <rdf:li
      stEvt:softwareAgent="Adobe Photoshop 24.4 (Macintosh)"
      stEvt:when="2022-11-16T19:14:27-08:00"
      stEvt:instanceID="xmp.iid:9d46c96f-0c34-4c07-a596-61726ed10945"
      stEvt:action="created"/>
    </rdf:Seq>
   </xmpMM:History>
  </rdf:Description>
 </rdf:RDF>
</x:xmpmeta>
<?xpacket end="r"?>

SDL_image does not have a xml parser.

I would say, if it's difficult to fix, maybe just document it somewhere. Because it is confusing for Mac users.
Not the end of the world, since we can rotate with other apps than the Finder, just less convenient.


Fix leaking file descriptors

Hi @dormando,
This is another change fixing complains from static code analyser.
This change guarantees that file descriptor fd is always closed
before return from daemonize function thus, the handle never
leaks.
I'm not sure about the meaning of condition on line 81 if (fd > STDERR_FILENO).
I removed it but please if it is there for some reason then correct me.

thanks!
I wish static analyzers found real bugs sometimes :'(

Looks like the STDERR_FILENO check was added here: 2c196ed6cacfd3eea845a3b9a5758a698096d97b - not sure what it's doing offhand. I'll come back to this or you can dig more into this commit and see if you can figure it out :)

The only thing that comes to my mind about this is that on some weird OS stderr is not open by default and that means that
new fd will have value 2 (the same as macro STDERR_FILENO). Because of that, if you close fd you would also close stderr and you would be facing crash later if you attempted to use it.
Fortunately i do not know any OS which would practice such behaviour :smile:

Apparently I pegged the wrong commit: 98ca309daff66756330ad307a500a83d20f50751
... from a bugfix to "support nexenta", via a daemon.c file that looks to have been imported directly from NetBSD.
@TomasKorbar does NetBSD still have this file? :P nexenta would be illumos now but that would be odd.

NetBSD still has that weird code. Look here: https://github.com/NetBSD/src/blob/trunk/lib/libc/gen/daemon.c#L71
And no comments on it.

I'm honestly tempted to track this down just for fun but am really limited on time at the moment.

What can I say? Don't trust static code analyzers too much.
What harm can be done by original code? Let's think...

If /dev/null suddenly disappear (broken lxc/udev/fs/etc...) - then no std-streams will be closed. So that?
It clearly not memcached problem.
No leaks on fd I think, cause kernel must close them on process safe exit.

If on some broken (non-posix) system stderr suddenly disapper, weirdly not available for process on startup - then opened file descriptor will not be closed and will act like stderr (not closed). So that?
It again not memcached problem.
No leaks on fd probably, kernel must close them on process safe exit.
It may be problem only if memcached constantly restarting at hell speed.

My thoughts - just add comment line with @TODO: inspect probability of STDERR disappearance at process startup.
No more weird code need to be added.

@dormando That code is back from 1993. Probably no one even left alive to clarify it.
Most recent daemons code just don't contain lines with fd > STDERR_FILENO check.

Out in 1.6.10


Retrieving extrafields

Hi, do you think it would be possible to retrieve some extrafields from AzureAD during authentication, I am thinking about the EmployeeId .. do you have any suggestion about how to do it and in case I can make it would you be interested in a pull request ?

Hi, I haven't confirmed this but I suspect you can add EmployeeID to the list of ID token claims in AzureAD, which you should then be able to access from the django session (ID token claims are stored on the session), for example in a view:
employee_id = request.session['id_token_claims'].get('EmployeeID')

Hi I was a bit in a hurry and I managed to do it this way (I know it's ugly) but it works.
class SasaAuthHandler(AuthHandler):
"""
Class to interface with msal package and execute authentication process.
"""
def __init__(self, request=None):
    super().__init__()
    self._extra_fields = settings.AZURE_AUTH_EXTRA_FIELDS

def authenticate(self, token: dict) -> UserModel:
    """
    Helper method to authenticate the user. Gets the Azure user from the
    Microsoft Graph endpoint and gets/creates the associated Django user.

    :param token: MSAL auth token dictionary
    :return: Django user instance
    """

    _extra_returned = {}
    azure_user = self._get_azure_user(token["access_token"])
    if self._extra_fields:
        _extra_returned = self._get_azure_extra_fields(token["access_token"])

    # Allow for `outlook.com` users with email set on the
    # `userPrincipalName` attribute
    email = (
        azure_user["mail"]
        if azure_user.get("mail", None)
        else azure_user["userPrincipalName"]
    )

    # Using `UserModel._default_manager.get_by_natural_key` handles custom
    # user model and `USERNAME_FIELD` setting
    try:
        user = UserModel._default_manager.get_by_natural_key(email)
    except UserModel.DoesNotExist:
        user = UserModel._default_manager.create_user(username=email, email=email)
        user.first_name = attr if (attr := azure_user["givenName"]) else ""
        user.last_name = attr if (attr := azure_user["surname"]) else ""
        user.save()
    if user.username in settings.AZURE_AUTH_ADMINS:
        user.is_superuser = True
        user.is_staff = True
    if self._extra_fields:
        for _k, _v in self._extra_fields.items():
            _attr = getattr(user, _v)
            if _attr:
                setattr(user, _v, _extra_returned.get(_k))
                user.save()
    # TODO: Handle groups
    return user

def _get_azure_extra_fields(self, token):
    _extra_fields = ''
    for _extra_field in self._extra_fields:
        _extra_fields += f"{_extra_field},"
    _extra_fields = _extra_fields[:-1] #chop off the last ,
    url = f'https://graph.microsoft.com/v1.0//me?&$select={_extra_fields}'
    headers = {
        'Content-Type': 'application\json',
        'Authorization': f'Bearer {token}',
        'ConsistencyLevel': 'eventual'
    }
    result = {}
    r = requests.get(url, headers=headers)
    ret = r.json()
    for k,v in ret.items():
        if k in self._extra_fields:
            result[k] = v
    print(result)
    return result

Hey @marcotn thanks for the suggestion.
On thing that I just saw is, since you are not saving the user, this settings will not be saved if  there are no _extre_fields.

if user.username in settings.AZURE_AUTH_ADMINS:
user.is_superuser = True
user.is_staff = True

Have you considered to submit a PR for this change? I would also be interested in saving additional attributes to the user model.
If not I try to replicate it and create a PR for this.

Hey @marcotn thanks for the suggestion. On thing that I just saw is, since you are not saving the user, this settings will not be saved if there are no _extre_fields.

if user.username in settings.AZURE_AUTH_ADMINS:
user.is_superuser = True
user.is_staff = True

Have you considered to submit a PR for this change? I would also be interested in saving additional attributes to the user model. If not I try to replicate it and create a PR for this.

Hi Sebastian, thanks for the suggestion, right now I have very little time so I cannot work seriously on a PR but if you need I can send you my code.

This issue should be handled in the same fix as for #23 as per https://github.com/Weird-Sheep-Labs/django-azure-auth/issues/23#issuecomment-2112293823

Please see https://github.com/Weird-Sheep-Labs/django-azure-auth/issues/23#issuecomment-2142771398


Could you link the paper plz?

Thanks!

https://arxiv.org/abs/1811.08545

Thanks! The full citation in ACS Central is now included in the README.


New png images lossless re-compression

cc #3962
 www/assets/flags.png                  | Bin 179370 -> 142915 bytes
 www/assets/heartcoin-illustration.png | Bin 105095 -> 64845 bytes
 www/assets/npm-n.png                  | Bin 699 -> 127 bytes

Thanks for the PRs, @PeterDaveHello! Would you like to join us in Slack? :)

@whit537 sure! BTW, I just rebase this branch with the latest master branch instead of the merge with master so that we can have a cleaner and clearer git commit history.

Sure thing, I'd have done that myself if the PR branch was in our repo, which is our usual practice. :)
Care to join our team so you can make branches in the main repo instead of your fork? If so, go ahead and make an onboarding ticket for yourself.

P.S. If you're interested in optimization, check out #4262.

@whit537 cool! Hope this won't be too short - https://github.com/gratipay/inside.gratipay.com/issues/965 :smile:

@whit537 I'm on the Slack channel now :smile:


Use calculuswhiz/Assembly-Syntax-Definition for Unix Assembly syntax highlighting

Nessphoro/sublimeassembly is for NASM, which has a very different syntax from GAS (GNU assembler). The result looks pretty terrible, such as comments not being recognized.

Was there an issue with the template for issues?

No, but it seemed more applicable to languages not being recognized correctly. In this case, the language is recognized correctly, but the syntax highlighting is wrong.

You can also review the contribution guidelines if you want to change the grammar.

I did read the troubleshooting docs, but I didn't read the contribution guidelines. Sorry about that. I'll send a PR instead.


Move away from spring.factories for auto-configurations

  In the Spring Boot 2.7 Release Notes, Changes to autoconfiguration.

a new file named META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
A new @AutoConfiguration Annotation

For backwards compatibility, The original configuration is still supported.

stop using spring.factories for auto-configuration in 3.0.

Attention: it would make mandatory the use of Spring Boot 2.7 (or above), This can break existing project that can't use these Spring versions.

Thank you for your suggestion. I'm afraid your change breaks compatibility with Spring Boot prior 2.7.0 version

Maybe this can only be adopted when the minimum dependent boot version of this component is 3.0.

Fixed in https://github.com/redisson/redisson/issues/5352


Add bunk.lol

Site: https://bunk.lol/
Size: 5.9 KB
Test results: https://yellowlab.tools/result/h0zbvmmiom

Nice! Bookmarked it immediately. I'm always happy to add sites like this.
Welcome to the 250kB Club! You'll find your page at https://250kb.club/bunk-lol


Test Case 9_11

Summary
i have such output for test case 9_11 where it seems that my serviceTime for customers are generated wrongly. But i have checked that i only have my getServiceTime() method called once in the Serve event class and I have passed lab 3 before. Any help would be greatly appreciated, thank you!!
Screenshots (if any):
output:

Serve Event code:

Hi i think the issue is that the queue for your self checkout isnt being updated correctly thats why the customer was served when it shouldnt have been able to

hello! you may want to check ur addCust/remove Cust() method to make sure that it updates the queue properly!

hello! It seems that there may be a problem with the updating of your next available time of your self checkout counter, you may want to add some debug statements at your arrive to check each of the available time of your counters after each iteration!

hii thanks for the help! i manage to looked at it and it was indeed my queueing system went wrong:)


Allow IsCurrentInterfaceUsable platform override for MinimalMdns

Problem
MinimalMdnsServer.h defines it's own function, IsCurrentInterfaceUsable() for indicating which interfaces on the device should be used for broadcasting mdns queries/responses.
This function simply returns true unless it contains lo. I'm sure there's several platforms which contain interfaces outside of lo which we would like to have disabled, but there's currently no way to configure which platforms to enable/disable.
Proposed Solution
Allow for platforms to be able to either:

Override the function IsCurrentInterfaceUsable() OR
Allow for platform to be able to specific which platforms they wish to have enabled.

A related question: should the same deny-list apply to broadcasting group messages?  @andy31415

We have some support for this by defining how interfaces are iterated upon in AddressPolicy.h where listen endpoints and valid ip addresses for endpoints are defined. We have a libnl implementation that is slightly better than the default (it will ignore temporary IPs or interfaces unable to broadcast).
We could expand on that support to allow platforms to override additional things.
Could we have a list of useful things to override? I think:

what we listen on (seems already done?)
where to broadcast queries (need explanation on why this is different from where to listen on)
ip address priority sorting (? just a guess .. we had several changes on ip prioritization ... this may not be minmdns specific and is more on the client than server side)
other?


Blend efforts after switch

Blends efforts after a controller switch message. This is to smoothly transition between controllers.
One issue that still needs to be fixed:

Occasionally the "previous efforts" stored in discrete_state->get_mutable_vector(prev_efforts_index_) is written with the new controller efforts instead of the old controller efforts

Open to any suggestions about a fix for this. It looks like there's a race condition, but I don't see a clear way to avoid it.

This change is

Does the race condition boil down to wanting to control the sequence between the output and update function calls? I think we could force output to be called after update by

Re-writing the LCM-driven loop in the more manual format that's now used elsewhere in our code (e.g. https://github.com/DAIRLab/dairlib/blob/master/examples/Cassie/dispatcher_robot_out.cc#L301-L328)
Declaring the output function to be "forced"
Manually triggering the output.

I'm not sure, however, if this would address your race condition.

I fixed the race condition by using the same LcmSubscriberSystem in both the driven loop and the other leaf systems. This is done without having to change the API for LcmDrivenLoop.


DMP-844

Changed to comply with acceptance criteria.
https://tools.hmcts.net/jira/browse/DMP-844

Failed due to CVE in dependancy check, looking at it currently.

Fixed by adding CVE-2023-4586 to suppression.


The server does not recover from an invalid acl binding during model introspection

I have defined:
entry_workflow_status_acl_binding = {
  "submit_reader": {
    "types": [
      "select"
    ],
    "scope_acl": [
      "https://auth.globus.org/99da042e-64a6-11ea-ad5f-0ef992ed7ca1"
    ],
    "projection": [
        {"or": [
            {"filter": "Workflow_Status", "operand": "PDB:1-MSVE", "operator": "="},
            {"filter": "Workflow_Status", "operand": "PDB:1-MSVM", "operator": "="},
            {"filter": "Workflow_Status", "operand": "PDB:1-MSVG", "operator": "="}
            ]
        },
      "RID"
    ],
    "projection_type": "nonnull"
  }
}

After running:
fk.acl_bindings.update(entry_workflow_status_acl_binding)
model_root.apply()

the command:
model_root = catalog_ermrest.getCatalogModel()

raises the exception:
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: [https://pdb.isrd.isi.edu/ermrest/catalog/99/schema] Details: b"400 Bad Request\nThe request is malformed. ACL binding type 'select' is not supported on this resource.\n"

This is really two bugs in one.  I am renaming this issue to the first bug, which has already been patched in ermrest/master.  The server will now recover from such situations with the same 503 Service Temporarily Unavailable recovery sequence which we have used elsewhere. The introspection will detect the inconsistency, purge the bad policy, and use this error to signal via HTTP that a client will need to retry their request. The next time around, things should work again.
I opened #226 to capture the second bug, which is that the server let you submit an invalid acl binding in the first place, not returning an immediate error.


App startup loop

Using Brave and Safari in MacOS 10.15.7.
When opening the app it cycles between a blank white area and the top app menu. Browser hint in lower-left of browser window shows the app is cycling between oath.onshape.com and mkcad.julias.ch.
Attached screen recording shows example of the behavior. It'll loop this way as long as I leave the app tab open.
https://user-images.githubusercontent.com/10409074/117354391-44021980-ae7f-11eb-88b7-93220a79e4f7.mp4

Dev console shows this during looping: