Fix emoji font size measurement on Android

Details

This fixes the issue on Android that the measured emoji height doesn't match the actual height. It updates MarkdownEmojiSpan to apply the same unit conversion as used in MarkdownFontSizeSpan.
https://github.com/Expensify/react-native-live-markdown/blob/c282f64b11e8c8ea331add7a7d35d3cb57e450e0/android/src/main/java/com/expensify/livemarkdown/spans/MarkdownFontSizeSpan.java#L9
Related Issues

https://github.com/Expensify/App/issues/51287
Proposal: https://github.com/Expensify/App/issues/51287#issuecomment-2452955435
Manual Tests

Build and run the Android example app.
Clear the text and insert three emojis 😀🍕🍔.
Verify that the emojis display completely.
Click Toggle emoji font size.
Verify that the emojis still display completely.

Screenshots

Before
After

@tomekzaw Could you please take a look on this PR?


Add support for adding suffix to stderr files

I tried getting this into trybuild first (https://github.com/dtolnay/trybuild/issues/245)

Thanks! I'll make a new release tomorrow.


Create SSH key step should advise which key type to make.

at https://tutorials.rc.nectar.org.au/keypairs/03-convenience, step 4.

Done in #72


Shallow compares to prevent unnecessary renders

As issue #38 I had problems using this inside a component which rerenders frequently. Added the fix that was suggested in the issue which works in my case.

Hey @r0stig - I do agree that a change like this is needed, however shallow compare is now considered legacy. I'll be updating the component to use PureComponent instead.


Scheduler only migrates highest-priority VM at a time

This isn't a bug per se, but when we have a lot of VMs, this will impact the effectiveness of migration enough that it's worth fixing.
In particular, this line is the culprit:
https://github.com/neondatabase/autoscaling/blob/d574fbbb05d6f949510c70009ae7bfd3f83d73a5/pkg/plugin/run.go#L283

Looks like we can use https://pkg.go.dev/github.com/tidwall/btree#BTreeG.GetAt to implement this in O(log n).

Unassigning myself as I'm not currently working on this.


Azure Monitor for VMs is not in preview anymore.

[Enter feedback here]
Azure Monitor for VMs is not in preview anymore.
We may need to update the title of this page.

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

ID: 601bac60-2106-9271-4420-7852f95eb90b
Version Independent ID: 8c404a21-be97-2600-d734-2ec5664cfea1
Content: What is Azure Monitor for VMs (preview)? - Azure Monitor
Content Source: articles/azure-monitor/insights/vminsights-overview.md
Service: azure-monitor
GitHub Login: @bwren
Microsoft Alias: bwren

@kumarallamraju , Thank you for your feedback. We will investigate and get back to you shortly.

Assigning @bwren for visibility, review and document enhancement consideration as appropriate.

Content has been updated.  No longer listed as GA anymore,.
#please-close


feat!: update prettier to v3

update prettier to version 3
update package json version

Thanks for your contribution :+1:


VertexCollection update opts

Hi, docs says that GraphVertexCollection extends Collection API, but vertex update is not able to receive opts object as normal update. Same is true for save method, but this is actually documented.
I think that it should be possible to set opts even for graph methods, it would be quite useful.

This issue will be addressed in the upcoming major release.


Always define BIN and RELEASE_DIR in condor_config

condor_ssh_to_job needs BIN defined, and we should always define RELEASE_DIR

Once we set RELEASE_DIR = $(CONDOR_DIR), should we remove the following lines?
BIN = $(CONDOR_DIR)/bin
SBIN = $(CONDOR_DIR)/sbin
LIB=$(CONDOR_DIR)/lib
LIBEXEC = $(CONDOR_DIR)/libexec

If I understood correctly I think HTCondor default is already:
BIN = $(RELEASE_DIR)/bin
SBIN = $(RELEASE_DIR)/sbin
LIB=$(RELEASE_DIR)/lib
LIBEXEC = $(RELEASE_DIR)/libexec

Sure, let's just set RELEASE_DIR
On 2/25/21 11:56 AM, Marco Mambelli wrote:

Once we set |RELEASE_DIR = $(CONDOR_DIR)|, should we remove the
following lines?
|BIN = $(CONDOR_DIR)/bin SBIN = $(CONDOR_DIR)/sbin
LIB=$(CONDOR_DIR)/lib LIBEXEC = $(CONDOR_DIR)/libexec |
If I understood correctly I think HTCondor default is already:
|BIN = $(RELEASE_DIR)/bin SBIN = $(RELEASE_DIR)/sbin
LIB=$(RELEASE_DIR)/lib LIBEXEC = $(RELEASE_DIR)/libexec |
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/glideinWMS/glideinwms/pull/44#issuecomment-786089278,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEAS7IEW5WF3OFT7O56SHPDTA2FLDANCNFSM4YGR76TA.

Changes in this PR have been replaced by the commit 7d1328c28afe2537fc6c4234e5e35fd522b18383 merged in master

Author: Marco Mambelli<EMAIL_ADDRESS>Date:   Thu Feb 25 15:01:59 2021 -0600
Always define RELEASE_DIR in condor_config. It is a security risk not to do so

Deining RELEASE_DIR defines also SBIN, LIB, LIBEXEC, and BIN. The last one was missing and is needed by condor_ssh_to_job

This replaces the changes requested in PR#44


[CARBONDATA-1247]Block pruning not working for date type data type column

Block pruning not working for filter on date type column .
Root Cause : In PushedFilters it goes in CastExpr as below
PushedFilters: [IsNotNull(dob), CastExpr((cast(dob#230 as string) = 2016-06-25))]
Fix:- CastExpressionOptimization need to have for Date type also like Timestamp data type to remove the CastExpr  and convert date value to long.

Can one of the admins verify this patch?

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2792/

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/213/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/carbondata-pr-spark-1.6/728/

Please retest

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2852/

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/272/

please retest

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2970/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/382/

please retest

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/3007/

Build Failed with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/419/

please retest

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/3018/

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/430/

please retest

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/3022/

Build Success with Spark 1.6, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/434/

Can one of the admins verify this patch?

SDV Build Success , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/535/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/43/

SDV Build Fail , Please check CI http://<IP_ADDRESS>:8080/job/ApacheSDVTests/1220/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/589/


Add FunctionUI to ColorField

Description
This adds a button to switch between FunctionUI and ColorPicker in the ColorField.

Fixes #2293

Do you introduce a breaking change?

[ ] Yes
[x] No
[ ] I am unsure (no worries, we'll find out)

:tada: This PR is included in version 13.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Sorts lists in consul.json template to make related step idempotent

Fixes https://github.com/savagegus/ansible-consul/issues/197.

@savagegus sounds like a good improvment !


KUBECONFIG env variable not being used

Describe the bug
KUBECONFIG environment variable indicating where my config files are is not being used
To Reproduce
Steps to reproduce the behavior or a screencast

create multiple config files for multiple clusters and do not save ANY of them in ~/.kube/config
use KUBECONFIG to map all the files as: ~/.kube/config1:~/.kube/config1:~/some/other/path/configfile
start kdash

Expected behavior
To have the same view as using a single config file in the default locations
Screenshots

Desktop (please complete the following information):

OS and OS version: Windows 11
Terminal name and version: WSL with kali-linux
Shell name and version: zhs
Kubectl Client Version: 1.27.1
Kubectl Server Version: several
KDash version: 0.3.6

Additional context
N/A

Was curious and had a look here because kube supports this. kdash calls ultimately look sensible:

kdash uses Kubeconfig::read in kube_api module
Kubeconfig::read merges all files found from the standard KUBECONFIG evar
kdash uses Config::from_kubeconfig in network mod
Config::from_kubeconfig will ultimately call Kubeconfig::read and pick the one matching kdash's saved context

...so tried with two k3d clusters with KUBECONFIG="/home/clux/.kube/k3d:/home/clux/.kube/k3dmain" and this totally works.
C swap clusters, both contexts show up (taking some time to switch contexts), and then seeing different pods

Think the problem here is that you're referencing ~ in the KUBECONFIG string (which also doesn't work for me).
I'd use a full path, as using KUBECONFIG="~/.kube/k3d:~/.kube/k3dmain" kubectl config get-contexts does not work either so it's not just a kube-rs thing.

Thank you @clux and yes it indeed seems like issue with ~


Relating Connections to User

add connections to User model
create resolvers

not using arrays like neanderthals.  http://mongoosejs.com/docs/populate.html#refs-to-children


Add a suite of comprehensive fixtures

Currently a bunch of tests all define model fixtures inline via JSON. Because this is a tedious process, most of them rank very high on the foo-bar scale. This does not represent real-world data, leading to less than ideally tested code, and also raises the bar to actually writing tests (fast).
Add a suite of fixtures that use real data available on Artsy to model the various permutations of data we need for our test suite.

We could just have a simple script that makes a GET request to the API for a specific model and generates a fixture with that real data. This makes it easy to update the fixtures in the future when data formats change.


continue the qulice optimizations

Continue to improve the code in order to one day make qulice happy.

Refs #7

the 'NgIgnoreSyncTest' class tests I created  is pathetic for testing the NgWebDriver.ignoresync
I simply have not been able to set it up dramatically, but
the exception is sometimes thrown from waitForAngular -
I still suggest to keep ignoresync.


Filer:move paragraph or selection fails on headers with trailing whitespace

Checks

[x] I confirm I have restarted NotePlan and this problem still persists.
[x] Is this a repeatable problem?

Describe the bug
When invoking the plugin and selecting a destination header that happens to end with whitespace, the selected paragraphs are cut but not moved to the destination note.
Cut paragraphs are lost.
What do you expect it to do instead?
With an error, plugin should default to "top of note" or simply do nothing.
To Reproduce
Steps to reproduce the behavior:

Create two headers, one with a space at the end, one without a trailing space.
action fails on the header with trailing whitespace, succeeds otherwise.

Screenshots
If applicable, add screenshots to help explain your problem.
System

Device: Mac, iPhone
OS: [e.g. iOS17.5.1, macOS 14.5]
NotePlan Version [e.g. 3.12.2]
Plugin Name & Version [e.g. "Filer" v1.1.5]

Additional context
Add any other context about the problem here.
Plugin Console Log
To provide us with more clues about where the bug/error is occurring...

Open the Plugin's Preferences by going to NotePlan's menu > Preferences > Plugins and clicking the settings "cog" icon next to the plugin in question. Scroll to the bottom and set the logging level to "DEBUG" and click "Save & Close"
Now open the Plugin Console by going to Noteplan > Help > Plugin Console (not the macOS Console app).
Run the plugin command you're reporting
Copy the output from the Plugin Console and paste it below
Delete any output that has personal information you don't want in there

Executing function 'moveParas'
2024-07-10 08:23:37 | DEBUG | jgclark.Filer v1.1.5 :: moveParas: move current para only
2024-07-10 08:23:37 | DEBUG | folders / filteredFolderList :: Starting to filter the 31 DataStore.folders with inclusions [] exclusions []
2024-07-10 08:23:44 | DEBUG | userInput / chooseHeading :: User picked existing heading number 4 ('test with withspace  ') from 11 ..
2024-07-10 08:23:44 | DEBUG | jgclark.Filer v1.1.5 :: - Moving to note '20240710' under heading: 'test with withspace  '
2024-07-10 08:23:44 | DEBUG | jgclark.Filer v1.1.5 :: -> Inserting at start of section 'test with withspace  '
Error: Couldn't find heading, this is case sensitive. Please check again.
2024-07-10 08:23:44 | DEBUG | jgclark.Filer v1.1.5 :: - Removing 1 paras from original note (which had 59 paras)

Executing function 'moveParas'
2024-07-10 08:31:00 | DEBUG | jgclark.Filer v1.1.5 :: moveParas: move current para only
2024-07-10 08:31:00 | DEBUG | folders / filteredFolderList :: Starting to filter the 31 DataStore.folders with inclusions [] exclusions []
2024-07-10 08:31:04 | DEBUG | userInput / chooseHeading :: User picked existing heading number 3 ('test without whitespace') from 11 ..
2024-07-10 08:31:04 | DEBUG | jgclark.Filer v1.1.5 :: - Moving to note '20240710' under heading: 'test without whitespace'
2024-07-10 08:31:04 | DEBUG | jgclark.Filer v1.1.5 :: -> Inserting at start of section 'test without whitespace'
2024-07-10 08:31:04 | DEBUG | jgclark.Filer v1.1.5 :: - Removing 1 paras from original note (which had 69 paras)

Note! Im not a developer of this plugin but I did some investigation of what is happening in the code..
I think there is a Bug in Noteplan Javascript API "addParagraphBelowHeadingTitle" (described on https://help.noteplan.co/article/70-javascript-plugin-api#paragraphobject).
It does not accept trailing spaces when called. The funny thing is there is a last argument to "addParagraphBelowHeadingTitle" stating * @param {Boolean} shouldCreate - If the heading should be created if non-existing
that if you set that parameter to true, when testing it will actually create a heading with trailing space in the end :) But that is no good fallback since you will not be notified when it happends, you will end up with lots of new headings in various notes...
BUT!
Since I rely specifically on "move paragraph or selection" in the Filer plugin, as a simple fix I added this code to "script.js" inside the "jgclark.Filer" folder.
E.g. In function "async function moveParas() {"
I added this
		var endSpace = /\s$/;

		if (endSpace.test(headingToFind)) {
		  CommandBar.showInput("Press Enter to remove this popup", "Error moving text, probably the heading has trailing spaces at the end/beginning");
		  throw new Error('The destination heading has trailing space!');

		  // No more lines are run below, i.e. the line is not removed
		}

Before this existing text
      logDebug(pluginJson$2, "- Removing ".concat(parasInBlock.length, " paras from original note (which had ").concat(String(origNumParas), " paras)"));
      note.removeParagraphs(parasInBlock);
      if (note.paragraphs.length !== origNumParas - parasInBlock.length) {
        logWarn(pluginJson$2, "  - WARNING: After delete there are ".concat(Number(note.paragraphs.length), " paragraphs"));
      }

It simple checks if there is a trailing space in the destination heading, and if so it will show a popup of the problem & will not remove the paragraph (instead return with the "throw" row), at least then you manually can check what the problem is directly.

Thanks @trmax for initial diagnosis, and for @magicnemo for a suggestion on how to proceed. As it happens I've done a fuller workaround, which I've just released as Filer 1.1.6. This silently attempts to fix the trailing whitespace in headings, though it does log what it's doing. If this fails, then a fuller message is shown to the user, and the operation is stopped before the delete can happen.


Incorrect block placement with Valkyrien Skies installed

Describe the bug
Hello. I've found a rather strange bug that boils down to this:
When entering third person, the game doesn't register any new faces the player may face. As such, all blocks will be placed at the last block the player faced before switching to third person.
https://github.com/user-attachments/assets/2d81222c-8ac2-461f-b189-0a81087e539b
Reproduce
Steps to reproduce the behavior:

Face a block in first person
Enter third person, then face another
Upon trying to place a block, it will be placed on the first position before switching to third person.

Expected behavior
The block should be placed where the player crosshair or where the player looks at any time.
Additional context
I have a rather extensive modlist, which I'll link here: Modlist.txt
For testing, there is also my modpack itself hosted on Modrinth: https://modrinth.com/modpack/vortex-foundations
Thank you, and have a very nice day.

When there's no other mod installed, it works fine.
It looks like conflict with another mod.

From my testing the issue is caused by Valkyrien Skies, which is a real bummer

Ah yea it must be.. VS breaks a LOT of mods sadly.

Duplicate of #79

Well since this is a duplicate, I believe this is redundant...


Bug: On mobile when viewing a post the menu button does not work

I've tracked down the issue to jQuery not being defined

Bug Fixed with latest commit


Set instance type from Azure ML Designer

How can I set the instance type when launching a job on an attached Kubernetes cluster from the Azure ML Designer? I can't find this option, jobs always start with the default instance type.

@adrianbojko, thanks for feedback. Check this documentation: https://github.com/Azure/AML-Kubernetes/blob/master/docs/instance-type.md. You update "defaultinstancetype" with more CPU/memory resources. AzureML Designer doesn't support custom instance type yet, but you can update "defaultinstancetype" using the instructions there.

That's what I thought, I can choose the instance type when using YAML files but could not find the option on AzureML Designer. Do you intend to add this feature?

That's what I thought, I can choose the instance type when using YAML files but could not find the option on AzureML Designer. Do you intend to add this feature?

Yes, it will be on our roadmap

Waiting for it, then!


tweak hashmap layout

cc @yj-qin
use FixedArray for hashmap

Pull Request Test Coverage Report for Build 1521
Details

0 of 2 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 89.24%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

linked_hashmap/impl.mbt
0
2
0.0%

Totals

Change from base Build 1520:
0.0%

Covered Lines:
2737

Relevant Lines:
3067

💛  - Coveralls


[Discussion/Components] Maximize controlled components, minimize internal state

While there might be use for both controlled and uncontrolled components, I think it's important that controlled components are completely controlled.
To allow both side by side, possibly allow both value and defaultValue, or similar analogies.
https://facebook.github.io/react/docs/forms.html
For a controlled component, view-state might as well be uncontrolled (ex. show/hide/selected) but value/active state should always be controlled.
Example: The default semantic menu items has two states: selected and active
active is the currently active item, such as the current page, the "value" of select, etc.
active should always reflect the input props, it should never be changed without explicitly passing a new prop. This is the point of controlled components - an input should always reflect data from up top. If I click an item in the menu, an event happens, but the parent node should evaluate the selection and choose whether to pass in an active value to the menu.
selected is the item currently highlighted by other means (default selection on search, selected by keyboard input (arrow keys))
selected state may be controlled by the component, as it does not reflect the form input, but rather visual UI state.
This has implications when dropdowns and selects are built on top of it.
A controlled select should never change value by itself, the onChange/onSelect event should emit the selected value, but it shouldn't change it's own value, the value should only change when the select receives new props.
Initializing state by props and then mutating it internally in a component is an anti-pattern.
I'm going to take a look at what I can do, but I'd be glad to get your input.

Menu in the lib could be both controlled and uncontrolled
DropdownMenu and Select uses controlled menu (i.e. passing active prop/with selected class name byself to given menuitem)
Select is very complex component since it could mix 3 variations (multiple, search, ui select/ui button). And i'm not sure if we can it make as outside controlled component, each state could have different logic. However i agree that this could be useful

Hm, if i'll make only controlled select i can remove almost all logic and leave it to user. Also it will allow to easy move search stuff to other component, for example Select and SearchSelect

Exactly!
I'll try to come up with a pull request.
I've previously used https://github.com/JedWatson/react-select/ and it has gone through some similar issues and changes. But I think it's too focused on searchable items and inputting a data structure instead of just passing children.

Not needed PR to avoid duplicating work, i'll make necessary changes in few days

I already started fiddling with it at https://github.com/SunspotsEU/semantic-react
There are some other features I want to look at as well, so I think I'll continue on.
I'm fine with duplicating work, I've got lots of time on my hands.

 See docs for example. There is a problem with animating labels though, but this is minor

The setState in styleguidist seems to redraw the entire component, I think that's why animations break.

yeah, looks like because CodeMirror. Then we can ignore that for now. Also there is a minor problem too with focus is always being placed on the beginning of the search box. Not sure if it's because styleguidist too :smile:

If wrap example into react class then everything works as expected


hardcoded decoding as ascii when log-level=debug

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/3116
Originally created by @mattesilver on 2021-12-12 21:32:56

What is the current bug behavior?
I'm running
meltano --log-level=debug select tap-google-sheets --list --all

on a sheet that contains emoji characters, Meltano CLI crashes trying to decode UTF stream as ASCII.
What is the expected correct behavior?
Meltano shouldn't crash when handling non-ascii stream in debug mode
Steps to reproduce
retrieve a catalog that contains non-ascii characters, in debug mode
Relevant logs and/or screenshots
Traceback (most recent call last):
  File "/home/matte/.local/pipx/venvs/meltano/lib/python3.9/site-packages/meltano/cli/__init__.py", line 53, in main
    raise CliError(str(err)) from err
meltano.cli.utils.CliError: 'ascii' codec can't decode byte 0xc3 in position 83: ordinal not in range(128)

Possible fixes
https://gitlab.com/meltano/meltano/-/blob/master/src/meltano/core/plugin/singer/tap.py#L45
file_like_obj.write(data.decode("ascii") if write_str else data)
I guess the encoding should be read from the environment?
Further regression test
Ensure we automatically catch similar issues in the future

[ ] Write additional adequate test cases and submit test results
[ ] Test results should be reviewed by a person from the team

View 10 previous comments from the original issue on GitLab


Allowing mouse double click instead forcing to click in the Ok button.

Which UI(s) is this on?

On "Create New View" and "Type of Control" UI's.

Ah right thx that is all class BigListBox<T> I think.  Its used all over the place.  Definetly worth adding that double click support

I'll make that a new issue #64


Tests for communications and clarifications files upload

These tests look fine, but would it be worth adding in the ACL fix and tests that ACL is set properly here? It should only be a small piece of work I think.

Sorry! Just seen your other PR. Ignore me.

@TheDoubleK
I did that thing that people always say is a good idea but never actually do!
I wanted to change some code but I couldn't confidently do it because it didn't have test coverage. So I wrote tests for the existing functionality.
The other pull request changes the code. So when these tests are merged the other PR will go red. Then I'll update these tests in that PR to make them green (by adding the acl).


Update to Bevy 0.6

What problem does this solve or what need does it fill?
The library needs to be updated. On master this is partially done, but there have been further changes since.
Describe the solution would you like?
Update to Bevy 0.6.
Describe the alternative(s) you've considered?
N/a
Additional context
Bevy 0.6 has been long in the making and contains a plethora of improvements which the tilemap and users would like to use right away.

I've had a look at brute-force moving bevy_tilemap to bevy v0.6. There were a number of items that changed name or library path because of the new bevy_render. That was straightforward, assuming similarly-named things are the same.
More surgery was required to replace PipelineDescriptor to RenderPipelineDescriptor. Also Extent3d no longer has a new() function.
My two (currently) remaining problems are:

A reference to the Draw component for Chunk which no longer exists.
In chunk/render/mod.rs in add_tilemap_graph you use PipelineDescriptors (now RenderPipelineDescriptors) as assets, but they don't have an impl for TypeUuid. This would need to be rectified by bevy, or we access them differently (maybe as Resources?)

I don't know if more problems will arise if I can get cargo check to get past these.

I suspect your custom rendering pass doesn't work with the new bevy render system. I'm not yet brave enough to mess with that.

I got a call scheduled with cart to figure this out. Its uh... Yeah... totally different. Need to learn a lot of new concepts :S. Severe lack of resources for it too.

With Sprite rendering now being batched to an extent and the potential for automatic frustum culling, do you think there is still an advantage to the chunking systems?

Yes, absolutely. However, it is transitioning from more from an apparent direct need to simply providing resources for a tilemap, which is still needed. If this library was just about sprite batching, that would be a different story.


Haskell compiler 8.0.x is slow when run from inside Stack on Windows 10 Ubuntu subsystem

Description
Both GHC and programs compiled with it are slow when version 8.0.x is used.
Expected run time to be roughly the same between 7.6.3, 7.10.3, 8.0.1, and 8.0.2 versions
Windows version is 1607 build 15031.0
Actual results
Newer GHC:
$ time stack ghc -- -e 'putStrLn ""'

real    2m28.240s
user    0m0.375s
sys     3m30.078s

$ time stack ghc -- --version
The Glorious Glasgow Haskell Compilation System, version 8.0.2

real    1m45.533s
user    0m0.125s
sys     2m46.516s

$ time stack ghc --compiler ghc-8.0.1 -- --version
The Glorious Glasgow Haskell Compilation System, version 8.0.1

real    2m54.764s
user    0m0.234s
sys     3m58.422s

$ echo 'main = putStrLn "Hello, world!"' > test.hs
$ time stack ghc --compiler ghc-8.0.2 -- test
[1 of 1] Compiling Main             ( test.hs, test.o )
Linking test ...

real    3m56.582s
user    0m0.609s
sys     5m8.125s

$ time ./test
Hello, world!

real    0m27.540s
user    0m0.000s
sys     0m27.297s

Older GHC:
$ time ghc -e 'putStrLn ""'

real    0m0.872s
user    0m0.109s
sys     0m0.125s

$ time ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.6.3

real    0m0.072s
user    0m0.000s
sys     0m0.031s

$ time stack ghc --compiler ghc-7.10.3 -- -e 'putStrLn ""'

real    0m0.876s
user    0m0.234s
sys     0m0.688s

$ time stack ghc --compiler ghc-7.10.3 -- --version
The Glorious Glasgow Haskell Compilation System, version 7.10.3

real    0m0.832s
user    0m0.109s
sys     0m0.813s

$ echo 'main = putStrLn "Hello, world!"' > test.hs
$ time stack ghc --compiler ghc-7.10.3 -- test
[1 of 1] Compiling Main             ( test.hs, test.o )
Linking test ...

real    0m2.222s
user    0m0.406s
sys     0m1.406s

$ time ./test
Hello, world!

real    0m0.030s
user    0m0.000s
sys     0m0.031s

Steps to reproduce

run bash
execute following commands:

sudo apt-get install stack
stack setup 7.10.3
stack setup
echo 'main = putStrLn "Hello, world!"' > test.hs
time stack ghc --compiler ghc-8.0.2 -- test
time ./test
time stack ghc --compiler ghc-7.10.3 -- test
time ./test

Required packages and commands to install:

Stack

Bug is also filed here

This is #1671.

This does not require Stack to replicate, GHC compiler alone is enough. And yes it is a duplicate, sorry.

wget http://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-deb8-linux.tar.xz
tar -xJf ghc-8.0.2-x86_64-deb8-linux.tar.xz
cd ghc-8.0.2
./configure --prefix=/tmp/ghc
make install
time /tmp/ghc/bin/ghc -e 'putStrLn ""'

Marking as a duplicate.


Fix typos in luci-base/luasrc/http/protocol.lua

Next time, please remember to sign off the commit properly.


New Command: outlook report mailactivityusercounts

Implements #1211

Coverage remained the same at 100.0% when pulling 27c1eed4c7ec2c88c3b6446283b8007946d41b00 on plamber:outlook-report-mailactivityusercounts into 84c571d8d7d98d5994643e52d09212c4716b1c21 on pnp:dev.

Thank you very much Patrick @plamber ! This is not manually merged in dev.


[backport] CI: use CUDA docker images for CUDA Python CI

Backport of #6336 by @kmaehashi

Difference from #6336: cutensor 1.3 is used instead of 1.4.

/test cuda-python

/test cuda-python


Issue with Capturing

If I want to capture the RNG Helper during my stream and want to go back and forth between Rare Game and Chests, it won't work since it creates a new window. It's a minor thing and has nothing to do with the program working properly - just a little thing that would be cool

Using different options for OBS Studio Window Capture does not fix.

Okay, so instead of opening and closing the forms, you want 1 form that changes between the different pages? Would this solve the problem?

Probably

Fixed by release V3.2.
Fixed by commit #43.


Implements DeleteResourceService

Implements DeleteResourceService

JIRA Ticket: https://jira.duraspace.org/browse/FCREPO-3063

Other Relevant Links (Mailing list discussion, related pull requests, etc.)

What does this Pull Request do?
Implements DeleteResourceService and adds a unit test. One note:  since the http layer requires some checks on FedoraResource before passing it to the delete service,  I reverted back to passing the FedoraResource to the service rather than the fedora identifier.
How should this be tested?
Covered by a unit test at this time.
Interested parties
Tag (@ mention) interested parties or, if unsure, @fcrepo4/committers

One last general question, does the service do the permission checking? I kind of assumed that when working in the CreateResourceService but I notice you didn't do that? Is that coming here later or being handled somewhere else?

Checked with @peichman-umd and this seems to be a servlet filter (my brain is much soup) so it would be done before this. So I am 👍

One last general question, does the service do the permission checking? I kind of assumed that when working in the CreateResourceService but I notice you didn't do that? Is that coming here later or being handled somewhere else?

I think you're right - it should be done.

@whikloj :  I createdhttps://jira.duraspace.org/browse/FCREPO-3114  to a address a bug in Fedora 5.1.0 and  https://jira.duraspace.org/browse/FCREPO-3115  to ensure that we cover this use case in 6.0.0


IPTT: Default filtering (Report type, target frequency, date ranges)

This ticket is replaced by #322.
Summary
This ticket describes acceptance criteria for date range generation based on report type and target frequency. These are the date ranges that are auto-populated in the IPTT filter panel (#120) based on selections made in the IPTT landing page (#119).
Acceptance criteria differ between the two report types (Program Indicator Overview and Periodic Target Overview). There are also different criteria depending on whether you've selected "Show all" or "Most recent." , and between "Show all" and "Most recent" options.
IMPORTANT TO NOTE: IPTT report date ranges are based on the reporting start and end months. These are initially derived from Program start and end dates, but may be manually adjusted. See ticket #127 Pull program start and end dates from GAIT and use them to set reporting start and end months
Program Indicator Overview
Show All option

The report starts on the first day of the reporting start month.
The program ends on the last day of the reporting end month.

Most Recent option

When "today" is inside the reporting period: The date range is inclusive of the current period. So, "last two months" includes this month and last month.
1.1. At the same time, the IPTT only displays full months of data. So we need to find the first day of the earliest time period in the range and the last day of the latest time period.
1.2. If the user enters a "Most recent" number larger than there are actual time periods available within the program's reporting date range, the IPTT does not throw an error message; it simply displays all available periods.
When "today" is after the reporting end month of the program: The IPTT shows you the most recent time periods available. So "last two months" in that case means the last two months of the program, even if it's 2 years later.

Some examples all based on today's date of April 20, 2018:

Years
1.1 I pick Years and 1 most recent. I should get a date range of Jan 1, 2018 - Dec 31, 2018.
1.2. I pick years and 2 most recent. I should get a date range of Jan 1, 2017 - Dec 31, 2018.
Semi-annual periods
2.1. I pick Semi-annual periods and 1 most recent. I should get a date range of Jan 1, 2018 - Jun 30, 2018.
2.2. I pick Semi-annual periods and 2 most recent. I should get a date range of Jul 1, 2017 - Jun 30.
Tri-annual periods
3.1. I pick Tri-annual periods and  and 1 most recent. I should get a date range of Jan 1, 2018 - Apr 30, 2018
3.2. I pick Tri-annual periods and  and 2 most recent. I should get a date range of Sep 1, 2017 - Apr 30, 2018.
Quarters
4.1. I pick Quarters and 1 most recent. I should get a date range of Apr 1, 2018 - Jun 30, 2018.
4.2. I pick Quarters and 2 most recent. I should get a date range of Jan 1, 2018 - Jul 30, 2018.
Months
5.1. I pick Months and 1 most recent. I should get a date range of Mar 1, 2018 - Apr 30, 2018.
5.2. I pick Months and 2 most recent. I should get a date range of Apr 1, 2018 - Apr 30, 2018.

Some examples based on a program that ran from Jun 1, 2012 to Apr 30, 2016.

I pick Years and 2 most recent. I should get a date range of May 1, 2014 - Apr 30, 2016.
I pick Months and 6 most recent. I should get a date range of Nov 1, 2015 - Apr 30, 2016.

Periodic Target Overview
Show All option

The report starts on the first day of the reporting start month.
The program ends on the last day of the reporting end month.
A note about Midline/Endline targets: There are no predefined date ranges associated with Midline/Endline targets. When entering data records, the user manually assigns them to Midline or Endline. Every data record does have a date associated with it, and we have no system rules preventing someone from assigning data records to the Endline that have earlier dates than data records assigned to the Midline. Even if this should occur:
3.1. IPTT reports should always list the Midline period first, followed by the Endline period.
3.2. Within each of the two periods, data records are listed in chronological order.
We are not including Events as a target frequency option because it has unique layout challenges outside the scope of the release.

Most Recent option
Note: This option is NOT available for Life of Program (LoP) only or Midline/Endline target frequencies.

When "today" is inside the reporting period: The date range is inclusive of the current period. So, "last two months" includes this month and last month.
1.1. At the same time, the IPTT only displays full months of data. So we need to find the first day of the earliest target period in the range and the last day of the latest target period.
1.2. If the user enters a "Most recent" number larger than there are actual target periods available within the program's reporting date range, the IPTT does not throw an error message; it simply displays all available periods.
When "today" is after the reporting end month of the program: The IPTT shows you the most recent target periods available. So "last two months" in that case means the last two months of the program, even if it's 2 years later.
In terms of the target period names, we should always use the actual period number in the sequence. Here is an example:
3.1. I want to see all of my program indicators with annual targets.
3.2. We're in the middle of Year 3 of a 5 year program that began on January 1, 2016.
3.3. For my report, I pick Years and "Most recent 2".
3.4. The first target period in the resulting report will be labeled Year 2 and will have a date range of Jan 1, 2017 - Dec 31, 2017.
3.5. The second period in the report is the current year. It will be labeled Year 3 and will have a date range of Jan 1, 2018 - Dec 31, 2018.
When today's date is past the final day of the final target period, "Most recent" refers to the final target periods. Here is an example:
4.1. My start month is Jan 1, 2018.
4.2. I have three annual targets: Year 1 (Jan 1, 2018 - Dec 31 2018), Year 2 (Jan 1, 2019 - Dec 31 2019), and Year 3 (Jan 1, 2020 - Dec 31 2020).
4.3. From Jan 1, 2021 onward, the "most recent" annual period is considered to be Year 3.
4.3.1. If I pick Years and "Most recent 1", I'll get a date range of Jan 1, 2020 - Dec 31, 2020.
4.3.2. If I pick Years and "Most recent 2", I'll get a date range of Jan 1, 2018 - Dec 31, 2020.

I am closing this ticket because it is replaced by #322.


obsolete terms that are in the deprecated subset

I don't have any information about this subset, but it looks as though there was at some stage a plan to obsolete these terms as they have been added to a subset called 'deprecated' and they have a comment saying 'DEPRECATION WARNING'. Looking at the terms it seems as though they are overly specific stage terms (except for the 3 optic lobe terms), where it might be better to use FBdv for curation.
The stage terms seem to have mostly been used to annotate images.
In some cases (mainly embryo cycles, pupal and adult substages) these terms are either not used or an appropriate FBdv term is already also used - I think these terms can just be obsoleted now.
In other cases an appropriate FBdv term will need adding.
The embryonic optic lobe terms do not have definitions, but comments say that they are duplicates of the respective 'primordium' terms, so these should just be merged.

ID
label

FBbt:00005304
blastoderm embryo

FBbt:00000054
cleavage stage embryo

FBbt:00005292
cycle 1 embryo

FBbt:00005303
cycle 10 embryo

FBbt:00005307
cycle 11 embryo

FBbt:00005308
cycle 12 embryo

FBbt:00005309
cycle 13 embryo

FBbt:00005312
cycle 14 embryo

FBbt:00005313
cycle 14A embryo

FBbt:00005314
cycle 14B embryo

FBbt:00005315
cycle 15 embryo

FBbt:00005316
cycle 16 embryo

FBbt:00005294
cycle 2 embryo

FBbt:00005295
cycle 3 embryo

FBbt:00005296
cycle 4 embryo

FBbt:00005297
cycle 5 embryo

FBbt:00005298
cycle 6 embryo

FBbt:00005299
cycle 7 embryo

FBbt:00005300
cycle 8 embryo

FBbt:00005302
cycle 9 embryo

FBbt:00005331
dorsal closure embryo

FBbt:00005660
embryonic inner optic lobe

FBbt:00005659
embryonic optic lobe

FBbt:00005661
embryonic outer optic lobe

FBbt:00005321
extended germ band embryo

FBbt:00005337
first instar larva

FBbt:00005317
gastrula embryo

FBbt:00005333
late embryo

FBbt:00005290
pre-blastoderm embryo

FBbt:00005338
second instar larva

FBbt:00005291
stage 1 embryo

FBbt:00005340
stage 1 third instar larva

FBbt:00005324
stage 10 embryo

FBbt:00005325
stage 11 embryo

FBbt:00005327
stage 12 embryo

FBbt:00005328
stage 13 embryo

FBbt:00005330
stage 14 embryo

FBbt:00005332
stage 15 embryo

FBbt:00005334
stage 16 embryo

FBbt:00005335
stage 17 embryo

FBbt:00005293
stage 2 embryo

FBbt:00005341
stage 2 third instar larva

FBbt:00005301
stage 3 embryo

FBbt:00005306
stage 4 embryo

FBbt:00005311
stage 5 embryo

FBbt:00005318
stage 6 embryo

FBbt:00005319
stage 7 embryo

FBbt:00005322
stage 8 embryo

FBbt:00005323
stage 9 embryo

FBbt:00005370
stage A1 adult

FBbt:00005371
stage A2 adult

FBbt:00006012
stage A3 adult

FBbt:00005343
stage P1 prepupa

FBbt:00005357
stage P10 pharate adult

FBbt:00005358
stage P11 pharate adult

FBbt:00005359
stage P11(i) pharate adult

FBbt:00005360
stage P11(ii) pharate adult

FBbt:00005361
stage P12 pharate adult

FBbt:00005362
stage P12(i) pharate adult

FBbt:00005363
stage P12(ii) pharate adult

FBbt:00005364
stage P13 pharate adult

FBbt:00005365
stage P14 pharate adult

FBbt:00005366
stage P15 pharate adult

FBbt:00005367
stage P15(i) pharate adult

FBbt:00005368
stage P15(ii) pharate adult

FBbt:00005344
stage P2 prepupa

FBbt:00005345
stage P3 prepupa

FBbt:00005346
stage P4 prepupa

FBbt:00005347
stage P4(i) prepupa

FBbt:00005348
stage P4(ii) prepupa

FBbt:00005350
stage P5 pupa

FBbt:00005351
stage P5(i) pupa

FBbt:00005352
stage P5(ii) pupa

FBbt:00005353
stage P6 pupa

FBbt:00005354
stage P7 pupa

FBbt:00005355
stage P8 pharate adult

FBbt:00005356
stage P9 pharate adult

FBbt:00005305
syncytial blastoderm embryo

FBbt:00005339
third instar larva

I have split the terms to keep out into a new ticket - #1882
and also split out embryonic optic lobe merges to new ticket - #1881
Remaining stage terms to be obsoleted (when curation updated to use FBdv):

ID
label

FBbt:00005292
cycle 1 embryo

FBbt:00005303
cycle 10 embryo

FBbt:00005307
cycle 11 embryo

FBbt:00005308
cycle 12 embryo

FBbt:00005309
cycle 13 embryo

FBbt:00005312
cycle 14 embryo

FBbt:00005313
cycle 14A embryo

FBbt:00005314
cycle 14B embryo

FBbt:00005315
cycle 15 embryo

FBbt:00005316
cycle 16 embryo

FBbt:00005294
cycle 2 embryo

FBbt:00005295
cycle 3 embryo

FBbt:00005296
cycle 4 embryo

FBbt:00005297
cycle 5 embryo

FBbt:00005298
cycle 6 embryo

FBbt:00005299
cycle 7 embryo

FBbt:00005300
cycle 8 embryo

FBbt:00005302
cycle 9 embryo

FBbt:00005337
first instar larva

FBbt:00005338
second instar larva

FBbt:00005291
stage 1 embryo

FBbt:00005340
stage 1 third instar larva

FBbt:00005324
stage 10 embryo

FBbt:00005325
stage 11 embryo

FBbt:00005327
stage 12 embryo

FBbt:00005328
stage 13 embryo

FBbt:00005330
stage 14 embryo

FBbt:00005332
stage 15 embryo

FBbt:00005334
stage 16 embryo

FBbt:00005335
stage 17 embryo

FBbt:00005293
stage 2 embryo

FBbt:00005341
stage 2 third instar larva

FBbt:00005301
stage 3 embryo

FBbt:00005306
stage 4 embryo

FBbt:00005311
stage 5 embryo

FBbt:00005318
stage 6 embryo

FBbt:00005319
stage 7 embryo

FBbt:00005322
stage 8 embryo

FBbt:00005323
stage 9 embryo

FBbt:00005370
stage A1 adult

FBbt:00005371
stage A2 adult

FBbt:00006012
stage A3 adult

FBbt:00005343
stage P1 prepupa

FBbt:00005357
stage P10 pharate adult

FBbt:00005358
stage P11 pharate adult

FBbt:00005359
stage P11(i) pharate adult

FBbt:00005360
stage P11(ii) pharate adult

FBbt:00005361
stage P12 pharate adult

FBbt:00005362
stage P12(i) pharate adult

FBbt:00005363
stage P12(ii) pharate adult

FBbt:00005364
stage P13 pharate adult

FBbt:00005365
stage P14 pharate adult

FBbt:00005366
stage P15 pharate adult

FBbt:00005367
stage P15(i) pharate adult

FBbt:00005368
stage P15(ii) pharate adult

FBbt:00005344
stage P2 prepupa

FBbt:00005345
stage P3 prepupa

FBbt:00005346
stage P4 prepupa

FBbt:00005347
stage P4(i) prepupa

FBbt:00005348
stage P4(ii) prepupa

FBbt:00005350
stage P5 pupa

FBbt:00005351
stage P5(i) pupa

FBbt:00005352
stage P5(ii) pupa

FBbt:00005353
stage P6 pupa

FBbt:00005354
stage P7 pupa

FBbt:00005355
stage P8 pharate adult

FBbt:00005356
stage P9 pharate adult

FBbt:00005339
third instar larva


Functional way : backend

In the backend API, see if I can enhance the usage of functional programming with LanguageExt...
Maybe with using static method and EitherAsync...

I like dependencies injection and will use LanguageExt when usefull.


Is that possible to load document by using Interface and ID?

Hi There,
We're using RavenDB before and trying to switch to PostgreSQL with Marten. But seems Marten Session Load only supports specify the type first to map to the specific table name.
Since ID can contain collection name (the type name), is that possible to load the document only by ID?
An alternative solution is to allow the developer to pass both the type and ID to Load method.
Which one do you think it's better and can be done?
Regards,
Chongzhao

I've never been wild about the old Raven "collection/{id}" pattern. Why wouldn't you know the document type collection you're looking for in the first place?
Having an overload that does it by Load(Type, id) isn't that big of a deal.

@jeremydmiller Thank you for your quick response!
Yes, the new method Load(Type, id) is what we're using right now, but it would be better if Marten can support this by default. Because our implementation is using reflection to call the generic Load method which is not good, but this can be done in Marten much easier.

@cchongchong Sounds like a good pull request;)

@jeremydmiller Thank you!
BTW, would you mind let us know which ID conversion you suggest? We're still using "collection/{id}" because this can let us know the collection name in the first time which is useful.

That depends on your usage. Most of us use the sequential Guid, other users are using the Hilo sequence


fix delete running bundle dir when ctr t start a container again

Signed-off-by: Lifubang<EMAIL_ADDRESS>First, create a redis container:
root@dockerdemo:/opt/runctest/redis#
~/gocode/src/github.com/containerd/containerd/bin/ctr run -d --config ./config.json redis7
9:C 01 Sep 03:32:22.208 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
root@dockerdemo:/opt/runctest/redis#
~/gocode/src/github.com/containerd/containerd/bin/ctr t ls
TASK      PID      STATUS
redis7    28576    RUNNING
root@dockerdemo:/opt/runctest/redis# ls /run/containerd/io.containerd.runtime.v1.linux/default/
redis7

Then, I run ctr t start again:
root@dockerdemo:/opt/runctest/redis#
~/gocode/src/github.com/containerd/containerd/bin/ctr t start -d redis7
ctr: mkdir /run/containerd/io.containerd.runtime.v1.linux/default/redis7: file exists: unknown
root@dockerdemo:/opt/runctest/redis#
~/gocode/src/github.com/containerd/containerd/bin/ctr t ls
TASK    PID    STATUS    CONTAINER
root@dockerdemo:/opt/runctest/redis# ls /run/containerd/io.containerd.runtime.v1.linux/default/
root@dockerdemo:/opt/runctest/redis#

redis7's workdir is deleted by mistake.
This is because os.RemoveAll in defer func in bundle.go
Please check it, thanks.

@crosbymichael @AkihiroSuda I this this bug needs to be fixed ASAP. Because ctr is installed as docker-containerd-ctr. If I run docker-containerd-ctr t start to start a container which has beed started by docker. This container can't stop, pause, restore unless the host restart.

@lifubang see https://github.com/containerd/containerd/pull/2575

@lifubang what version of containerd are you using?  also can you post your config?  i tried on master and it's not removed:
...
hatter@dev containerd> sudo ctr t ls
TASK     PID      STATUS
redis    60097    RUNNING
hatter@dev containerd> sudo ctr t start -d redis
ctr: mkdir /run/containerd/io.containerd.runtime.v1.linux/default/redis: file exists: unknown
hatter@dev containerd> sudo ctr t ls
TASK     PID      STATUS
redis    60097    RUNNING
hatter@dev containerd> sudo ls /run/containerd/io.containerd.runtime.v1.linux/default/
redis

@lifubang Can you squash these 2 commits? No reason to have the prior code version as a separate commit.
@crosbymichael this seems like a reasonable bug fix to not remove a container's workdir if inadvertently running a command a second time.

Codecov Report

Merging #2605 into master will increase coverage by 2.46%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #2605      +/-   ##
=========================================
+ Coverage   45.04%   47.5%   +2.46%
=========================================
  Files          92      87       -5
  Lines       10106    8150    -1956
=========================================
- Hits         4552    3872     -680
+ Misses       4834    3556    -1278
- Partials      720     722       +2

Flag
Coverage Δ

#linux
47.5% <ø> (-1.28%)
:arrow_down:

#windows
?

Impacted Files
Coverage Δ

oci/spec.go
82.09% <0%> (-11.62%)
:arrow_down:

remotes/docker/auth.go
63.82% <0%> (-3.97%)
:arrow_down:

remotes/docker/status.go
21.42% <0%> (-3.58%)
:arrow_down:

archive/compression/compression.go
50.9% <0%> (-2.43%)
:arrow_down:

platforms/cpuinfo.go
4.65% <0%> (-1.01%)
:arrow_down:

log/context.go
36.84% <0%> (-0.66%)
:arrow_down:

namespaces/context.go
55% <0%> (-0.56%)
:arrow_down:

errdefs/grpc.go
74.6% <0%> (-0.4%)
:arrow_down:

remotes/docker/pusher.go
0% <0%> (ø)
:arrow_up:

content/local/locks.go
100% <0%> (ø)
:arrow_up:

... and 55 more

Continue to review full report at Codecov.

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

@estesp @crosbymichael finished. Please check it. Thanks.


[AppGate] Enable Application -> Gateway Delegation

Objective
Create a foundation for the Gateway module in the poktroll repo for the Shannon upgrade.
Origin Document
Gateway actor in the Pocket Network Utility Specification
Goals

Enable an E2E HTTP relay
Build the foundation for the Gateway actor in Pocket Network
Build the foundation for the gateway module using the Cosmos SDK in Pocket
Identify time-consuming TODOs to be done during the integration and testing stages
Enable implementing business logic atop of a well-documented and well-tested codebase in downstream PRs

Deliverables

[x] A single PR that uses ignite to scaffold the DelegateToGateway and UndelegateFromGateway messages in the application module
[ ] A single PR that adds a parameter for the maximum number of gateway
[ ] A single PR that adds the business logic and test utils for this functionality
[ ] A single PR that makes sure apps automatically undelegate from Gateways that are unstaking
[ ] Unit tests & validation across the board

Non-goals / Non-deliverables

Support for unbonding periods after undlegating
Allow-listing or other "scope creep" like features

General deliverables

[ ] Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
[ ] Testing: Add new tests (unit and/or E2E) to the test suite.
[ ] Makefile: Add new targets to the Makefile to make the new functionality easier to use.
[ ] Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.


Separate server.py code into modules

I propose that the file be separated into the following modules:

Server: Logic about serving the json files to the client.
Portal Scraper: contains logic about obtaining the raw json file from the portal by web-scraping. Also contains logic of how to convert that raw file into the format recognized by hyperschedule.
Incremental Updates: contains the logic of computing the difference of course data and updating them.
Lingk Scraper: we should make a new module when lingk is incorporated to the code.

Do you guys agree with this proposal? Or do you think we should have less modules (or more)?

I don't see anything wrong with that.

I modularized the backend.


threejs: cameras in ThreeJS

What's this PR do?

[x] Add basic information about cameras in ThreeJS

ORPHAN COMMIT FOR REFLOG: 0c9b6aa20a4fc5c56de015b372ec9e8b732580a6

LGTM. @monotykamary might we test the image plugin here?

Looks all good 👍
From d3d4f5d7097a2c89a92b0c7124d0a108d58bbc3b Mon Sep 17 00:00:00 2001
From: Tom Nguyen<EMAIL_ADDRESS>Date: Wed, 21 Sep 2022 11:51:39 +0700
Subject: [PATCH] chore: generate local images

---
 Engineering/ThreeJS/Cameras in ThreeJS.md |  10 +++++-----
 _assets/OIpfGw7.png                       | Bin 0 -> 467251 bytes
 _assets/Va74b4E.png                       | Bin 0 -> 159737 bytes
 _assets/ZKOiIim.png                       | Bin 0 -> 505216 bytes
 _assets/cX1U9zI.png                       | Bin 0 -> 507573 bytes
 _assets/uIocTAX.png                       | Bin 0 -> 377219 bytes
 6 files changed, 5 insertions(+), 5 deletions(-)
 create mode 100644 _assets/OIpfGw7.png
 create mode 100644 _assets/Va74b4E.png
 create mode 100644 _assets/ZKOiIim.png
 create mode 100644 _assets/cX1U9zI.png
 create mode 100644 _assets/uIocTAX.png

diff --git a/Engineering/ThreeJS/Cameras in ThreeJS.md b/Engineering/ThreeJS/Cameras in ThreeJS.md
index bc61010..2936f70 100644
--- a/Engineering/ThreeJS/Cameras in ThreeJS.md
+++ b/Engineering/ThreeJS/Cameras in ThreeJS.md
@@ -14,19 +14,19 @@ You cannot use the `Camera` class directly to initialize a new camera in ThreeJS

 The image below shows the object viewed in **perspective camera** (upper) and in **orthographic camera** (lower).

-![](https://i.imgur.com/Va74b4E.png)
+![](_assets/Va74b4E.png)

 Place them into the **Oxyz** coordinate...

-![](https://i.imgur.com/uIocTAX.png)
+![](_assets/uIocTAX.png)

 ### Perspective camera

-![](https://i.imgur.com/OIpfGw7.png)
+![](_assets/OIpfGw7.png)

 Some crucial attributes:
 - **fov** (field of view): Camera frustum **vertical** field of view, i.e. the angle of the view in the yOz plane, in degree. The lower the number, the narrower the view.
-![](https://i.imgur.com/ZKOiIim.png)
+![](_assets/ZKOiIim.png)
 - **near** and **far**: Clipping planes at 2 points on the z axis. Note that objects with z position outside the `(near, far)` interval will **not** be displayed.

 ```javascript
@@ -42,7 +42,7 @@ Perspective camera visualization from [r105.threejsfundamentals.org](https://r10

 ### Orthographic camera

-![](https://i.imgur.com/cX1U9zI.png)
+![](_assets/cX1U9zI.png)

 Some crucial attributes:
 - **left**, **right**, **top** and **bottom**: Horizontal and vertical position of 4 segments of the view.


macos ansible setup improvements

unixPB: This PR is amed to add Xcode_offline which installs xcode without need to use any other 3rd party resource. Also some minor code changes and improvement added (e.g. install brew)

Checklist

[x] commit message has one of the standard prefixes
[x] faq.md updated if appropriate
[x] other documentation is changed or added (if applicable)
[x] VPC/QPC not applicable for this PR

I've added a couple of other people as reviewers who are more knowledgeable about the macos stuff than I am but from a general perspective:

At present we use the main.yml file for macos, so switching to use a separate one superficially feels like a slightly backwards step. Is it possible to integrate some of these changes into the normal execution of main.yml or is there a reason why you have chosen to do this as a separate top level file?
This seems to have quite significant changes to some of the roles such as the ant-contrib one - are they specific to the goal of this PR to improve usability of the macos playbooks?
Similarly this seems to change how things like the credentials are retrieved for the Jenkins_User role, which would be a change in behaviour.

Perhaps some of those things can be decoupled from this PR and proposed separately unless there is a reason they've all been put together.

Yes. This file (including comments on the bottom) is only to show what are changes, and how does this whole works for macos. For sure we can combine them.
Yes. But at the same time they are general improvements in code and logic too. e.g in ant-contrib most of it is to introduce a new variable {{ ant_binary_file_name }} which lets avoid repetition of extracting the path every time we need.
Agreed.
Agreed. I can focus on xcode offline and then ask for the rest in separate PR.

@mahdipub Can you resolve the linter fixes?

Based on comments on slack, I will close this PR and split changes in 2~3 PRs. The one related to Xcode-offline and the other for brew is https://github.com/adoptium/infrastructure/pull/3417.


[Remote Store] Enhance Remote Store test suite with ITs for Remote Translog Store operations

Is your feature request related to a problem? Please describe.
Currently we don't have a robust suite of integration tests to validate Remote Translog Store operations.
Describe the solution you'd like
We need to add more integration tests that cover various anticipated scenarios as well as any edge cases that are critical.

@BhumikaSaini-Amazon  Can we confirm if we need additional tests. If yes can we list them down.
[Storage Triage - attendees 1 2 3 4 5 6 7 8 9 10


Move content to README so it is visible on repo homepage

Currently, when you first load the repo, the content is the license. I think we should move the main content to README.md (at least for now), so we have a more welcoming experience for newcomers

@Paul-TT I would merge this after everyone's PRs to avoid conflicts

@sklarsa  Makes sense. Thanks, Steve.

@sklarsa could you please update your branch? I don't have write access to this.
Then, @Paul-TT , I think we can merge this.

@jbattiato github auto-closed this PR.. will just re-open this one from a non-main branch in my fork to make things easier


this is very cool.

I'm glad I found what I was looking for.

haha thank you. Closing the "issue" :)


Improve Signature of RNNBase train functions

The RNNBase.train function accepts an X_dev and some **kwargs and passes them on to TorchNoiseAwareModel.train. However, in TorchNoiseAware.train, it seems as if one either has to set both X_dev and Y_dev ore none. When only X_dev is provided, Y_dev gets its default value 'None' which will lead to a runtime crash in TorchNoiseAwareModel.score.
To make users more aware of this, the RNNBase.train function signature should either mention both or none of X_dev and Y_dev.

Hey @MaxG87 that suggestion makes sense!  Happy to accept this modification as a PR if you want to contribute!

We're preparing for a large refactor in v0.9 which should change these signatures entirely. Closing for now, but feel free to open another issue if you have additional feedback!


Templated parallel version of the code and different way of computing gains

@mpetri @JMMackenzie not sure if will like this. Let me know

Closing this one as it is getting too big. I will go step-by-step to make sure we compression does not changes.


Autoprefixer options without ejecting

Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [x] feature request

Versions.
@angular/cli: 1.2.0
node: 8.1.2
os: darwin x64
@angular/common: 4.2.5
@angular/compiler: 4.2.5
@angular/core: 4.2.5
@angular/forms: 4.2.5
@angular/http: 4.2.5
@angular/platform-browser: 4.2.5
@angular/platform-browser-dynamic: 4.2.5
@angular/router: 4.2.5
@angular/cli: 1.2.0
@angular/compiler-cli: 4.2.5

Repro steps.
Cli v1.2.0 uses v6 postcss autoprefixer. It has issue with grid support
Autoprefixer v7 has this issue fixed but the css grid support is disabled by default.
In order to get css grid prefixes working, autoprefixer({ grid: true }) is needed.
Is there a way to set options for autoprefixer without ejecting app?
Desired functionality.
Option in .angular-cli.json to pass options

Anyone know of a (non-Eject) workaround, until this can be taken care of?

You can manually add prefixes? :)

@veke Manually keeping the two different vocabularies for grid settings in sync (to account for not just the prefixes, but the different ways of describing grid spans) between current Grid and the older spec that IE supports, is very unpleasant. Autoprefixer 7 can do this.

 It could probably be adapted by anyone with an urgent need to adjust autoprefixer options.
https://github.com/OasisDigital/cli-css-grid-demo/blob/master/patch_cli_autoprefixer.sh


fallback config didn't work

httpRequest header  has 'Origin',the fallback didn't work.
remove the  header  'Origin'.the fallback did work.
why and how to solve it?
spring-cloud-starter-netflix-hystrix:2.1.4.RELEASE
config：
spring.cloud.gateway.default-filters[0].name=Hystrix
spring.cloud.gateway.default-filters[0].args.name=fallbackcmd
spring.cloud.gateway.default-filters[0].args.fallbackUri=forward:/fallback/fallback
feign.hystrix.enabled=true
ribbon.ReadTimeout=3000
ribbon.ConnectTimeout=3000
ribbon.MaxAutoRetries=0
ribbon.MaxAutoRetriesNextServer=0
ribbon.OkToRetryOnAllOperations=False
ribbon.eager-load.enabled=true
ribbon.eager-load.clients=service-a
hystrix.threadpool.fallbackcmd.coreSize=800
hystrix.threadpool.fallbackcmd.maxQueueSize=500
hystrix.threadpool.fallbackcmd.queueSizeRejectionThreshold=500
hystrix.command.fallbackcmd.execution.isolation.strategy=THREAD
hystrix.command.fallbackcmd.execution.isolation.thread.timeoutInMilliseconds=5000

Can you show your fallback controller? a header shouldn't matter.

it is simple
`/**

@Author:
*/
@Slf4j
@RestController
@RequestMapping("/fallback")
public class FallbackController {
/**
*
*/
@RequestMapping(value = "/fallback", method = {RequestMethod.GET,RequestMethod.POST})
public CommonResponse fallback() {
log.error("enter fallback ");
return CommonResponse.generateCommonResponse(Result.FALLBACK_ERROR);
}

}`

Can you provide a complete, minimal, verifiable sample that reproduces the problem?  It should be available as a GitHub (or similar) project or attached to this issue as a zip file.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


Google Chrome warning: [Deprecation] Synchronous XMLHttpRequest

I'm getting this message in Google Chrome, on Developers Tools Log:
[Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
On: jaxon.core.min.js:1

This issue was moved to jaxon-php/jaxon-js#4


Error in build.

System information.

Have I written custom code (as opposed to using a stock example script provided in Keras): No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): tf_nightly-2.9.0
Python version: 3.7
Bazel version (if compiling from source): 4.2.2
GPU model and memory: NVIDIA GeForce 1080Ti
Exact command to reproduce:

Cloned the recent version of the repo and followed the steps provided in CONTRIBUTING.md
When tests are run using bazel errors are raised.
Complete error log:
WARNING: The following configs were expanded more than once: [v2]. For repeatable flags, repeats are counted twice and may lead to unexpected behavior.
INFO: Options provided by the client:
Inherited 'common' options: --isatty=1 --terminal_columns=120
INFO: Options provided by the client:
Inherited 'build' options: --python_path=E:/venv_dir/Scripts/python.exe
INFO: Reading rc options for 'test' from e:\venv_dir\keras.bazelrc:
Inherited 'build' options: --apple_platform_type=macos --define open_source_build=true --define=use_fast_cpp_protos=false --define=tensorflow_enable_mlir_generated_gpu_kernels=0 --define=allow_oversize_protos=true --spawn_strategy=standalone -c opt --announce_rc --define=grpc_no_ares=true --config=short_logs --config=v2
INFO: Reading rc options for 'test' from e:\venv_dir\keras.bazelrc:
'test' options: --define open_source_build=true --define=use_fast_cpp_protos=false --config=v2
INFO: Found applicable config definition build:short_logs in file e:\venv_dir\keras.bazelrc: --output_filter=DONT_MATCH_ANYTHING
INFO: Found applicable config definition build:v2 in file e:\venv_dir\keras.bazelrc: --define=tf_api_version=2 --action_env=TF2_BEHAVIOR=1
INFO: Found applicable config definition build:v2 in file e:\venv_dir\keras.bazelrc: --define=tf_api_version=2 --action_env=TF2_BEHAVIOR=1
INFO: Analyzed target //keras/engine:base_layer_test (53 packages loaded, 1275 targets configured).
INFO: Found 1 test target...
ERROR: C:/users/surya prakash mishra/_bazel_surya prakash mishra/dtq74e5t/external/com_google_protobuf/BUILD:853:26: Executing genrule @com_google_protobuf//:protos_python_genrule failed: (Exit -1): bash.exe failed: error executing command c:/tools/msys64/usr/bin/bash.exe -c ... (remaining 1 argument(s) skipped)
Action failed to execute: java.io.IOException: ERROR: src/main/native/windows/process.cc(202): CreateProcessW("c:\tools\msys64\usr\bin\bash.exe" -c "source external/bazel_tools/tools/genrule/genrule-setup.sh; cp external/com_google_protobuf/src/google/protobuf/any.proto bazel-out/x64_windows-opt/bin/external/com_google_protobuf/python/google/protobuf/any.proto && cp external/com_google_protobuf/src/google/protobuf/api.proto bazel-out/x64_windows-opt/bin/external/com_google_protobuf/python/google/protobuf/api.proto && cp external/com_google_protobuf/src/google/protobuf/compiler/plugin.proto bazel-ou(...)): The system cannot find the file specified.
(error: 2)
Target //keras/engine:base_layer_test failed to build
Use --verbose_failures to see the command lines of failed build steps.
ERROR: C:/users/surya prakash mishra/_bazel_surya prakash mishra/dtq74e5t/external/com_google_protobuf/BUILD:864:17 ProtoCompile external/com_google_protobuf/python/google/protobuf/duration_pb2.py failed: (Exit -1): bash.exe failed: error executing command c:/tools/msys64/usr/bin/bash.exe -c ... (remaining 1 argument(s) skipped)
INFO: Elapsed time: 145.682s, Critical Path: 19.77s
INFO: 175 processes: 16 internal, 159 local.
FAILED: Build did NOT complete successfully
//keras/engine:base_layer_test                                  FAILED TO BUILD
FAILED: Build did NOT complete successfully

Sadly we usually just verify our build process on Linux, and current we don't have a windows OSS build. Will discuss this on the triage meeting.

@old-school-kid
Not sure, but I think you can try one of the following:

Docker: use a docker container if possible, it'll make things much simpler.
In your particular case, restarting the computer might help. In my case proto related errors disappeared after restarting. Also, don't forget to add bazel to PATH.

Thanks @AdityaKane2001  for the reply. @old-school-kid could u check if this error is caused by any local env issue?

In your particular case, restarting the computer might help. In my case proto related errors disappeared after restarting. Also, don't forget to add bazel to PATH.
Tests start and actually first 106 out of 165 of them pass too. So I dont think there is an issue with local env. And I restarted my computer but didn't help.

Docker: use a docker container if possible, it'll make things much simpler.
Will try to do this but isn't it supposed to build locally in a Windows machine.

Will try to do this but isn't it supposed to build locally in a Windows machine.

Things are not really supported well on Windows. Hence the recommendation.

Closing this issue since it is quite idle and probably not anything we are addressing from keras-team


Metavoice with quantized model - "Non contiguous rmsnorm is not implemented" - on M1 Max using metal

cargo run --example metavoice --release --features metal -- --quantized --out-file output.wav --prompt "This is a demo of text to speech by MetaVoice-1B, an open-source foundational audio model."
avx: false, neon: true, simd128: false, f16c: false
prompt: 'This is a demo of text to speech by MetaVoice-1B, an open-source foundational audio model.'
[2133, 2153, 2320, 2388, 2307, 2434, 2158, 2160, 2328, 2305, 2150, 2169, 2165, 2327, 2311, 2456, 2150, 2419, 2452, 2428, 2377, 2146, 2135, 2160, 2355, 2150, 2094, 2098, 2115, 2093, 2399, 2313, 2161, 2325, 2094, 2164, 2483, 2374, 2323, 2514, 2487, 2380, 2307, 2166, 2149, 2154, 2160, 2321, 2160, 2149, 2150, 2157, 2095, 2561]
--> Error: Non contiguous rmsnorm is not implemented

Thanks for reporting this, should be fixed in #2021 .

Closing as hopefully fixed, feel free to reopen.


Add scheduleInterval property to PipelineEntity

and update the backend and airlfow ingestions to get this data from DAGs

@pmbrull are we going to handle this in 0.11 release

UI left to be implemented.


Sometimes it takes a really long time to ask to unblock and allows browsing during that time

Right now I only have Twitter on the block list, but oftentimes lately I'll visit it and it will wait several minutes to ask if I want to pay, during which I can browse the site as if it's unblocked. Once it finally asks (assuming it does ask before I leave), the time I was on the site appears to have been included in the time it counts down to--for instance I just paid to unblock Twitter when it asked most recently, after I'd been on it for several minutes, and it says I have 16:53 remaining to use it when the unblock length is 30 minutes.
Sometimes it doesn't ask at all before I've exhausted my interest in checking the site--thus translating to a free use of it as if vacation mode is on (it's not).
Starting a pomodoro does properly immediately block the site, though.
I don't know if something on my end could be causing this, but it seems to have started out of the blue with no deliberate changes to my browser or any other extensions...

Hi :)
Just to make sure, 16:53 is the remaining or the time that appears in the blocked list? (if it appears on the block list it means that the site is open until  the hour 16:53, and not open for 16.53 minutes)
When the site is getting blocked, do you get this alert during your visit on twitter?
https://ofekm.tinytake.com/tt/MzkyMzMzNF8xMjAzNTc0Mw
Since it started out of the blue please try to reinstall the extension from the chrome app store. Anyway, I am working on improving the block system but it takes time :)

In regards to the block time: ...D'oh. I misread how the time worked. So ignore that part. Whoops. :-/
I do get that window but oftentimes only after several minutes of using the site without the extension stopping me, instead of right when I open it.
I guess I'm making a to-do to reinstall, then.

Hi :)
@citrusella
Just to make sure, 16:53 is the remaining or the time that appears in the blocked list? (if it appears on the block list it means that the site is open until  the hour 16:53, and not open for 16.53 minutes)
When the site is getting blocked, do you get this alert during your visit on twitter?
https://ofekm.tinytake.com/tt/MzkyMzMzNF8xMjAzNTc0Mw
Since it started out of the blue please try to reinstall the extension from the chrome app store. Anyway, I am working on improving the block system but it takes time :)

In regards to the block time: ...D'oh. I misread how the time worked. So ignore that part. Whoops. :-/
I do get that window but oftentimes only after several minutes of using the site without the extension stopping me, instead of right when I open it.
I guess I'm making a to-do to reinstall, then.

If the problem persists let me know.

Reinstalling didn't seem to fix it, but I added other sites and those seem to work fine.
My only guess is that Twitter is more taxing on my computer so the extension takes a bit to respond. (A family member is theorizing my hard drive might be slowly dying, so it's possible performance has gradually gotten worse since I first got the extension and I just didn't notice a specific change because it's been happening so slowly.) If there's any possibility of it being something else, I wouldn't know what to consider...

Thanks, I'll see what I can do :)
Maybe the improved block system will solve it, but it will take some time...

I think it should be fixed now. please update the extension try again, let me know  if it works.


Uncaught AttributeError in sendchat.py line 30

Aider version: 0.55.0
Python version: 3.9.14
Platform: macOS-14.5-arm64-arm-64bit
Python implementation: CPython
Virtual environment: No
OS: Darwin 23.5.0 (64bit)
Git version: git version 2.39.5 (Apple Git-154)
An uncaught exception occurred:
Traceback (most recent call last):
  File "aider", line 8, in <module>
    sys.exit(main())
  File "main.py", line 694, in main
    io.tool_output()
  File "base_coder.py", line 730, in run
    def get_input(self):
  File "base_coder.py", line 773, in run_one
    return
  File "base_coder.py", line 1183, in send_message
    content += "\n^C KeyboardInterrupt"
  File "base_coder.py", line 1863, in auto_commit
  File "repo.py", line 101, in commit
    else:
  File "repo.py", line 186, in get_commit_message
    continue
  File "sendchat.py", line 38, in wrapper
    retry_exceptions(),
  File "sendchat.py", line 30, in retry_exceptions
    litellm.llms.anthropic.chat.AnthropicError,
AttributeError: module 'litellm.llms.anthropic' has no attribute 'AnthropicError'

Thank you for filing this issue.
The fix is in the latest version (0.57.1), please update aider with
aider --upgrade

Thanks for trying aider and filing this issue.
This looks like a duplicate of #1278. Please see the comments there for more information, and feel free to continue the discussion within that issue.
I'm going to close this issue for now. But please let me know if you think this is actually a distinct issue and I will reopen this issue.


Versions >= 1.7 loses support for subkeys

Summary

Gopass 1.6.12 has support for subkeys added to a .gpg-id file, this no longer works for either the 1.8 or 1.7 versions.
Steps To Reproduce

$ gopass-1.8 generate test
How long should the password be? [24]:

$ gopass-1.8 test
gpg: decryption failed: No secret key

Expected behavior

Environment

OS: Fedora
OS version: Linux
gopass Version: 1.7, 1.8
Installation method: rpm

Additional context

This is mostly a note to anyone else that comes across this problem since I didn't find any specific note about this in the docs or release notes.

Actually I'm not aware of any such changes. Are you sure that only the gopass version changed?
Sure we changed a lot for 1.7 and upwards but I wonder how that interacts with subkeys.

I tried it again with a new password store. 1.6.12 works, and 1.8.2 doesn't (more details below). It is entirely possible I am doing something wrong cause I don't really understand gpg.
I have two yubikeys configured as per this guide each with different keys. To get them both decrypting the keystore I have added their encryption public keys to the .gpg-id file within the store followed by an exclamation mark, i.e. 0xE51234567890A!. The .gpg-id file then contains the master key fingerprint and two encryption subkeys.
Passwords generated on 1.8.2 will only decrpyt with one of the two yubikeys. While those generated on 1.6.12 are decrypted by both, which still holds on 1.8.2.

@malramsay64, are you saying that you have added the fingerprints directly to the .gpg-id file? Can you try using gopass recipients add ... instead?

Yes I have been adding the fingerprints of the encryption subkeys to the .gpg-id file. When using gopass recipients add
$ gopass recipients add B2CBB103E7169567964C1F24B1125D5C5F57A29A
Do you want to add '0x8C945615619236BA - Malcolm Ramsay<EMAIL_ADDRESS>as an recipient to the store ''? [y/N/q]: y

Error: failed to add recipient 'B2CBB103E7169567964C1F24B1125D5C5F57A29A': Recipient already in store

I was editing the .gpg-id file since I initially set the store up with pass and then migrated to gopass with everything just working until the 1.7.0 release. I noticed now because I needed to use my backup key after leaving the primary one at work.

I can confirm the issue, I am pretty much in same situation as @malramsay64. It seems to encrypt only for the last sub key which happens to be my baxkup :-(

I can't speak to existing gopass stores, as I am starting to explore gopass myself.
However, has anyone tried PGP's default-key option?
On Qubes OS and with Keybase.io, I too have had issues with sub-keys.  I usually get around it by specifying my exact/default Subkey I want to use on the machine with default-key in the ~/.gnupg/gpg.conf file.
However, best practices of PGP dictates to only have short-expiring sub-keys on your daily-driver (the machines you use every day) to limit your attack surface.  E.g. sub-keys that expire every 30 days or so.  Your master private key should be kept on an air-gapped machine, where you only fire it up to generate new sub-keys.
With that said, I have on my work machines and laptops only the sub-key I want to use on that machine - and no other private keys.  I usually don't run into problems with QubesOS or Keybase.io with this setup.  Only on my desktop where I have multiple private keys in the air-gapped vaultVM.
So...  I wonder if setting default-key would be best here for users with multiple private keys?
I'll experiment as well as I'm looking at gopass to switch to myself - and I exclusively only use sub-keys.  👍

Same issue here, have setup 2 yubikeys and have only the public master key and 3 subkeys in each yubikey (one for Encription, other for Signing and other for Authentication). Currently I am unable to decrypt any secret I just created... Anyone found a solution?

As a quick follow-up, when I was testing gopass 1.7, I only had a subkey on my test domain (VM).  Gopass worked fine with only my 1 private key.
My guess of the root problem per the error message above that @malramsay64 posted is that the add recipient function checks to see if any existing keys match the same email, and then errors.
It's just a guess, but would make sense since I am able to use a subkey with 1.7 - because that is the only key on the entire system (no master key).

Just found this project and got excited about the audit feature. I'm on macOS, and this happens. Only for the audit command however. Per earlier comments, I tried 1.6.10, and that could run audit without any warnings.  The entries that yielded decryption failure with latest version are still possible to unlock with latest version if I use the plain access gopass folder/entry. I'm sure you need more details, so please ask.

Still broken.

My use-case is using the password store on my phone, but I don't trust the "key provider" app with my root key.  So I'd create a subkey and encrypt the password store against it and only put that to the phone.  Worst case I lose all my passwords... /shrug

Uh-oh, I am migrating my password to password-store and I was excited to use gopass rather than standard pass, but this is a deal-breaker. How do people backup their password stores if subkeys do not work? Anyway, having support for subkeys sounds pretty essential...

I mentioned, a few years ago above lol, that when I o my had a subkey (no master key) I was able to use gopass successfully.
I've since moved on from gopass though.  So hope that helps someone.

I'm using Gopass exclusively with a hardware token that's only containing an encryption subkey and a signature&authn one, so I'm not sure what's happening here.
As far as I know we should still be honoring .gpg-id files, but I haven't tested.
Anyone got some easy to do steps to reproduce the problem?

Also it seems we are compatible with throw-keyid and hidden recipients as far as I can tell:
#1756
(which makes sense since we are delegating encryption and decryption to the gpg binary itself)

Here is what I am seeing.
My setup is this:

0x90D516249B728BE6 is the “primary” certification key (no encryption)

047A7B2FB0E96F07F9C216DCB3D9F87D907DC8B1 is its encryption-only subkey (the one I actively use)
FBE0EC61EDA03749197C34D785D128E1B30E1931 is another encryption-only subkey (for backups)

(Not sure if it matters, but the certification and backup-encryption key are on one YubiKey, and active-encryption key is on another YubiKey.)
Problem 1: can’t use the CLI to add different subkeys as recipients
$ gopass init
[init] Initializing a new password store ...
Please select a private key for encrypting secrets:
[0] gpg - 0x90D516249B728BE6 - Kirill Elagin<EMAIL_ADDRESS>Please enter the number of a key (0-0, [q]uit) [0]: 0
[init] Initializing git repository (gitfs) for kirelagin / ...
Please enter an email address for password store git config []:
[init] git initialized at /home/kirelagin/.local/lib/gopass
[init] Git Email not set
[init] git configured at /home/kirelagin/.local/lib/gopass
[init] Git initialized
[init] Password store /home/kirelagin/.local/lib/gopass initialized for:
[init]   0x90D516249B728BE6 - Kirill Elagin<EMAIL_ADDRESS>
$ gopass recipients add 'FBE0EC61EDA03749197C34D785D128E1B30E1931!'
Do you want to add '0x90D516249B728BE6 - Kirill Elagin<EMAIL_ADDRESS>as a recipient to the store ''? [y/N/q]: y

Error: failed to add recipient 'FBE0EC61EDA03749197C34D785D128E1B30E1931!': Recipient already in store

This is clearly a UX problem, since this is something that should work. Compare to pass:
$ pass init '047A7B2FB0E96F07F9C216DCB3D9F87D907DC8B1!' 'FBE0EC61EDA03749197C34D785D128E1B30E1931!'

and it does exactly what I need. gopass is being smart and, as a result, I could not find any way to init a repo to a specific subkey. Furthermore, since I can’t remove the only recipient, the UI does not allow me to change the recipients list to be made of specific subkeys.
Problem 2: identifying encryption keys by their certifying key does not seem to be future-proof
I am pretty new to using Password Store in general, and I am a bit confused as to what will happen when I phase out my current encryption subkey and switch to using a new one (I rotate the active encryption key yearly). Since .gpg-id created by gopass contains only the ID of my certifying primary key, it seems to me that it means that if the most-recent encryption subkey changes, gopass will silently start encrypting new passwords to the new subkey, while old passwords will remain encrypted to the phased-out subkey.
In other words, the problem here is that I can (easily and without noticing myself) change the actual encryption key used without editing the list of recipients, since the choice of the encryption key is “impure”.
With pass it all is pretty much my responsibility, so by explicitly starting with specific subkeys I will then be forced to edit the list of recipients once I rotate they keys.
My proposal would be to make gopass always store the exact encryption subkey chosen, even when I do gopass init and select the identity, it should resolve the exact encryption key GPG will use by default, and instead of storing the fingerprint of the certification key, store the fingerprint of that specific encryption key.
Problem 3: ignoring multiple subkeys in .gpg-id
This is, arguably, the worst, since I have manual overrides to deal with the two previous ones and I can teach myself to never trust gopass recipients list and instead inspect .gpg-id manually, but this problem threatens the integrity of the store and makes gopass incompatible (unusable) with pass.
So, suppose, I initialised the repository using pass as above, so that now I have:
$ cat ~/.local/lib/gopass/.gpg-id
047A7B2FB0E96F07F9C216DCB3D9F87D907DC8B1!
FBE0EC61EDA03749197C34D785D128E1B30E1931!

I want to switch to using gopass now. Let’s see:
$ gopass recipients list
Hint: run 'gopass sync' to import any missing public keys
gopass
└── 0x90D516249B728BE6 - Kirill Elagin<EMAIL_ADDRESS>
It just hides the fact the there are, in fact, two encryption keys in the recipients list. I would prefer it to just show two encryption subkeys, or, maybe a two-level tree (but this might be confusing to some users).
$ gopass generate
Which name do you want to use? []: hello
How long should the password be? [24]:
Password for hello generated
$ cat ~/.local/lib/gopass/hello.gpg | gpg --list-packets 2>/dev/null | grep keyid
:pubkey enc packet: version 3, algo 1, keyid B3D9F87D907DC8B1

Ooops! My password store is supposed to be encrypted to BOTH my active and backup encryption keys, but gopass only encrypted it to the active key (just as in https://github.com/gopasspw/gopass/issues/909#issuecomment-412451829, except that it is not the last sub-key, but, rather, I guess, the newest one? that’s what gpg would do if not given a specific subkey when encrypting).
So, I’ve just got a password encrypted to a set of keys different from what pass would do, and, even worse, just lost a backup encryption of my password.
I am not sure how this is possible: if gopass would simply encrypt to the list of recipients specified in .gpg-id (as pass does) everything would be fine. It seems to somehow resolve the subkeys to their “root” certifying keys, and the encrypting to the certifying keys instead of the subkeys specified.

At this point I realised that my gopass is outdated (v1.10.1), so I am not even sure how relevant to the current version what I just wrote is, but, I hope, not much has changed since and my explanation will still be useful.

Yes, thank you for the detailed walk-through. We haven't worked significantly on subkeys, recipients and gpg since 1.10.1.
It seems we have multiple problems, here, indeed. That's not going to be fixed overnight, I'm afraid! We'll dig into it and hopefully correct this for v1.13.0

We've removed some of the unnecessary indirection when handling recipients. It would be nice if someone could verify if the latest commits still suffer from this issue. It have long been fixed already.

I ran into this problem when I figured out after rotating my keys gopass has now encrypted all (new/after fsck) passwords for a public key I don't have the private key for (on my laptop).
I'm lucky I found this issue, and will share my investigations so far (& I'm happy to support further)
1. problem: Missing choice of encryption key
I have a main key with some subkeys (showing only the relevant ones here), for only some of them I have the private key (others are for other devices):
$ gpg -K --keyid-format 0xlong
/home/manu/.gnupg/pubring.kbx
-----------------------------
sec#  ed25519/0xFFD59E5D2343CE94 2023-02-19 [SC] [expires: 2025-02-18]
      AD23C5B72147C2XXXXXXXXXXXXXXXXXXXXXXXXXX
uid                   [ultimate] Manu [tennox] (Main<EMAIL_ADDRESS>ssb#  cv25519/0x2387EB8XXXXXXXXX 2023-02-19 [E] [expires: 2023-11-16]
ssb   cv25519/0x37F4E8B8XXXXXXXX 2023-02-19 [E] [expires: 2024-02-19]

(the ssb# means there is no secret key)
gopass setup offers no choice and thus the secrets will be encrypted for just the first available one:
$ echo "e9duifwerf" | pass insert test
$ cat .password-store/test.gpg | gpg --list-packets 2>/dev/null | grep keyid
:pubkey enc packet: version 3, algo 18, keyid 2387EB8XXXXXXXXX

=> decryption fails
$ pass show test
gpg: public key decryption failed: Bad secret key
gpg: decryption failed: Bad secret key
❌ Decryption failed: exit status 2

potential solution
I sadly could not find any config in gpg to use a specific encryption subkey by default. (there's an open stackexchange question)
Okay, now I figured out how to tell gpg to use the right key with the help of another StackExchange post and ChatGPT :yum:.
It will use the correct one if I specify the exact subkey with an exclamation mark:
echo test | gpg --encrypt -r 37F4E8B8XXXXXXXX! | gpg --list-packets
gpg: encrypted with cv25519 key, ID 37F4E8B8XXXXXXXX, created 2023-02-19

but not when gopass calls it with the primary key as recipient - wrong one:
echo test | gpg --encrypt -r FFD59E5D2343CE94 | gpg --list-packets
gpg: encrypted with cv25519 key, ID 2387EB8XXXXXXXXX, created 2023-02-19

So if I could just choose a subkey for gopass, that would be a great step!
I dug into your implementation, and found you parse the colons format, so I thought I post my output, in case you need it:

```
sec:u:255:22:FFD59XXXXXXXXXXXX:1676822339:1739895633::u:::scESCA:::#::ed25519:::0:
fpr:::::::::AD23C5B72XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:
grp:::::::::356B6E590XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:
uid:u::::1676823633::EAAA0AC818xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx::Manu [tennox] ::::::::::0:
ssb:u:255:22:2F004F9849B91FB0:1676847492:1700175492:::::s:::#::ed25519::
fpr:::::::::612A8E94XXXXXXXXXXXXXXXXXXXXXXXXXXXXXFB0:
grp:::::::::799A570DXXXXXXXXXXXXXXXXXXXXX2D6B817F21A:
ssb:u:255:18:2387EB8xxxxxxxxE:1676847664:1700175664:::::e:::#::cv25519::
fpr:::::::::1431694EF2E8E9XXXXXXXXXXXXXXXXXXXXX178FE:
grp:::::::::EE6BEDA2C06FXXXXXXXXXXXXXXXXXXXXXXX49ACE:
ssb:u:255:22:B13E450XXXXXXXXD:1676853009:1700181009:::::a:::#::ed25519::
fpr:::::::::54CB5739XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2D:
grp:::::::::634A7255XXXXXXXXXXXXXXXXXXXXXXXXB6A9F2BC:
ssb:u:255:18:37F4E8BXXXXXXXXX:1676822339:1708358339:::::e:::+::cv25519::
fpr:::::::::08E33517FEXXXXXXXXXXXXXXXXXXXXXXXXXXX2FE:
grp:::::::::227E1C7C0DXXXXXXXXXXXXXXXXXXXXXXXXXA4752:
ssb:u:255:22:6B7259XXXXXXXXXX:1676823245:1708359245:::::s:::+::ed25519::
fpr:::::::::E1CDC957xxxxxxxxxxxxxxxxxxxxxxxxxxB809E0:
grp:::::::::E1D20D77XXXXXXXXXXXXXXXXXXXXXXXXXXXXA36C:
```

I just found a workaround - adding the subkey id with an exclamation mark to .gpg-id :nerd_face: :
37F4E8B8XXXXXXXX!

gopass will then add the primary key in ensureOurKeyID, but at least I can decrypt my passwords again :yum:
Let's see if that breaks the android app or other stuff :sweat_smile:


Update validators.fr.xlf

fix some french translations

Hi @clad20 and thanks for your contribution.
As a bugfix, could you please remake your PR on 1.x branch of this project?
Thanks.

I made it on #60.


[Monitor Query] Rename MetricsClient param

This renames the resource_uris argument to resource_ids since this is the the preferred term that is used both in the Azure Portal and the metrics dataplane API.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-monitor-query


PULL_REQUEST_TEMPLATE: Ask for docs

Motivation for this change
Based on a discussion in the #nixos IRC channel, we want to put a higher emphasis on docs.
This PR puts Added/updated the necessary docs as the first step into the Things done list.
We want to make clear to contributors that we care about docs.
A later PR should link to specific instructions (probably in CONTRIBUTING.md) that ease beginners into contributing docs to remove any possible barriers.

What should be done before opening a PR is in the contributing guidelines (which refer mostly to the Nixpkgs manual). The PR template contains information additional information that can't be seen in the content of the PR. Because whether docs are present or not can easily be seen, I don't think this should be included in the template. Instead, it should go in the contributing guidelines (and thus possibly Nixpkgs manual).

I agree, but having a final-moment-checkbox will be good I think. I've seen people worried they can't tick the macos box b/c they don't have it -- they see the tickmarks as obligations. I'll merge this today if nobody replies.

I agree, but having a final-moment-checkbox will be good I think.

Yes, it can be useful but we cannot have check-boxes for everything. As soon as you start with this, more will follow. See also https://github.com/NixOS/nixpkgs/pull/27522#issuecomment-316975389.

I've seen people worried they can't tick the macos box b/c they don't have it -- they see the tickmarks as obligations.

Then we should clarify that. But that's irrelevant to this PR.

Then we should clarify that.

I've pushed https://github.com/NixOS/nixpkgs/commit/138eba0bff16d31e62debeb67a4c90e64d28530a to clarify what the check-boxes are for.

On second thought I think it can be relevant if stated somewhat differently. Looking at a diff one cannot tell if there is any existing documentation that need to be updated. Therefore, asking whether they

[ ] Assured whether relevant documentation is up to date.

is useful from a reviewer point of view.
Furthermore, I think a mention about documentation should be made in the manual. There is nothing about documentation in https://nixos.org/nixpkgs/manual/#chap-submitting-changes.

You're not.
I believe you're right that emphasis on amending and writing proper documentation should be added to the submitting changes manual.
That is, anything requiring release notes to add release notes; anything else affecting the truthfulness of existing documentation.
Though, it shouldn't block updating and merging this PR.
Do we think the re-phrased checkbox is fine? The clarification from 138eba0 has meanwhile been removed anew; but the way @FRidh phrased the box makes it checkable even when there's nothing to write.
👍 to either move this forward or close this PR if deemed irrelevant.

[ ] Assured whether relevant documentation is up to date.

I like this wording. I've updated the PR accordingly.


bug with different remotes

Given a git media env like this, it keeps using the main endpoint when pushing to my dev remote:
Endpoint=https://github.com/technoweenie/git-media-test.git/info/media
Endpoint (dev)=http://localhost:3003/technoweenie/git-media-test

This is old and fixed.


[Bug]: Failed to parse document

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Branch name
main
Commit ID
dd7559a0096b63a9d3ffa72611d05b3538ca058a
Other environment information
No response
Actual behavior
unable to parse document. Progress remains at 0%. When checking the logs, the following error is displayed:
[WARNING] [2024-04-17 17:33:21,543] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c3f6e10>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:24,745] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c3f78d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:26,762] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c42c590>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:27,163] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c47ce50>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:27,964] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x793020249450>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:29,566] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c40b0d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:32,768] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c409b10>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:34,784] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c294650>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:35,186] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0f2896d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:35,987] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c47d390>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:37,590] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c40aed0>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
[WARNING] [2024-04-17 17:33:40,791] [connectionpool.urlopen] [line:874]: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x792f0c409990>: Failed to establish a new connection: [Errno 111] Connection refused')': /40b2b998fc7d11eebfbc0242ac190006?location=
Expected behavior
No response
Steps to reproduce
1. upload the document.
2. click on parse.

Additional information
No response

It's a WARNING log of minio. It may meet the limitaion of its throughput. Just ignore them.

It has been processing for 24 hours.

i have same question too;

it can't to parse the docx

same crazy problem:

same issue for me, I opened a new issue as this one seems to be abandoned https://github.com/infiniflow/ragflow/issues/547

Upgrade to the latest dev version of the docker image. Problem solved.