Fallback support for spot instance

I have issues
Am trying to use spot instance but some-times instances doesn't startup because that spot instance not available in the region. Is there any option is available for fallback to on-demand instances when spot instance is not available?
Tried Solution
Used mixed type spot instances
I'm submitting a...
[ * ] bug report
[ * ] feature request
What is the current behavior?
When the spot instance is not available in the region it doesn't fallback to on-demand instance
If this is a bug, how to reproduce? Please include a code sample if relevant.
It's kind a tricky, create spot instance with single instance type and then in aws will fill to launch the instance due to instance capacity
What's the expected behavior?
When spot instance is not available in the region it will be switched to on-demand instance
Are you able to fix this problem and submit a PR? Link here if you have already.
No
Environment details

Affected module version: v12.2.0
OS: Amazon AMI
Terraform version: 0.12.24

You should use a selection of instance types to ensure the requests are always fulfilled. And you choose instances from here with low rate of termination: https://aws.amazon.com/ec2/spot/instance-advisor/
Apart from that, I don't really know of a way to say "use spot instances but fall back to on-demand", I think this functionality would probably have to be in the cluster-autoscaler but not sure.

Also, FYI this issue has nothing to do with this module 🙂

@janavenkat, it is possible to set up a fall back to on-demand instances, but it's down to the configuration of the cluster autoscaler, which is definitely out of scope for this module. You need to set up a custom "expander" configuration, to start with. Then you usually want some other stuff to support it, like the AWS Node Termination Handler and the K8S Spot Rescheduler.
At least, that's what I've been able to figure out so far, myself; it's a fairly involved process and I've not personally finished trying it out.
In any case, yes, it's possible, but no, it's not really in scope for this Terraform module.

@janavenkat, it is possible to set up a fall back to on-demand instances, but it's down to the configuration of the cluster autoscaler, which is definitely out of scope for this module. You need to set up a custom "expander" configuration, to start with. Then you usually want some other stuff to support it, like the AWS Node Termination Handler and the K8S Spot Rescheduler.
At least, that's what I've been able to figure out so far, myself; it's a fairly involved process and I've not personally finished trying it out.
In any case, yes, it's possible, but no, it's not really in scope for this Terraform module.

Yeah true indeed thanks for the information am using expander config in autoscaler with Node termination Handler. Thanks a lot for the explanation


AWS Terraform: Separate testnet and mainnet configurations

Description
Create a mainnet folder within the AWS terraform scripts so we can cleanly separate "golden" terraform scripts from anything experimental on testnet. This is largely copying/pasting the testnet content and tweaking it to match the mainnet instructions.
Once this PR is merged, I have additional changes to the mainnet scripts I will submit as a separate PR.
Other changes
Tested
I have used the mainnet scripts to run my own infrastructure.
Related issues
Backwards compatibility
This should not impact backwards compatibility.

@tkporter @jcortejoso wanted to ping on this one. Do you think this is a good approach to split these up in this way?

merge?

Oops - I meant to close this PR. Closing.

Trevor and I decided that splitting this wasn't the right approach, where instead we'd rely on branches to define different versions. All of the changes + more have been merged with this PR: https://github.com/celo-org/celo-monorepo/pull/4542


rebase on kube 1.18 beta.2

Do not merge - contains @damemi PR branches

This is now using official master branches and can be merged

/lgtm
/approve


Model POST

Date_created
Date_updated
url
person_id
content
number_of_likes
number_of_shares
number_of_comments
scraped (bool)
PostImageFk

source (profile/group)


[Bug Report] SVD tests fail on GPU

Describe the bug
SVDInterpreter tests fail on GPU.
The first issue is the tensors in the asserts are on different devices. This is easily fixed by sending all tensors to CPU before comparing.
Then we run into second issue:
SVD is not numerically stable so running on CPU gives different vectors than running on GPU. See https://pytorch.org/docs/stable/generated/torch.linalg.svd.html
The "correct" tensors in the test were probably computed on CPU so this fails on GPU.
Proposed Solution
Compare absolute values of singular vectors instead.
e.g.
def test_svd_interpreter():
    svd_interpreter = SVDInterpreter(model)
    ov = svd_interpreter.get_singular_vectors(
        "OV", num_vectors=4, layer_index=0, head_index=0
    )
    w_in = svd_interpreter.get_singular_vectors(
        "w_in", num_vectors=4, layer_index=0, head_index=0
    )
    w_out = svd_interpreter.get_singular_vectors(
        "w_out", num_vectors=4, layer_index=0, head_index=0
    )

    ov = ov.abs()           #
    w_in = w_in.abs()       # ADD THESE LINES
    w_out = w_out.abs()     #

    ov, w_in, w_out = (
        ov.topk(2, dim=0).values,
        w_in.topk(2, dim=0).values,
        w_out.topk(2, dim=0).values,
    )
    assert ov.shape == w_in.shape == w_out.shape == expected_OV_match.shape
    assert torch.allclose(ov.cpu(), expected_OV_match, atol=ATOL)
    assert torch.allclose(w_in.cpu(), expected_w_in_match, atol=ATOL)
    assert torch.allclose(w_out.cpu(), expected_w_out_match, atol=ATOL)

Code example
Details

def test_svd_interpreter():
    svd_interpreter = SVDInterpreter(model)
    ov = svd_interpreter.get_singular_vectors(
        "OV", num_vectors=4, layer_index=0, head_index=0
    )
    w_in = svd_interpreter.get_singular_vectors(
        "w_in", num_vectors=4, layer_index=0, head_index=0
    )
    w_out = svd_interpreter.get_singular_vectors(
        "w_out", num_vectors=4, layer_index=0, head_index=0
    )
    ov, w_in, w_out = (
        ov.topk(2, dim=0).values,
        w_in.topk(2, dim=0).values,
        w_out.topk(2, dim=0).values,
    )
    assert ov.shape == w_in.shape == w_out.shape == expected_OV_match.shape
    assert torch.allclose(ov.cpu(), expected_OV_match, atol=ATOL)
    assert torch.allclose(w_in.cpu(), expected_w_in_match, atol=ATOL)
    assert torch.allclose(w_out.cpu(), expected_w_out_match, atol=ATOL)

make test
>       assert torch.allclose(ov.to('cpu'), expected_OV_match, atol=ATOL)
E       AssertionError: assert False
E        +  where False = <built-in method allclose of type object at 0x7f61ebaf8420>(tensor([[[0.5244, 0.5373, 0.5669, 0.7077]],\n\n        [[0.5041, 0.5366, 0.5623, 0.6371]]], grad_fn=<ToCopyBackward0>), tensor([[[0.6597, 0.8689, 0.5669, 0.7345]],\n\n        [[0.5232, 0.6705, 0.5623, 0.7240]]]), atol=0.0001)
E        +    where <built-in method allclose of type object at 0x7f61ebaf8420> = torch.allclose
E        +    and   tensor([[[0.5244, 0.5373, 0.5669, 0.7077]],\n\n        [[0.5041, 0.5366, 0.5623, 0.6371]]], grad_fn=<ToCopyBackward0>) = <built-in method to of Tensor object at 0x7f620b63ad10>('cpu')
E        +      where <built-in method to of Tensor object at 0x7f620b63ad10> = tensor([[[0.5244, 0.5373, 0.5669, 0.7077]],\n\n        [[0.5041, 0.5366, 0.5623, 0.6371]]], device='cuda:0',\n       grad_fn=<TopkBackward0>).to

System Info
Installed from source on Ubuntu,
NVIDIA 4090, CUDA 10.1, Python 3.8
Checklist

[x] I have checked that there is no similar issue in the repo (required)

Thanks for pointing this out. Will accept fix if you write one or otherwise
solve soon.
On Tue, Jun 20, 2023, 10:21 PM Sviatoslav Chalnev @.***>
wrote:

Describe the bug
SVDInterpreter tests fail on GPU.
The first issue is the tensors in the asserts are on different devices.
This is easily fixed by sending all tensors to CPU before comparing.
Then we run into second issue:
SVD is not numerically stable so running on CPU gives different vectors
than running on GPU. See
https://pytorch.org/docs/stable/generated/torch.linalg.svd.html
The "correct" tensors in the test were probably computed on CPU so this
fails on GPU.
Proposed Solution
Compare absolute values of singular vectors instead.
e.g.
def test_svd_interpreter():
svd_interpreter = SVDInterpreter(model)
ov = svd_interpreter.get_singular_vectors(
"OV", num_vectors=4, layer_index=0, head_index=0
)
w_in = svd_interpreter.get_singular_vectors(
"w_in", num_vectors=4, layer_index=0, head_index=0
)
w_out = svd_interpreter.get_singular_vectors(
"w_out", num_vectors=4, layer_index=0, head_index=0
)
ov = ov.abs()           #
w_in = w_in.abs()       # ADD THESE LINES
w_out = w_out.abs()     #

ov, w_in, w_out = (
    ov.topk(2, dim=0).values,
    w_in.topk(2, dim=0).values,
    w_out.topk(2, dim=0).values,
)
assert ov.shape == w_in.shape == w_out.shape == expected_OV_match.shape
assert torch.allclose(ov.cpu(), expected_OV_match, atol=ATOL)
assert torch.allclose(w_in.cpu(), expected_w_in_match, atol=ATOL)
assert torch.allclose(w_out.cpu(), expected_w_out_match, atol=ATOL)

Code example
Details
def test_svd_interpreter():
svd_interpreter = SVDInterpreter(model)
ov = svd_interpreter.get_singular_vectors(
"OV", num_vectors=4, layer_index=0, head_index=0
)
w_in = svd_interpreter.get_singular_vectors(
"w_in", num_vectors=4, layer_index=0, head_index=0
)
w_out = svd_interpreter.get_singular_vectors(
"w_out", num_vectors=4, layer_index=0, head_index=0
)
ov, w_in, w_out = (
ov.topk(2, dim=0).values,
w_in.topk(2, dim=0).values,
w_out.topk(2, dim=0).values,
)
assert ov.shape == w_in.shape == w_out.shape == expected_OV_match.shape
assert torch.allclose(ov.cpu(), expected_OV_match, atol=ATOL)
assert torch.allclose(w_in.cpu(), expected_w_in_match, atol=ATOL)
assert torch.allclose(w_out.cpu(), expected_w_out_match, atol=ATOL)
make test

  assert torch.allclose(ov.to('cpu'), expected_OV_match, atol=ATOL)

E       AssertionError: assert False
E        +  where False = <built-in method allclose of type object at 0x7f61ebaf8420>(tensor([[[0.5244, 0.5373, 0.5669, 0.7077]],\n\n        [[0.5041, 0.5366, 0.5623, 0.6371]]], grad_fn=), tensor([[[0.6597, 0.8689, 0.5669, 0.7345]],\n\n        [[0.5232, 0.6705, 0.5623, 0.7240]]]), atol=0.0001)
E        +    where <built-in method allclose of type object at 0x7f61ebaf8420> = torch.allclose
E        +    and   tensor([[[0.5244, 0.5373, 0.5669, 0.7077]],\n\n        [[0.5041, 0.5366, 0.5623, 0.6371]]], grad_fn=) = <built-in method to of Tensor object at 0x7f620b63ad10>('cpu')
E        +      where <built-in method to of Tensor object at 0x7f620b63ad10> = tensor([[[0.5244, 0.5373, 0.5669, 0.7077]],\n\n        [[0.5041, 0.5366, 0.5623, 0.6371]]], device='cuda:0',\n       grad_fn=).to
System Info
Installed from source on Ubuntu,
NVIDIA 4090, CUDA 10.1, Python 3.8
Checklist

I have checked that there is no similar issue
https://github.com/neelnanda-io/TransformerLens/issues in the repo (
required)

—
Reply to this email directly, view it on GitHub
https://github.com/neelnanda-io/TransformerLens/issues/328, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AQPMYZ6ARV74ZA4EUZXNRSLXMGIU7ANCNFSM6AAAAAAZNGMNKQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Implement copy_file_range() system call for Linux

copy_file_range() has yet to be implemented.

If you're interested, feel free to submit a patch.  Nix works 99% on user contributions.

How I should handle the flags argument of copy_file_range? The man page says that "the flags argument is provided to allow for future extensions and currently must be to 0".
Here's what I've got at the moment (haven't tested it yet but it compiles):
#[cfg(any(target_os = "linux", target_os = "android"))]
pub fn copy_file_range(fd_in: RawFd, off_in: Option<&mut libc::loff_t>,
          fd_out: RawFd, off_out: Option<&mut libc::loff_t>,
          len: usize) -> Result<usize> {
    let off_in = off_in.map(|offset| offset as *mut _).unwrap_or(ptr::null_mut());
    let off_out = off_out.map(|offset| offset as *mut _).unwrap_or(ptr::null_mut());

    let ret = unsafe {
        libc::syscall(libc::SYS_copy_file_range, fd_in, off_in, fd_out, off_out, len, 0 )
    };
    Errno::result(ret).map(|r| r as usize)
}

There are two choices:

Leave out the flags argument as you did.
Create a CopyFileRangeFlags enum with a single None variant.

I've been struggling with the testing, so I'm wondering if you could lend a hand.
This code (using explicit file names /tmp/test.txt and /tmp/test2.txt for debugging purposes) works:
        let mut reader = File::open("/tmp/test.txt").unwrap();
        let mut writer = OpenOptions::new().read(true).write(true).truncate(true)
                            .open("/tmp/test2.txt").unwrap();

        let res = copy_file_range(reader.as_raw_fd(), None,
                                  writer.as_raw_fd(), None,
                                  2, CopyFileRangeFlags::empty())
                                  .unwrap();
        assert_eq!(2, res);

As seen here:
[arni@arni-pc][~/OpenSource/nix]% cat /tmp/test.txt
hello world
[arni@arni-pc][~/OpenSource/nix]% cat /tmp/test2.txt
he%

But when trying to read the contents of /tmp/test2.txt after the copy, no bytes seem to be returned. I tried various methods.


RFC: API Change: SYS_INIT function signature

Problem Description
The init infrastructure, found in init.h, is currently used by:

SYS_INIT: to call functions before main
DEVICE_*: to initialize devices

They are all sorted according to an initialization level + a priority.
SYS_INIT calls are really orthogonal to devices, however, the required
function signature requires a const struct device *dev as a first
argument. The only reason for that is because the same init machinery is
used by devices, so we have something like:
struct init_entry {
	int (*init)(const struct device *dev);
	/* only set by DEVICE_*, otherwise NULL */
	const struct device *dev;
}

As a result, we end up with such weird/ugly pattern:
static int my_init(const struct device *dev)
{
	/* always NULL! add ARG_UNUSED to avoid compiler warning */
	ARG_UNUSED(dev);
	...
}

This is really a result of poor internals isolation.
Background information on why the change is required
This change adjusts SYS_INIT function so that it takes no arguments. Currently, it takes one argument (a const struct device *) that is always set to NULL by the caller. This means it is not necessary.
Proposed Change (detailed)
See https://github.com/zephyrproject-rtos/zephyr/pull/51217
Brief description of the API change
static int my_init(const struct device *dev)
{
	ARG_UNUSED(dev);
	...
}

SYS_INIT(my_init, LEVEL, PRIO);

will become
static int my_init(void)
{
	...
}

SYS_INIT(my_init, LEVEL, PRIO);

Detailed RFC

Function call changes: SYS_INIT/SYS_INIT_NAMED function signature
Device Tree changes (source and bindings): None
Kconfig option changes: None

Dependencies
None
Impact to users of the API
Users will need to adjust SYS_INIT functions signature. A Python script will be provided to automate such process, allowing for a smooth and quick transition. See the linked PR for more details.

can this be closed now?


SQL Server Can't detect source entity since last update

Hi,
Since the latest update of DBeaver (november 19, 2018) I cannot delete or modify a line after a select.
The error message is :

Error saving changes in database
Reason:
Can't detect source entity

Server : Microsoft SQL Server 2008 R2 - 10.50.1600.1
Client : windows 7 pro x64
My select contains the full name (from db.schema.table) but it doesn't help.
Did the last version changed any option ? I also tried to recreate it but it didn't help.
[EDIT] The reason is that when dbeaver tried to get the metadata it can't. Because of column 'name' being ambiguous. The 'order by' clause used by dbeaver forgets to specify table.column.
I have to run all my select on the database master instead of using the one I am working on for it to not bug.
rXp

Here is the SQL / Meta query made by dbeaver and the error :
SELECT kc.*,t.name as table_name FROM  MyDB.sys.key_constraints kc,MyDB.sys.tables t WHERE kc.parent_object_id=t.object_id AND kc.schema_id=1 AND kc.parent_object_id=422292564 ORDER BY name

[209] Ambiguous column name 'name'.

My query is the following (I changed the table name and some fields name) :
SELECT MyID, SNPN, FKID, AccNote, FK2ID, FK3ID, FK4ID, FK5ID FROM MyDB.dbo.MyTable;
This simple select is created by dbeaver by right clicking on the table and doing "Read data in SQL Console"

I've fixed first issue (ambiguous column ref in metadata queries). Although I can't reproduce the problem - perhaps it depends on SQL Server version. Thanks for the bug report.


feat(JOML): migrate joml to 1.10.0 and 1.0.0-SNAPSHOT for geometry

Depends on https://github.com/MovingBlocks/TeraNUI/pull/39
Module PRs

[ ] https://github.com/Terasology/Apiculture/pull/15
[ ] https://github.com/Terasology/Behaviors/pull/63
[ ] https://github.com/Terasology/CombatSystem/pull/71
[ ] https://github.com/Terasology/Compass/pull/6
[ ] https://github.com/Terasology/DynamicCities/pull/84
[ ] https://github.com/Terasology/FlexiblePathfinding/pull/17
[ ] https://github.com/Terasology/Fluid/pull/30
[ ] https://github.com/Terasology/InGameHelpAPI/pull/9
[ ] https://github.com/Terasology/IRLCorp/pull/34
[ ] https://github.com/Terasology/Journal/pull/14
[ ] https://github.com/Terasology/Minimap/pull/22
[ ] https://github.com/Terasology/ModularComputers/pull/18
[ ] https://github.com/Terasology/Notifications/pull/6
[ ] https://github.com/Terasology/Scenario/pull/53
[ ] https://github.com/Terasology/StructureTemplates/pull/55
[ ] https://github.com/Terasology/Tasks/pull/21
[ ] https://github.com/Terasology/WoodAndStone/pull/70
[ ] https://github.com/Terasology/WorkstationCrafting/pull/23

I did not check this out in an Omega workspace, just did a quick round of review here on Github to unblock further progress. Please re-run CI on modules in the respective order and merge this chunk of changes when CI gives green light 🤓

I did not check this out in an Omega workspace, just did a quick round of review here on Github to unblock further progress. Please re-run CI on modules in the respective order and merge this chunk of changes when CI gives green light 🤓


Go ECMAScript 2049

This is an Enhancement request
In a previous position, I partially based my production code on Create React App (yes, really), and that was hard because of the @Facebook habit of writing and checking in Node.js 6 era code. Poor git cannot coalesce the enormous changes required to turn the code style from 18 months ago into ES.Next.  This allows for zero-configuration independent packages, possibly in a Lerna monolithic repository
App-wide config scripts dependencies are either transpiled by a script launched from a dependency, or uglier pre-transpiled by an npm script command to an executable targeting supported Node.js versions, a transpilation that is checked-in so that users never have to wait for that annoying babel-node launch that is further not production-ready and leads straight to symlinked-mysterious-BabelJS-hell
A runClass module helper for that pesky first class instantiation and async transition
If the app is wrapped in an outermost async function, any and all exceptions can be dispatched to the @Facebook ceo’s office or such

react-scripts and what not can be wrapped into this right away within 2 hours work, with semicolons and all, for that nice gradual migration we are used to with ReactJS

Ok, so you functional programming fans, you don’t have to put classes everywhere.
Point is that self-executing scripts cannot be easily imported and should be made as simple as possible, but not one bit simpler.

And by the way, react-scripts looks great refactored to an async class. I did it twice already.

Since you are so cool and smart - please, make your own tool. I want to use bleeding-edge super 420 swag tool to create my React apps.

This ticket is about making git pull --rebase more likely to succeed unattended for people that decide to have for example react-scripts upstream.
@Rollup has made @Babel BabelJS ES.Next much more easily accessible since the Create React App project started, which may suggest a refactor.
It is about rate of check-ins in the github era: most check-ins wins

Hi, we've discussed this at lengths before and never intend to support language features earlier than stage 3; it has the potential to cause too much segmentation and inability to access newer language features.
In another sense, we're already "ecmascript 2049" because we support every proposal which reaches stage 4, and add stage 3 proposals upon request.
If you want a specific language feature enabled, please file an issue. Thanks!

Node.js 6 is going to be LTS until April 2019. A way would be to drop support for it now and use Node.js 8
Code looks miserable because there is no import or async
@facebook is looking at 18 months of regret
The way to go is to have an transpile-if-outdated script in a dependency and make extensive use of Lerna. Doing it in-module makes it not possible to have files as external and a host of difficult unpleasentries nobody needs. I came up with like 20 variants so far, I dislike every single one
Thank you

Ah, I think you're referring to our code base. Since it is meant for beginners we do not want to increase complexity by requiring compilation. We will always support the LTS version of Node.


Added codecov

Replaces #189.

[Current coverage][cc-pull] is 94.32%

Merging [#191][cc-pull] into [master][cc-base-branch] will increase coverage by 0.07%

@@             master       #191   diff @@
==========================================
  Files            29         29
  Lines          2554       2554
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           2407       2409     +2
+ Misses          147        145     -2
  Partials          0          0

Powered by Codecov. Last updated by [7ea7ddc...83203c1][cc-compare]
[cc-base-branch]: https://codecov.io/gh/scrapinghub/dateparser/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/scrapinghub/dateparser/compare/7ea7ddcc6a252e83b96dc911b13a53e90210a3c6...83203c1c7bb6a68d143deb6b67702b26a810d381
[cc-pull]: https://codecov.io/gh/scrapinghub/dateparser/pull/191?src=pr


Feat: add --kubeconfig arg to the helm chart

Fixes #6098

@wonderflow @chivalryq can you please take a look at this PR. I'll resolve any comments ASAP :). Apologies for the bother.


Update http4s-blaze-client, http4s-circe, ... to 0.21.15

Updates

org.http4s:http4s-blaze-client
org.http4s:http4s-circe
org.http4s:http4s-client
org.http4s:http4s-dsl

from 0.21.1 to 0.21.15.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Applied Migrations

dependency:v0_21@org.http4s:http4s-scalafix:0.21.5

Documentation:

https://github.com/http4s/http4s/releases/tag/v0.21.5

Files still referring to the old version number
The following files still refer to the old version number (0.21.1).
You might want to review and update them manually.
build.sbt

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.http4s" } ]

labels: library-update, semver-patch, scalafix-migrations, old-version-remains

Superseded by #159.

Superseded by #159.


Don't marshall not yet seen attributes, fixes #165.

Signed-off-by: Rene Jochum<EMAIL_ADDRESS>

I think the way to fix this one is to set last_used_at as readonly.

With these fields that might work, but what is it with "auto_update" which isn't readonly and doesn't get delivered by images.linuxcontainers.org ?

Hm, maybe we need to add an optional parameter, and if it's not set and is optional, we can successfully skip it. I'd like to opt in to the optional attributes, rather than just assume everything is optional.


ection present in ICC code

Seen on beta, perhaps as part of an earlier fix: https://godbolt.org/g/yfAuZf
Output is:
square(int):
  push rbp #2.21
  mov rbp, rsp #2.21
  sub rsp, 16 #2.21
  mov DWORD PTR [-16+rbp], edi #2.21
  mov eax, DWORD PTR [-16+rbp] #3.18
  imul eax, DWORD PTR [-16+rbp] #3.18
  leave #3.18
  ret #3.18
ection .text

Possibly related to @cppchedy 's fix for the single-character labels.

Oh, that's super odd. I just reloaded the page and it didn't happen again. I had previously had a windows compiler selected (with the non-functioning GCC dump view open). But I can't repro now. One to keep an eye on.

I don't see how but it's very probable because that's the only thing that changed in asm.js in this commit.
(but hope it's not me)


Updated README to reflect ElasticSearch version

Hi @stephenrichards, the production postgres db version appears to be 9.3.5 so not sure what impact the structure.sql changes that are included in this PR could have on any future migrations. Can discuss tomorrow but may be safest to remove this from this PR in any event


Apply custom styles when writing to Excel workbook

write_excel() currently supports a style bool parameter, which can be set to True to apply a few default, hard-coded font and background colors to table blocks in the output Excel workbook.
Let's expand this, such that style also can accept a detailed style specification. This could be in the form of a JSON-like dict, JSON string, CSS... and/or even a Table (the bootstrapping is appealing).
For example, a rough sketch of a JSON-like dict could be:
style={
    "table_name": {
        "font": {"color": "#12f400", "bold": True},   # hex color code
        "background": (212, 212, 212), ...},  # rgb color code
    "destinations": {...},
    ...}

FYI @vegatheil @catcaf

A few questions:

What are the table_name and destinations keys for in the example style dictionary?
Are you suggesting that the style could be different for the different tables?

The table_name dict would describe what style to apply to the table name row. (Currently, for example, it's a blueish bold font with a certain gray background.) Same idea for destinations, for the destination row. All in all there would be five top-level keys:

table_name
destinations
column_names
column_units
values

I think those five together cover all the parts of a table block.


feat: committer 지정

Issue

close https://github.com/duckie-team/quack-quack-android/issues/353

close https://github.com/duckie-team/quack-quack-android/issues/353


msgpack codec encodes all integers type into int64 rather than picking the right type

What version of Genji are you using?
The main branch.

$ genji version
Genji v0.11.0
Genji CLI (devel)

Does this issue reproduce with the latest release?
Yes
What did you do?
(Preamble, I know that all sql INT* types are just document.IntegerValue under the hood, I'm talking at codec level here).
While reading the msgpack codec, my eye was caught by https://github.com/genjidb/genji/blob/8e580748aedb60ec007df65013936287ec5dcc21/document/encoding/msgpack/codec.go#L100-L111 which says that the int types will be encoded using they msg pack counterpart, ie int8 -> int8, but the code didn't look like it handles those case.
While digging, I found out that:

all integers end up as int64 anyway when reaching the codec
even if fed an int8, EncodeValue will end up using an int64 in msgpack because it uses  case document.IntegerValue: return e.enc.EncodeInt64(v.V.(int64)) under the hood.

➡ It looks to me that the comment is wrong and that the int64 encoding for all ints is actually on purpose as per what the decoder does here: https://github.com/genjidb/genji/blob/main/document/encoding/msgpack/codec.go#L221
❓ @asdine Is that a deliberate choice here? Is it related to how msgpack work somehow? Otherwise it looks like it's a rather low hanging fruit to have more compact integer storage.

package main

import (
	"bytes"
	"context"
	"fmt"
	"os"

	"github.com/genjidb/genji"
	"github.com/genjidb/genji/engine"
	"github.com/genjidb/genji/engine/boltengine"
	mp "github.com/vmihailenco/msgpack/v5"
)

func main() {
	// so we always get the same store id every run, see line 52
	_ = os.Remove("test.db")

	db, err := genji.Open("test.db")
	if err != nil {
		panic(err)
	}

	err = db.Exec("CREATE TABLE foo ( a INTEGER )")
	if err != nil {
		panic(err)
	}

	err = db.Exec("INSERT INTO foo (a) VALUES (?)", 2)
	if err != nil {
		panic(err)
	}

	err = db.Close()
	if err != nil {
		panic(err)
	}

	ng1, err := boltengine.NewEngine("test.db", 0o600, nil)
	if err != nil {
		panic(err)
	}

	etx, err := ng1.Begin(context.Background(), engine.TxOptions{})
	if err != nil {
		panic(err)
	}

	//  func (t *tableInfoStore) Insert(tx *Transaction, tableName string, info *TableInfo) error {
	//		(...)
	//      fmt.Println(info.storeName)
	store, err := etx.GetStore([]byte{116, 1})
	if err != nil {
		panic(err)
	}

	it := store.Iterator(engine.IteratorOptions{})
	it.Seek(nil)

	item := it.Item()

	k := item.Key()

	b, err := store.Get(k)
	if err != nil {
		panic(err)
	}

	fmt.Println(b)

	dec := mp.NewDecoder(bytes.NewReader(b))

	ii, err := dec.DecodeInterface()
	if err != nil {
		panic(err)
	}

        // ➡ ### What did you expect to see? ⬅
	fmt.Printf("%$v\n", ii)
}

What did you expect to see?
[129 161 97 2]
map[%!$(string=a):%!$(int8=2)]v

What did you see instead?
[129 161 97 211 0 0 0 0 0 0 0 2]
map[%!$(string=a):%!$(int64=2)]v

What Go version and environment are you using?

$ go version
go version go1.15.8 darwin/amd64

go env Output
$ go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN="/Users/tech/code/bin"
GOCACHE="/Users/tech/Library/Caches/go-build"
GOENV="/Users/tech/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/tech/code/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/tech/code"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/Users/tech/.asdf/installs/golang/1.15.8/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/Users/tech/.asdf/installs/golang/1.15.8/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/tech/code/src/github.com/genjidb/play/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/xl/dfsx6nzs4cb2y40m555mlfjh0000gn/T/go-build230471881=/tmp/go-build -gno-record-gcc-switches -fno-common"

The comment is outdated yes, Genji used to have multiple integer types, one per integer size, and the comment use to reflect that.
Regarding the integer size, this is definitely a bug and we should use EncodeInt instead of EncodeInt64, good catch!

Great then! Do you want to fix that in the current release, in which case I can open up a PR right away or later on?

Of course, please open one anytime you see fit

See the fix in the PR referenced above!
Since I was there, I also looked at the compact float settings, from which the size aspect would benefit greatly, especially in the use case that involves dumping JSON without a schema into a DB.
It currently breaks the tests because it will turn some doubles into ints when decoding (msgpack assumes you always know into what you're decoding, so it's on us, the caller side to turn those ints back into doubles if that's what we want).
@asdine I assume you made the choice of using double everywhere unless a constraint says that a field is an integer since JSON uses double for everything right?
Because the document.Decoder has no knowledge of the Document it's decoding into, we cannot trivially implement a fix though (decoder could have checked if there was a constraint that tells that something is an int, if not, convert every number as a double).
That's probably too much of a change, for now; I also have no idea how common is that use case. It's just that if we had to break the storage compatibility, better do it once that twice 😆 !

That could be worth investigating yes, as it would be a great win in terms of space. The only thing that worries me about this is:

performance: additional check to see if it should be decoded as an int or double
codec complexity: now the codec must be aware of the constraints

If we can find a solution for 1 at least, that would be a great win!

After investigation, it turns out it is possible to encode a double as integer, using a custorm ext code (https://github.com/genjidb/genji/commit/e4aecc5dc8bee2ae29f6f9111598cc94dc2d1a19) but the overall size of the database doesn't change even with a table with 1M doubles.
Closing this as the original issue has already been fixed!


This package should use a better package name

This package should use a better package name：
Use paths instead of aliases
Usually, we use this package on the path (file address, URL...), use'paths' to better express its function, and the alias is just a function under this package.
Using paths as a package name will facilitate the expansion of related functions in the future, not just aliases.
...
Yiisoft\Aliases\Aliases is ugly, while Yiisoft\Paths\Aliases may be more beautiful.

That's not only about paths. URL could be aliased as well.

It's also a bit too late to change the name since 1.0.0 was tagged...

Changing the name of a package that has already been released does cause some problems, but I think it's not too late before the official release of Yii 3.0. For package names, I think paths are also accurate for URLs. In the Yii project, we use aliases to describe file system paths or URLs. We usually don't abuse aliases for other purposes. Using `paths' or others can limit this function to a suitable scenario.
So, if it can be changed, I think it can be discussed in the community. Maybe keeping the current package and supporting a new paths package is a good choice? But we must first determine whether paths is reasonable and accepted.

There's a part of URL called "path". May be confusing.

There's a part of URL called "path". May be confusing.

i think this is the argument for renaming

No, That's not for renaming. For example, we may define @paymentApi alias with a value of https://example.com/api/payment. That value consists of protocol, domain, path.

URL中有一部分称为“路径”。可能会造成混乱。

From the user's perspective, our usage of the getAlias method is to generate a'path', whether it is a file system path or a URL. The implicit meaning of'path' is a string separated by slashes. For the setAlias method, we usually set the file path prefix or the Schema and Host parts (including part of the Path) in the URL, which implicitly indicates that alias is used to process the path.
This is the reason I thought of. The package name was changed to make Yii 3 more expressive.

Thought about it. The proposal isn't bad per se but has its cons:

Mental collision with URL's path.
The need to change already tagged package.
Possible double meaning, confusion with something that works with file system.

As a result, I think the name should be left as is. Thanks for proposal though, you're very welcome to participate in Yii 3.


mix channel implementation

Hi,
May I ask how do you implement the channel-mixing model for the comparison (figure 7)? In the paper, it mentioned to reshape (B,M,P,N) to (B,MP,N), but it's not very clear what comes next? Did you feed the (B, MP,N) to projection/embedding to produce (B, D, N)? How did you shape it back to (B,M,D,N) after the transformer encoder?
If the code is present in the repository and I overlook, please kindly advise me where to find it. Thank you!

With an output of [B,D,N] from the transformer encoder, how did you reshape it to [B,M,T]? Could you give more details on the implementation after the transformer? Thanks!

Hi @EllaHxyz , yes you are right, we just treat M·P as the feature channel, so there are M·P features now. Then this is directly use to predict the output (B, M, T) via transformer and linear head.

With an output of [B,D,N] from the transformer encoder, how did you reshape it to [B,M,T]? Could you give more details on the implementation after the transformer? Thanks!

Hi, You can flatten the last 2 dimensions and use a linear layer to do it.


cipher_memory_security

Is it possible to add support for SQLCipher PRAGMA cipher_memory_security?

Is it possible to add support for SQLCipher PRAGMA cipher_memory_security?

In principle, that would be possible. And it wouldn't be very hard to implement it. However, at the moment implementing this feature is not planned.
SQLCipher's implementation of that feature has 2 parts:

All memory allocated by SQLite will be "wiped out" with zeros on freeing a memory block
All memory allocated by SQLite will be locked in main memory, so that it will not be written to a system page file

Both actions cause significant performance degradation, so that the feature is turned off by default in SQLCipher.
(1) only prevents that another process can accidentally allocate memory that possibly contains sensitive information. If an intruder has already full access to your system, he/she can scan the main memory where SQLite holds its database cache - always unencrypted.
IMHO only with (2) a notable increase of security could be achieved, but it would be sort of pseudo security, because it can't be guaranteed that really all memory pages are locked.
Could you please describe in more detail under which circumstances you expect increased security by using such a feature?
One way to achieve higher security would be to encrypt the data values themselves, so that they would be encrypted even in memory cache until they are actually retrieved via a query. However, the drawback of this approach is that such data values can't be searched or sorted by SQL means. SQLCipher offers Value Level Encryption in its commercial product. And I consider to implement a similar feature in SQLite3 Multiple Ciphers in a future release.

In the meantime I experimented a bit. As expected implementing a memory handler that clears memory allocations with zeros before freeing them is rather simple.
Calling VirtualLock / VirtualUnlock (resp mlock / munlock) (as is done in the SQLCipher implementation) would be easy, too. However, the usefulness of this approach is really, really questionable. Neither VirtualLock / VirtualUnlock nor mlock / munlock use a reference count of locked memory regions. The granularity of locking is a memory page, that is, if SQLite makes several small memory allocations from a single memory page, the first unlock operation for one of the allocations will unlock the page, even though there are still not yet freed allocations. Additionally, suspending to disk will not be prevented by using memory locks.
I don't want to give users the illusion of security that actually doesn't exist. Therefore I will not implement such memory locking. If you feel clearing memory allocations that are about to be freed, would be a gain in security, please let me know.

I see, thank you for comments

Can this feature be added like this:
 url = "jdbc:sqlite:" + path + "?cipher=sqlcipher" + "?memory_security=1";

Is this the correct way to enable memory_security?
 url = "jdbc:sqlite:" + path + "?cipher=sqlcipher" + "?memory_security=1";

No.

The syntax is wrong; see URI filenames in SQLite for how to specify parameters in a URI filename.
The parameter memory_security can currently be set via pragma command only.

Additionally, the pragma will have no effect, unless the library was compiled with the preprocessor symbol SQLITE3MC_SECURE_MEMORY=1 defined. The feature is disabled by default.

If yes, what should we add to enable USE_RANDOM_FILL_MEMORY?

This is a compile time option only. If you want that memory is filled with random data instead of zero bytes then you'll have to specify the symbol SQLITE3MC_ENABLE_RANDOM_FILL_MEMORY=1 at compile time.
I will close the issue, because the usefulness of this "feature" is questionable anyway and I don't intend to invest time into further development of it, unless strong justification is provided.
If this feature is critical for your application, you may change my mind by making a reasonable donation (see "Sponsor this project" on the main repo page).


Backtracking Problems

I have contributed to this issue.
Please merge my pull request for M-Coloring-Problem in C++.


Add explicit dependency to validatePom and generatePom tasks.

Description
This PR is to add explicit task dependency on PomGenerate and PomValidate tasks for different publication types.
For plugin with different publication, all generatePom tasks such as generatePomFileForNebulaPublication or generatePomFileForPluginZipPublication are creating the Pom file at the same cache location: build/distributions/*******.pom; and Pom validation tasks are reading the output of this Pom.
We will get error like this in job-scheduler plugin:
> Task :generatePomFileForPluginZipPublication FAILED

FAILURE: Build failed with an exception.

* What went wrong:
A problem was found with the configuration of task ':generatePomFileForPluginZipPublication' (type 'GenerateMavenPom').
  - Gradle detected a problem with the following location: '/Users/zelinhao/workplace/job-scheduler/build/distributions/opensearch-job-scheduler-<IP_ADDRESS>-SNAPSHOT.pom'.

    Reason: Task ':validateNebulaPom' uses this output of task ':generatePomFileForPluginZipPublication' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

    Possible solutions:
      1. Declare task ':generatePomFileForPluginZipPublication' as an input of ':validateNebulaPom'.
      2. Declare an explicit dependency on ':generatePomFileForPluginZipPublication' from ':validateNebulaPom' using Task#dependsOn.
      3. Declare an explicit dependency on ':generatePomFileForPluginZipPublication' from ':validateNebulaPom' using Task#mustRunAfter.

    For more information, please refer to https://docs.gradle.org/8.5/userguide/validation_problems.html#implicit_dependency in the Gradle documentation.

Reason
Gradle treats any task that reads a file as implicitly dependent on each task that writes to that file.
In our case, Gradle is assuming each validation task is depending on all the Pom generation tasks as implicit dependency.
In this PR, we are adding these implicit dependencies for generatePomFile and validatePom into its implementation.
We can see same logic is added in few other plugin repos:
In geospatial: validateNebulaPom.dependsOn(generatePomFileForPluginZipPublication)
In skills: tasks.validateNebulaPom.dependsOn ':generatePomFileForPluginZipPublication'
Check List
- [x] New functionality includes testing.
~~  - [x] All tests pass~~
- [x] New functionality has been documented.
~~  - [x] New functionality has javadoc added~~
- [x] Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)

[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)
[x] Public documentation issue/PR created

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Thanks @zelinh , I think it looks good!

@zelinh could you please backport to 2.x manually? thank you

@reta @zelinh I'm not sure yet, but I think this PR is contributing to failures being seen in security plugin's CI: https://github.com/opensearch-project/security/pull/4156
* Where:
Build file '/home/runner/work/security/security/build.gradle' line: 417

* What went wrong:
A problem occurred evaluating root project 'opensearch-security'.
> NamedDomainObjectContainer#configureEach(Action) on Publication container cannot be executed in the current context.

Ah, that is unexpected, thanks a lot for @cwperks !


Release notes for prerelease package

null
AB#43027087

rendered: https://github.com/MicrosoftDocs/edge-developer/blob/bfd64daa6f44cf31fd59cd25dd4b8b69193cec74/microsoft-edge/webview2/release-notes.md

Rendered:
https://review.learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?branch=pr-en-us-2411
GH rendered (manually nav'd, so not commit-specific):
https://github.com/MicrosoftDocs/edge-developer/blob/user/niburman/ReleaseNotes109Prerelease/microsoft-edge/webview2/release-notes.md


Exception has been thrown by the target of an invocation

This project looks awesome and is something I was wanting to do myself a while back but never got around to it. I wanted to try this out but I'm getting an exception when trying to inject:
Failed to inject to target: Exception has been thrown by the target of an invocation.

I get that error when calling Interceptor.Inject();, because using Interceptor.Watchdog.Start(); never actually injects. I'm guessing this has something to do with EasyHook but I'm not sure what it could be.
Any ideas?
Edit: forgot to mention that Remote Play is running beforehand and I used NuGet to pull in the project.

I decided to just clone this project manually and run the demo project you made, and using a breakpoint I managed to find the actual exception:
{"Failed to connect to an IPC Port: The system cannot find the file specified.\r\n "}
I don't know anything about IPC but I'll see if I can find anything based on the error.

@Tustin Hi, thanks for trying out the library!
I'm not familiar with this exception message but it is probably coming from EasyHook as you've guessed. However that specific try/catch block handles a generic Exception type, so to narrow it down it would be best to inspect the InnerException in the exception details.
You can try cloning the project and run PS4RemotePlayInterceptorDemo as it also manually uses Interceptor.Inject() as well. Also a classic troubleshooting for EasyHook is to try run the program as administrator.
Let me know if this helps! Feel free to include any screenshots you think might helped.

Whoops didn't see your second comment there. Thanks again, I'll look into it.

Haha, good timing! Just let me know if you find anything. It's probably just something weird on my PC that's causing it to fail. I'm no stranger to weird stuff like that happening on projects I make 😛. I'll mess with some stuff too to see if I can figure anything out.

@Tustin Actually I did make a change on creating IPC server on v0.3.0+ to support the Watchdog which might be the cause.
I guess you can try Install-Package PS4RemotePlayInterceptor -Version 0.2.1 which uses the default IPC parameters straight from EasyHook's tutorial that are known to work for most people.

@komefai You are a saint! That version works just fine for me. Very weird that the newer one just doesn't work. If you want to look into it, the exception was being thrown from EasyHook here:
https://github.com/komefai/PS4RemotePlayInterceptor/blob/master/PS4RemotePlayInterceptor/Classes/Interceptor.cs#L77
Not a big deal for me because I was just planning on using the manual Inject method anyways.

@Tustin Awesome! Glad that it helped. I might have a variable to switch to the old injection method for incompatible machines if it cannot be fixed from our end.


update label for frisch elasticity

This PR simply changes the label for the box where the Frisch elasticity parameters used in OG-USA is entered.  The new name is more descriptive.

Well, it didn't take long for this duplicate info to cause confusion. Sorry to make this confusing, but I think the best place to update this information is in the JSON file over on OGUSA:
https://github.com/open-source-economics/OG-USA/blob/master/Python/ogusa/parameters_metadata.json
Each time we version ogusa, whoever is doing the release will run a script that will generate a new version of the JSON file over here, check it in to webapp and then update the site. I really, really did not want to have this duplicate info (for obvious reasons) but I just couldn't see any other way around it. Here is the story:
Prior to adding this JSON file (and a couple of other JSON files for ogusa-relevant information), we would get this information by importing the ogusa package and then calling the proper functions on the package to get the metadata we need for various parameters. This is the correct way to do things because it means that the information is only specified in one place. However, recently it became clear that we can no longer reliably deploy to Heroku with the ogusa package. The issue is that Heroku has a maximum size of 300 MB for a deployed site (called a "slug"). This is typically not a problem because most websites don't have significant compiled assets like numpy, scipy and so forth. The ogusa package in particular has dependencies of scipy (which includes numpy) and the matplotlib package. This ends up taking ~150 MB just by itself. I was able to do some tricks to handle certain cases (for example, you can install the package, then actually remove numpy and as long as you don't call anything that uses numpy you are fine), but it turns out that in order to actually get data out of the parameters module in ogusa, we actually need a call in scipy.optimize:
https://github.com/open-source-economics/OG-USA/blob/master/Python/ogusa/elliptical_u_est.py#L163
So, the only way to get the proper parameter values out of ogusa is to have all of the (quite large) components installed. This is not possible with Heroku, so I had no choice but to dump out the relevant info for version 0.5 and then install it from files over on the webapp.
This experience has led me to conclude that we have perhaps "outgrown" Heroku as a service, but the effort required to leave Heroku completely would probably be somewhat significant.
So, short story: please update this info over on OGUSA repo and we will try to keep it up to date with OGUSA - or, open a PR on each repo so that we can stay synced up that way. My goal though, would be for OGUSA contributors to be oblivious to this issue.

So, just to be clear, Heroku is the "platform service" that hosts the site itself. The worker nodes run on AWS and obviously have ogusa installed with whatever is the latest released version.

@talumbau, Thanks for this.  I had no idea, obviously.  I opened the same PR in the OG-USA repo.  I don't know if you want to close this one or just merge both so that they files are in sync across the repos.

The test failure is spurious because the source branch of the PR is not on this repo. This is just an update to a JSON file. merging.


Remove version: Jackett.Jackett version 0.21.2031

404 - release deleted
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Jackett/Jackett/releases/download/v0.21.2031/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 918)


Ability to specify verbosity of optimization and compilation in config file.

As suggested by @markvdw .

@markvdw
some simple things that you can do with the config file:

verbosity as described
jitter level: ack-grep cholesky to find where jitter is added
hmc verbosity
I will add float32/float64 types in another PR.

I vote that verbose=False by default, but with the option to call functions with verbose=True (or False) at run time, for examples Model.sample(verbose=True)

To be clear though as @markvdw points out we are doing these things yet.

First two are fixed in #202.


Create tags

Create the tags needed for the posts :

[x] feature
[x] post-idea
[x] translation-request
[x] fr-translation-request
[x] en-translation-request
[x] translation-fix
[x] fr-translation-fix
[x] en-translation-fix

All tags created, closing issue.


[Extension] Plugin Selector Front End

Design the plugin selector page to adhere to our previous designs and just overall look demure and mindful

@NybyDK this done?

😍


Remove extra space from yaml files

Fix: issues/34447

I think that your suggestion in this PR cannot fix #34447.

@jihoon-seo I ran this website locally using a container, it seems to be working for me. Let me know if there is anything else I can do to make sure.

@dhanraj322

I checkouted this PR in my dev environment (Ubuntu 18.04 desktop amd64),
pulled submodules (git submodule update --init --recursive --depth 1),
and ran the website using a container (make container-serve).

After doing those steps, I checked and confirm that the issue #34447 is reproducible and persists in my local container preview.
(Ubuntu 18.04 desktop amd64, Firefox 101.0.1 (64-bit))

@jihoon-seo Right, I got it now. My bad.


[BugFix] Add ui thread call and some null safety to avoid profile crash

📲 What
When entering the profile with no projects backed it was possible for the layout manager to be assigned outside of the ui thread, so wrapped teh call around the adapter with a runOnUiThread call.
🤔 Why
Users were crashing on this page and in testing this removed the crashes
📋 QA
-Create a new profile/log into one with no backed projects
-go to the profile page
-confirm no crashes
-repeat

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 67.49%. Comparing base (3e12d8d) to head (5dd441a).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##             master    #2087   +/-   ##
=========================================
  Coverage     67.49%   67.49%
  Complexity     2125     2125
=========================================
  Files           363      363
  Lines         22104    22105    +1
  Branches       3104     3104
=========================================
+ Hits          14918    14919    +1
  Misses         5544     5544
  Partials       1642     1642

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


ESPN_2 and SWID Credentials

I'm getting an ESPNAccessDenied error every time. I tried the espn_s2 cookie as both "URL-decoded" and not. Should the SWID include curly braces?
Is it possible that ESPN changed something so that espn_s2 isn't enough? Or am I missing something when it comes to credentials? I'd love to hear from someone that is actively using the API.
Discussed in https://github.com/cwendt94/espn-api/discussions/150

Originally posted by slmroz November 19, 2020
Hi there.
First of all - great to see ESPN API project as ESPN abandoned the idea years ago.
As I can see now - they introduced additional recapcha authentication so now it's impossible to get access to private leagues using the userid and pass.
What's the easiest way to find the SWID and ESPN_S2 values? Is it stored in cookies alter the login? Does it stay the same with next sessions?

Active user here (and answer giver to #150 ) and working fine. Make sure you are using the latest version. You need both ESPN_S2 and SWID. SWID seems to work with or without curly braces, but I go out of my way to include them.
Make sure you are including the arguments in the right order or explicitly call them when initializing the League object.
ex.
league = League(league_id=1245, year=2024, espn_s2='ASCWDWheghjwwqfwjqhgjkjgegkje', swid='{03JFJHW-FWFWF-044G}')
The wiki has great documentation and examples

Log into your espn fantasy football account at https://www.espn.com/fantasy/football/.
Right click anywhere on the screen (Chrome browser only) and click Inspect.
In the window that appears on the right, click Application on the top bar (you may have to click the dropdown arrow next to Elements, Console, Sources...).
On the left, navigate to Storage > Cookies > http://fantasy.espn.com.
Scroll down in the table to the right until you find SWID. Copy & paste the alphanumeric string in the the Value column (without the curly brackets).
It should look something like: 43B70875-0C4B-428L-B608-759A4BB28FA1
Next, keep scrolling until you find espn_s2. Again, copy and paste the alphanumeric string in the Value column. This code will be much longer and won't have curly brackets in it.

I haven't had any issues this year either. Are you on the latest version (v0.36.0)? It may be possible that the league hasn't been activated for the current year, which would give you permission errors.

worked after i decoded by espn_s2(https://meyerweb.com/eric/tools/dencoder/)


⚠ Jenkins Plugins Artifactory has degraded performance

In b4f08ed, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1204 ms

Resolved: Jenkins Plugins Artifactory performance has improved in 2c195e5 after 31 minutes.


Starting a crafting task in the wireless crafting terminal (when in a trinket slot) does not return to the terminal screen

Describe the bug
Starting a crafting task in the wireless crafting terminal (when in a trinket slot) does not return to the terminal screen once queued. The simulation screen however is updated in whether there are available crafting CPUs available (as the task is actually queued)
How to reproduce the bug

Acquire a wireless crafting terminal
Equip it in a trinket slot
Try queuing a craft
Start after the craft has been simulated

Expected behavior
The screen will return to the normal wireless crafting terminal screen once queued
Which minecraft version are you using?
1.18
Originally reported on Applied-Energistics-2 GitHub  AppliedEnergistics/Applied-Energistics-2/#5840

it doesn't return from any submenu when in a trinkets slot


Confirm that _setCherryPyHeaders() sets content length correctly

https://svnweb.cern.ch/trac/CMSDMWM/ticket/717#comment:15
Should add a test for this.

@ticoann , I guess we can close this issue from 2010 :-)

ping


Two ways progress

Hi Teijo,
This is excellent. Great work!
I have a suggestion though. At present, the draw goes in one direction (l-r or r-l). Is it possible to have a draw which works 2 days. What I mean is, in a tournament of 16 players, there are 8 players each on left end and 8 on right end. Both progress towards each other and last 1 from each side clash for the finals.
Thank you.

Thanks! Unfortunately it's not possible at the moment, it's something that has been requested a couple of times before too. I'll close this ticket as it's a duplicate with #57 and it's better to have discussion in one thread.


Create valid JSON for use with Meteor MDG Validated Method (requires object)

Hello,
On my Meteor API I use MDG Validated Method (https://github.com/meteor/validated-method) which normally (if using simple-schema for validation) requires you to send and object as your argument when calling the method.
I can't seem to get the current JSON format in Swift to make the method succeed without getting the error saying the argument must be an object.
Any thoughts?
Thanks!

Can you post a code snippet showing what's not working?

The method is:
export const example = new ValidatedMethod({
  name: 'examples.example',
  validate: new SimpleSchema({
    name: { type: String },
    value: { type: Number },
  }).validator(),
  run({ name, value }) {
    console.log(name, value);
  }
});

and the swift code is:
let params = [
                "name": name,
                "sensorDescription": sensorDescription
            ]
let jsonData: NSData = try NSJSONSerialization.dataWithJSONObject(params, options: [])
                    let paramJSON = NSString(data: jsonData, encoding: NSUTF8StringEncoding)! as String

(I'm the Meteor coder so if you need more Swift code I'll get it from the Swift guy).

Please try passing jsonData as a dictionary rather than an NSString.

All we had to do was change how we called it and used NO serialization at all.
Meteor.call("sensors.insert", params: [params]){ result, error in
                        print(result)
                        print(error)
                    }


🎉🔒 Initial commit for encryption.

Coverage increased (+0.9%) to 99.63% when pulling b3c40ce306b0a4167b94b7558f0520713b8fedba on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.

Coverage increased (+0.9%) to 99.63% when pulling 8117dfc17a8cc6e12ac070c23ae19912201c2ef4 on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.

Coverage increased (+0.9%) to 99.639% when pulling d2ea026d90cc51d2c786abf5ff0c451bcf5c90e0 on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.

Coverage increased (+1.0%) to 99.686% when pulling d2ea026d90cc51d2c786abf5ff0c451bcf5c90e0 on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.

Coverage increased (+1.0%) to 99.686% when pulling d2ea026d90cc51d2c786abf5ff0c451bcf5c90e0 on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.

Coverage increased (+1.0%) to 99.69% when pulling e9e1fa9349069add6fddaec9921631f30d12fd1d on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.

Coverage increased (+1.0%) to 99.69% when pulling 5585a839318e5c09a8f992eac01c8a216fc4b29b on feature/encryption into 2623d8fb9c5382deceb33c8d75c48fdb629c118b on master.


Typo

There should be a space in TrueType fontsthemselves

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

ID: bb966bef-f887-40af-3602-46cdf4bf96ec
Version Independent ID: 39c36be8-9aac-9f6b-04d3-53fbf5acd31f
Content: TrueType overview - Typography
Content Source: typographydocs/truetype/index.md
Product: typography
GitHub Login: @alib-ms
Microsoft Alias: alib

Thank you for the feedback. Fixed!


GEOMESA-781 Fix non-Accumulo general shapefile ingest

Issue was being caused by datastores throwing exceptions when calling getSchema when the schema did not exist, rather than returning null.

This PR looks good to me.

committed as: aa16c4f5829aea0b77ac1f94646fdbf80cea66e6


License file

Hi!
Is the project open source? Could you please add a license file to it?
Thanks

Hi, license added!


Error running devcontainer with container registry kubernetes secret volume mounted

I am experiencing the same bug as mentioned in #119 and #104 but there doesn't seem to be a release that includes those fixes yet, are there any known workarounds for this issue?
Error message:
error: remove docker config: remove /.envbuilder/config.json: device or resource busy
I have tried many different combinations of paths and values for KANIKO_DIR and DOCKER_CONFIG as well and it always seems to try to delete it.  I have also tried setting ENVBUILDER_FORCE_SAFE and setting the secret with DOCKER_CONFIG_BASE64 but I couldn't get that to work either (and I would rather not use an env var for safety).
I have not included many details in this issue because it is the same as the other issues but I am happy to provide more information if needed.
Environment:
Coder: v2.10.2
Envbuilder: 0.2.9, 0.2.8 (both produce this error)
Kubernetes: 1.28.9
It seems like the fix in those other two issues would work and just need to be released, I am trying to avoid having to build a custom version based on main but I can do that if needed to validate.

Hey @wazoo, we're working towards a new release that will include these fixes.
We've also started publishing preview builds here so you don't need to build your own main: https://github.com/coder/envbuilder/pkgs/container/envbuilder-preview


dashboard won't load going from table page back to dashboard (arrow link)

steps to reproduce:

table page url https://team.cartodb.com/u/matallo/tables/cartodb_query_3/map
click on top left arrow, back to dashboard

expected behaviour:

dashboard loads gracefully

actual behaviour:

no console errors
url is https://team.cartodb.com/u/matallo/dashboard/tables
dropdown is "Maps"
dashboard won't load :(

wohoo


Split data_model file

Need to split data_model/src/lib.rs file into separate ones.

Done in this PR


Fix Security Vulnerability with the PR labeler and remove label github actions.

Fix Security Vulnerability with the PR labeler and remove label github actions
As per the b/364700434, there can be a potential risk when using pull_request_target. This change converts the pull_request_target to pull_request event trigger.

Hello @mai93, I reverting this PR changes as it looks like we do need pull_request_target to be able to add labels. Since this action doesn't check out any code from the PR, and  security risk is very limited.


OCPBUGS-42862: oc-mirror fails to find the image-references

Description
This fix addresses the issue when an mirroring using "internal oc-mirror reserved or key words" as an example release-images in the destination or --from paths
Fixes # OCPBUGS-42862
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Use the following cli
bin/oc-mirror --config ocpbugs-42862.yaml file://ocpbugs-42862/release-images --v2

If somehow the client does a m2d and then copies the tar to a directory in the enclave and calls it with a keyword (as an example below - it should also fail)
bin/oc-mirror --config ocpbugs-42862.yaml --from file:///home/lzuccarelli/some-new-directory/release-images docker://localhost:5000/ocpbugs-42862 --dry-run --v2

Expected Outcome
Should fail (in both cases indicated above)
2024/11/28 16:10:34  [INFO]   : 👋 Hello, welcome to oc-mirror
2024/11/28 16:10:34  [INFO]   : ⚙  setting up the environment for you...
2024/11/28 16:10:34  [ERROR]  : the destination contains an internal oc-mirror keyword 'release-images'

And in the second case
2024/11/28 16:15:38  [INFO]   : 👋 Hello, welcome to oc-mirror
2024/11/28 16:15:38  [INFO]   : ⚙  setting up the environment for you...
2024/11/28 16:15:38  [ERROR]  : the path set in --from flag contains an internal oc-mirror keyword 'release-images'

/lgtm

/jira refresh

/cherrypick release-4.18


BuildJet performance

Codecov Report

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

@@           Coverage Diff           @@
##             main       #1   +/-   ##
=======================================
  Coverage        ?   25.83%
=======================================
  Files           ?      311
  Lines           ?    23659
  Branches        ?        0
=======================================
  Hits            ?     6112
  Misses          ?    17547
  Partials        ?        0

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 e220de1...a41308e. Read the comment docs.


Update THANKS.txt

Redundant newlines are removed.

Thanks @borhan-kazimipour Those are not redundant but actually following a particular style such that files can be viewed in editors without the soft/hard wrap functionalities.

Thanks @ilayn
Makes sense.

Close/reopen

this is a change we prefer not to have, so closing. thanks anyway @borhan-kazimipour


[ENH] Datamodel: add label attribute to session

Is there an existing issue for this?

[x] I have searched the existing issues

New feature
In https://github.com/neurobagel/project/issues/119 we discussed that the session object in the data model does not currently have a human readable label. For example a BIDS session might be called ses-01 but we currently cannot represent this information.
The goal is to

[ ] add this label to the data model and
[ ] make sure the CLI parses this information from the BIDSLayout object

Unclear documentation
No response

Duplicate of #79


Adds message to inform user to do odo push for storage changes to tak…

…e effect
What is the purpose of this change? What does it change?

$Subject
Was the change discussed in an issue?
fixes #2195

How to test changes?

Create a storage using odo storage create. Upon successful creation, a message to do odo push should show up.
Delete a storage using odo storage delete. Upon successful deletion, a message to do odo push should show up.

/lgtm

/refresh

/retest


Add Content to Networking Page

Intercom request: Under networking...please add Long Beach Convention & Visitors Bureau
http://bizport.longbeach.gov/grow/networking

Looks like part of #173

Closing, as that page now has content.


(chores) test-infra-hdfs: upgrade hadoop to 2.10.2

I wonder if the image can be hadoop 3.x based as camel-hdfs and camel-hadoop seems to be using 3.x now.

I wonder if the image can be hadoop 3.x based as camel-hdfs and camel-hadoop seems to be using 3.x now.

Hm, I think have to take a look at doing that. I am not sure if it's an easy upgrade of the containers, though. I'll give it a try tomorrow.

I won't be able to look at this during this week, so I created https://issues.apache.org/jira/browse/CAMEL-18747 to keep an eye on it. Hopefully next week ... let's merge this one in the mean time.


ComponentArray can broadcast on GPU now

thanks for getting to this so quickly, @MilkshakeForReal. it would be awesome if you could add a test for mapreduce? :D

I haven't overloaded map or mapreduce in this PR so there's no test for that.

thanks for getting to this so quickly, @MilkshakeForReal. it would be awesome if you could add a test for mapreduce? :D

I added mapreduce since it was relatively easier than map. As for map, I'm not what's the best practice.

Or mapreduce should be define by
Base.mapreduce(f, op, x:: ComponentArray, As::AbstractArrayOrBroadcasted...;
               dims=:, init=nothing) =  mapreduce(f,op,getdata(x), As; dims = dims, init = init)

which is better I don't really know.

For map we have at least two options
function Base.map(f, x::ComponentArray{T, N, <:GPUArrays.AnyGPUArray{T, N}}, xs::AbstractArray...) where {T, N}
    return ComponentArray(map(f, getdata(x), xs...), getaxes(x))
end

Or copy paste everything from https://github.com/JuliaGPU/GPUArrays.jl/blob/master/src/host/broadcast.jl#L78.
Option one always returns a ComponentArray, which is not necessarily desired.
julia> ca = (a=1,b=2)
(a = 1, b = 2)

julia> map((x,y)->x+y, ca,1:2) # return a vector
2-element Vector{Int64}:
 2
 4

Thanks, @MilkshakeForReal, for putting work into this. I will look into this deeper over the weekend, but I have a few thoughts.

Eventually, we want to remove the overall ComponentArrays dependency from Lux (don't read it as Lux won't support it). It means we want ComponentArrays to be self-sufficient, and we should be able to just use it. Can you move these patches (+ the optimizer component arrays patch) into a separate file compat/componentarrays.jl?

For map, I am not sure. Maybe @ChrisRackauckas has thoughts on that?

For mapreduce, what does it mean to mapreduce on a ComponentArray? Is the user wanting to do a mapreduce on the underlying vector? Is the user trying to apply it on the components?

Ended up doing this on the ComponentArrays side. It required a few extra methods for map and mapreduce to avoid method ambiguities and a bunch of other "reduce-like" functions like any, all, etc.

As for the map question, note that these produce different answers, when they probably shouldn't:
julia> map((x,y)->x+y, ca, 1:2) # return a vector
2-element Vector{Int64}:
 2
 4

julia> ca .+ (1:2) # returns a ComponentVector
ComponentVector{Int64}(a = 2, b = 4)

This is because Generators that are used in map go through a different machinery for promoting choosing which axes to use than broadcasting does and those axes determine what kind of output will be returned. I went ahead and made map and friends on GPU ComponentArrays work more similarly to the broadcasting behavior. It's probably worth an overload of Base.promote_shape to make map on regular ComponentArrays work more consistently with everything else.

we want to remove the overall ComponentArrays dependency from Lux

I think that should be after when the GPU testing is available there.

Can you move these patches (+ the optimizer component arrays patch) into a separate file compat/componentarrays.jl?

Yeah sure, but I didn't add any "optimizer component arrays patch". Should I also move existing patches to that file as well?
The current mapreduce treats a ComponentArray more like a flat vector.
julia> ps
ComponentVector{Float32}(a = Float32[1.0, 2.0], b = Float32[3.0, 4.0])

julia> mapreduce(x->mean(x), +, ps)
10.0f0

I think that should be after when the GPU testing is available there.

See https://github.com/jonniedie/ComponentArrays.jl/commit/a3ca7c19f5a8718c3e9be9a2d738ba662fe0f678

awesome, i will just remove repeated things now

This PR only deletes patches for ComponentArrays now.

Let's bump ComponentArrays dependency to the latest minor release

hi all, wondering if this issue could also be looked at here: https://github.com/jonniedie/ComponentArrays.jl/issues/158
thanks. :D

There is no consensus on the functor, so I am closing it. Its purpose will be fulfilled in other PRs.


Return status 500 instead of abort

ink_release_assert is used at over 400 places. Although having core files is helpful for debugging, it kills all connections abruptly  and it's not nice to clients. It'd be nice if we could just return status 500 and save connections/requests that don't face any issues.

Yes I'd use it like that, but some of ink_release_assert are casually used like "I want some hint (coredump) if this check fails".


Publish a legacy report to the MHRA finder

This was left behind during the import when they transitioned to
GOV.UK. Hence, set the publish date to be 2013-07-18.
Do this using a bin script, Specialist Publisher's equivalent to
data migrations.

Thanks to @evilstreak for helping with this!
Potentially a next TODO item is to make this script generic so it takes three arguments and can be used for any document that needs publishing at a specific date. Won't do this right now though as the important thing is to get this one document published.

@evilstreak said a while ago (documented in the story) that created_at on the PublicationLog record for the document would also need to be updated, I think because it shows up on the page somewhere. Is that still necessary?

@jennyd: I tried updating that field on PublicationLog and it couldn't find anything for the document in question. Then, according to mine and @evilstreak's pairing on this, the instructions in the story were wrong as PublicationLog is only for another type of document (I can't immediately remember which one).

PublicationLog is used for Manuals. Change notes for Specialist Documents are saved directly to the Document.

Ah ok :+1:


Rate Limiting

The API documents a really useful method of tracking rate limiting. Are there any plans to incorporate that in the library? It would be nice if the library could track that internally, but I see a bunch of potholes with that method. At the very least, it would be great to expose the values of those headers in the response.

Hi @kevin-induro, thank you for the feedback :) I'd be curious to learn more about your setup and your need for that bit of data -- what are you doing that requires you to handle a large batch of requests?
With that said, there are no plans currently expose the headers through our SDK -- but, I did share your feedback with our product team and they've made note of it. Since the rate limit doesn't change, have you considered for your requests to stay within an acceptable rate by introducing some wait times or doing the work in batches?

Yep, that's the workaround we have today. The API noted that these parameters could change, so I thought it safest to abide by the headers rather than rely on the rate limit mentioned. Also, I actually couldn't find the quantity. The frequency was clearly per sixty seconds, but my guess is a quantity of 60 requests in that time period, but only because that was the number in the example.
It's not that we're hitting the rate limit yet in production, but we can see when it could happen and can force it in development/testing. We have a service providing aggregated quotes for groups of people from various locations. For example, if I'm tracking a hundred people, that can hit the limit.

Very good points @kevin-induro, thank you for taking the time to share that. You are right, the rate limit is not documented and that response header is the most reliable way get that information. Starting on version 1.17.0 (checkout changes here), you'll be able to get headers with every success and error returns from client calls.

We have a service providing aggregated quotes for groups of people from various locations

Very interesting use case! I'm curious to learn more. If you or your team need any more help or guidance to keep the momentum on moving forward with your integration please don't hesitate to reach out!

That sounds great! That's amazing turnaround you have there.
I'll certainly keep reaching out in mind.


[Native Beaker] Font difference with Chrome

The type in seems lighter in the native version

Discovered that the difference is that Electron uses 'Courier New' for its monospace font, while Chrome/Firefox/Safari use 'Courier'.

If we want a uniform look we should decide on a font and include it with Beaker.


Use upstream MLIR implementation in iree.map_nested_foreach_thread_to_workgroups

MLIR's transform dialect has capability to map scf.foreach_thread to GPU blocks. [1] adds regarding op map_nested_foreach_thread_to_gpu_blocks. [2] moves the op into GPU transform dialect.
This PR makes IREE specific transform dialect operation (iree.map_foreach_thread_to_workgroups) to make use of the upstream MLIR implementation.
[1] https://reviews.llvm.org/D134190
[2] https://reviews.llvm.org/D134800

Should we rename iree op? Currently:
iree -> foreach_thread_to_workgroup
mlir -> map_nested_foreach_thread_to_gpu_blocks
For example we could rename it to map_nested_foreach_thread_to_gpu_workgroups?

Should we rename iree op? Currently:
iree -> foreach_thread_to_workgroup
mlir -> map_nested_foreach_thread_to_gpu_blocks

For example we could rename it to map_nested_foreach_thread_to_gpu_workgroups?

iree.map_nested_foreach_thread_to_workgroups  SGTM, note that workgroup is not a GPU-only thing but is reused across all targets by IREE.
Also, please see my comment above and hoist out the lambda into a standalone static func

I have updated the PR. It has single commit because previous commits were outdated, so I deleted them.

Closing stale PR.


Add ruff linter

Considering how fast it is, we should support ruff within makes' python linters.
Relevant links
/lintPython settings
Prospector settings
Issue to add ruff to prospector

https://github.com/prospector-dev/prospector/pull/694 was just merged

I am thinking about stopping support for most builtins. I would rather moving the lintPython logic to universe and handling it from there.


Changed font-style to font-weight for bold

CSS and LESS use the font-weight property to make things bold, while font-style is solely for italics or oblique.

Oh weird, nice catch!


Refresh an entity page is failing

Overview of the issue
When you press F5 on en entity page, you have the following error.
Note: my client and server are not separated

Motivation for or Use Case

Reproduce the error

Generate an VUEJS blueprint app
Log in as admin or user.
Then go on an entity page, then do a refresh

Related issues
This is a regression since #388 has been added

Suggest a Fix

JHipster Version(s)

JHipster configuration
.yo-rc.json

{
  "generator-jhipster": {
    "promptValues": {
      "packageName": "com.mycompany.myapp",
      "nativeLanguage": "fr"
    },
    "jhipsterVersion": "6.1.2",
    "applicationType": "monolith",
    "baseName": "jhipster",
    "packageName": "com.mycompany.myapp",
    "packageFolder": "com/mycompany/myapp",
    "serverPort": "8080",
    "authenticationType": "jwt",
    "cacheProvider": "ehcache",
    "enableHibernateCache": true,
    "websocket": false,
    "databaseType": "sql",
    "devDatabaseType": "mariadb",
    "prodDatabaseType": "mariadb",
    "searchEngine": false,
    "messageBroker": false,
    "serviceDiscoveryType": false,
    "buildTool": "gradle",
    "enableSwaggerCodegen": false,
    "jwtSecretKey": "NDUxMzc0NjEwNDRlMjlkZjI5YjIxN2U3MWM0NzA5OGFjM2E4ZTcwNGI1NDY4MTdmNmQxNDc3YjlmZTRmZDdiZmRkMzkxYjM2ODBmODE0MmI4NzYwMzllMjY2ZGZmMTI2YjgwZTJkY2YzZTg1NGE2YjE0ZTBkZGU1NzFhY2YwYjc=",
    "testFrameworks": [],
    "jhiPrefix": "jhi",
    "entitySuffix": "",
    "dtoSuffix": "DTO",
    "otherModules": [
      {
        "name": "generator-jhipster-vuejs",
        "version": "1.0.0"
      }
    ],
    "enableTranslation": true,
    "clientPackageManager": "npm",
    "nativeLanguage": "fr",
    "languages": ["fr"],
    "blueprint": "generator-jhipster-vuejs",
    "blueprintVersion": "1.0.0"
  },
  "generator-jhipster-vuejs": {
    "jhipsterVersion": "6.0.1",
    "applicationType": "monolith",
    "baseName": "jhipster",
    "clientFramework": "vue",
    "clientTheme": "none",
    "clientThemeVariant": "",
    "useSass": true,
    "clientPackageManager": "npm"
  }
}

Entity configuration(s) entityName.json files generated in the .jhipster directory

Browsers and Operating System

[x] Checking this box is mandatory (this is just to show you read everything)

@ruddell could you help on that?
I don't know if we have a key on the .yo-rc.json file to know if the client and the server are separated or not.
In my app the client and the server are not separated and to fix this I just rollback #388

I could not reproduce, are you sure you have historyApiFallback: true in your webpack.dev.js?  If I remove that line I see your issue, but it works fine when it is present.

I will re-check on my side and close this issue if it's ok.
Thanks for the quick answer @ruddell

The issue is fixed. Tried just now with the latest master branch, Will close it.


reconsider saving widget state to notebook metadata by default

It seems quite rare that restoring widget state makes sense as often as opening a notebook does. In general, it only makes sense if the kernel has not been restarted (i.e. across page refresh, but nothing else). As such, I find it quite frustrating to work with widgets now that they save a bunch of data to my notebook documents that don't make sense for anyone but me (or even me a day later). It's doubly troubling that the state apparently cannot be cleared (#637).
I believe saving widget state to notebook metadata makes sense sometimes, but that seems to be the exception rather than the rule, so I don't think the current default behavior of saving widget state in notebook metadata is desirable.

We are actually not saving the widget state to the notebook metadata. Merely the list of models that are displayed. Model state is retrieved from the backend.
Besides, when saving the notebook, only live widgets are saved, so that it is effectively cleared when saving with a blank kernel.

So to clear widget data from the file, you have to restart the kernel?

Since widgets are now published as display-data messages with a widget mime-type, does that mean that widget view info in the metadata is now redundant?

Right now the widget display happens both through a comm message and through a display_data message. The current notebook ignores the display_data message, while JupyterLab ignores the comm message.

(when we deprecate the current notebook, we'll remove the display comm message)

The information is still saved in the output. As far as I can tell, the widget_state saved in notebook.metadata is 100% redundant with data stored in the output as the widget mime-type, even with notebook 4.x.

gotcha

It may well be that the info currently saved with save_state will grow beyond what's in output, in which case we can safely ignore the redundancy. I just happened to notice in while investigating what was in my notebooks. Do you think it's likely for the two to diverge? Or are they likely to stay in sync? Or are they not actually in sync now, and it's just a coincidence in the notebooks I looked at?

It is very unlikely that we add more info to the notebook metadata. Removing it completely will require us writing code to rebuild this information from the cell metadata which is doable.

@minrk do you have some time for a quick chat?

@SylvainCorlay Yes, give me a sec.


Update SvgDocument.cs

Added XML Header, this is conform according to https://www.w3.org/TR/SVG/struct.html
Added support for removing Byte Order Mark (BOM), this needed in some cases, eg. if the SVG is used as SSI (Server Side Include) in IIS (Internet Information Server).

thanks, looks very good.


Add status information for subscriptions & contract listeners

When add the fetchstatus query param when getting subscriptions and listeners by ID, firefly will return additional status information, if it is available.
Contract listeners:
FF environments connected to evm connectors will return listener checkpoint formation under the status key.
Example query: http://localhost:5000/api/v1/namespaces/default/contracts/listeners/92e3bc0c-3c3f-455b-81d3-4124a0270b1d?fetchstatus
Response:
{
    "id": "92e3bc0c-3c3f-455b-81d3-4124a0270b1d",
    "interface": {
        "id": "30775d45-61af-4f76-9d35-69b5d8ffbf42"
    },
    "namespace": "default",
    "name": "0182f410-a686-79ed-23a5-ac8c62acbf51",
    "backendId": "0182f410-a686-79ed-23a5-ac8c62acbf51",
    "location": {
        "address": "0x62d365e68fc55845ba904acef688feba7a598c9c"
    },
    "created": "2022-08-31T13:21:48.1687995Z",
    "event": {
        "name": "Changed",
        "description": "",
        "params": [
            {
                "name": "from",
                "schema": {
                    "type": "string",
                    "details": {
                        "type": "address",
                        "internalType": "address",
                        "indexed": true
                    }
                }
            },
            {
                "name": "value",
                "schema": {
                    "type": "integer",
                    "details": {
                        "type": "uint256",
                        "internalType": "uint256"
                    }
                }
            }
        ]
    },
    "signature": "Changed(address,uint256)",
    "topic": "bsc",
    "options": {
        "firstEvent": "oldest"
    },
    "status": {
        "checkpoint": {
            "block": 0,
            "transactionIndex": -1,
            "logIndex": -1
        }
    }
}

Subscriptions
Subscriptions will provide offset information if available
Example Query: http://localhost:5000/api/v1/namespaces/default/subscriptions/32cddc74-cc1a-4493-b376-45781e2d8d35?fetchstatus
Response:
{
    "id": "32cddc74-cc1a-4493-b376-45781e2d8d35",
    "namespace": "default",
    "name": "simple-storage",
    "transport": "websockets",
    "filter": {
        "message": {},
        "transaction": {},
        "blockchainevent": {}
    },
    "options": {
        "firstEvent": "-1",
        "withData": false
    },
    "created": "2022-08-31T17:13:04.295134Z",
    "updated": null,
    "status": {
        "currentOffset": 31
    }
}

Codecov Report

Merging #1028 (609f587) into main (e281a17) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:exclamation: Current head 609f587 differs from pull request most recent head d20f34f. Consider uploading reports for the commit d20f34f to get more accurate results

@@           Coverage Diff           @@
##             main    #1028   +/-   ##
=======================================
  Coverage   99.98%   99.98%
=======================================
  Files         302      302
  Lines       19919    19940   +21
=======================================
+ Hits        19917    19938   +21
  Misses          2        2

Impacted Files
Coverage Δ

internal/orchestrator/orchestrator.go
100.00% <ø> (ø)

pkg/core/contract_listener.go
100.00% <ø> (ø)

pkg/core/subscription.go
100.00% <ø> (ø)

...erver/route_get_contract_listener_by_name_or_id.go
100.00% <100.00%> (ø)

internal/apiserver/route_get_subscription_by_id.go
100.00% <100.00%> (ø)

internal/blockchain/ethereum/ethereum.go
100.00% <100.00%> (ø)

internal/blockchain/ethereum/eventstream.go
100.00% <100.00%> (ø)

internal/blockchain/fabric/fabric.go
100.00% <100.00%> (ø)

internal/contracts/manager.go
100.00% <100.00%> (ø)

internal/orchestrator/subscriptions.go
100.00% <100.00%> (ø)

... and 8 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Adjust reviewsIo find review store.

Make ReviewsIo MerchantActions findReview function respect the store value from the config.
Remove now unused class variable.

Codecov Report

Merging #13 into master will decrease coverage by 5.30%.
The diff coverage is 5.55%.

@@             Coverage Diff              @@
##             master      #13      +/-   ##
============================================
- Coverage     93.26%   87.95%   -5.31%
- Complexity       92       96       +4
============================================
  Files            25       26       +1
  Lines           282      299      +17
============================================
  Hits            263      263
- Misses           19       36      +17

Impacted Files
Coverage Δ
Complexity Δ

...equest/Merchant/FindReviewByOrderNumberRequest.php
0.00% <0.00%> (ø)
3.00 <3.00> (?)

src/Providers/ReviewsIo/MerchantActions.php
76.19% <16.66%> (-23.81%)
5.00 <1.00> (+1.00)
:arrow_down:

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 3b8abab...184df7f. Read the comment docs.


add a HashProvider interface and its factories

add Hashtype enum
add factory static method to HashProvider
add UnsupportedHashTypeException to HashProvider
implement the none HashProvider
implement unit tests for NoneProvider

Fix #11
Signed-off-by: Karim Elghamry<EMAIL_ADDRESS>

See my other comments, but it occurs to me you might be porting the literal package structure from Go to Java which could lead to some naming redundancy. Thinking forward with the pattern you've got here, you're going to have directories for each HashProvider type that only have one file in them. If it were Go, you'd at least have two -- the implementation and the test file. But your tests live elsewhere anyway and will all be in the test.java.com.alvarium.hash package, so I think you should consider collapsing these packages into just com.alvarium.hash unless you have an implementation with a set of responsibilities that it makes sense to logically group.


Docker on Elastic Beanstalk Not Connecting

Hi,
I've been searching a ton for a solution to this problem, but no luck tracking down my issue.
I'm using Java and Spring Boot inside a docker container on elastic beanstalk. I added the code to expose the ports for xray.
EXPOSE 2000/tcp
EXPOSE 2000/udp
I added my ebextensions config file with this:
Files:
"/opt/elasticbeanstalk/tasks/taillogs.d/xray-daemon.conf":     mode: "000644"     owner: root     group: root     content: |       /var/log/xray/xray.log   "/etc/amazon/xray/cfg.yaml":     mode: "000644"     owner: root     group: root     content: |       Logging:         LogLevel: "debug"       Version: 2   "/etc/awslogs/config/xray.conf":     mode: "000755"     owner: root     group: root     content: |       [xray-log]       log_group_name=/aws/elasticbeanstalk/llitd/docker-xray       log_stream_name={instance_id}       file=/var/log/xray/*.log       file_fingerprint_lines=2-5
container_commands:
01_stop_tracing:     command: yum remove -y xray     ignoreErrors: true   02_copy_tracing:     command: curl https://s3.us-east-2.amazonaws.com/aws-xray-assets.us-east-2/xray-daemon/aws-xray-daemon-3.x.rpm -o /home/ec2-user/xray.rpm   03_start_tracing:     command: yum install -y /home/ec2-user/xray.rpm
and in my dockerrun.aws file i have opened this port:
{
  "ContainerPort": "2000",
  "HostPort": "2000"
}

In the log file for my xray stream I see:
[Info] Initializing AWS X-Ray daemon 3.2.0
[Debug] Listening on UDP <IP_ADDRESS>:2000
  [Info] Using buffer memory limit of 38 MB
[Info] 608 segment buffers allocated
  [Debug] Using proxy address:
  [Debug] Fetch region us-east-1 from ec2 metadata
  [Info] Using region: us-east-1
  [Debug] ARN of the AWS resource running the daemon:
   [Debug] Using ip-172-31-41-65.ec2.internal hostname for telemetry records
   [Debug] Using i-0b2a13c006e33014f Instance Id for Telemetry records
   [Debug] Using Endpoint: https://xray.us-east-1.amazonaws.com
 [Debug] Telemetry initiated
  [Info] HTTP Proxy server using X-Ray Endpoint : https://xray.us-east-1.amazonaws.com
  [Debug] Using Endpoint: https://xray.us-east-1.amazonaws.com
  [Debug] Batch size: 50
   [Info] Starting proxy http server on <IP_ADDRESS>:2000
  [Debug] Skipped telemetry data as no segments found
  [Debug] Skipped telemetry data as no segments found
And it just keeps with skipping telemetry at the end:
In the docker log file I see tons of UDP Emitters running.
DEBUG c.a.x.e.UDPEmitter { "name" : "writeBehind", "id" : "0ab3649415ffbd7d", "start_time" : 1.600271771496E9, "trace_id" : "1-5f62359b-31d6ea0f342328bac438f7b8", "end_time" : 1.600271771497E9, "aws" : { "xray" : { "sdk_version" : "2.7.1", "sdk" : "X-Ray for Java" } }, "metadata" : { "ClassInfo" : { "Class" : "StoryCardCacheService" } }, "service" : { "runtime" : "OpenJDK 64-Bit Server VM", "runtime_version" : "14.0.2" }
  | 2020-09-16T11:56:11.717-04:00 | }

DEBUG c.a.x.e.UDPEmitter Sending UDP packet.
And earlier when it first loaded it was:
DEBUG c.a.x.c.DaemonConfiguration TCPAddress is set to <IP_ADDRESS>:2000.
DEBUG c.a.x.c.DaemonConfiguration UDPAddress is set to <IP_ADDRESS>:2000.
So I know that the docker container via Spring AOP is sending to <IP_ADDRESS>:2000 and I know that the docker daemon is running on elastic beanstalk and listening UDP on the same address, but for some reason they aren't actually talking to each other. I'm sure I'm missing something really simple I'm just out of ideas about what to try to get this working.

Hi alarinel,
What platform of beanstalk are you using?
The daemon should already be available if you opt in:
https://docs.aws.amazon.com/xray/latest/devguide/xray-daemon-beanstalk.html

Yep @awssandra I used that code but added modifications to get it working (in the downloading and running section since I'm using docker) by adding in the version: 2 line and then I added my own logs so I could see them in Cloudwatch.

I am not too familiar with Beanstalk configs myself, but I've reached out to the Beanstalk team to take a look. Will update when I have a better idea.
Sorry for the issues!

Hi alarinel,
Can you provide more information about your docker environment, such as the platform branch and platform version(for example, AL2 Single container docker v3.1.2)?
Furthermore, are the ports you listed above the only ports defined in the dockerrun.aws file? If not, could you provide the full list of ports?
Thanks.

hi @LZY7977
Docker running on 64bit Amazon Linux/2.15.4 - Single Container
The dockerfile is built originally with ubuntu with some customizations but single container for Spring Boot Java entrypoint
In the docker file and dockerrun I have:
8080
3000
3306
6379
2000
All open with host and container port.
I hope that answers all of the questions. I don't know how to find the platform branch or version

Hi @alarinel
You can specify multiple container ports, but Elastic Beanstalk uses only the first one to connect your container to the host's reverse proxy and route requests from the public internet.
Please refer the "Ports" section from this doc(https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/single-container-docker-configuration.html).

@alarinel you can also check out our ECS sample app for an example of an app instrumented with X-Ray and running in a EB multi-container Docker environment: https://github.com/aws-samples/eb-java-scorekeep/tree/xray-ecs


Mutation HOC does not change "result.loading" value (React)

Describe the bug
I use generated HOC, call it from handler like this.props.systemLogin.mutate()
But during HTTP Request lifecycle i get "loading" value as false
To Reproduce
Steps to reproduce the behavior:
Use mutation HOC in React, call it mutate function and check this.props.result.loading value
My codegen.yml config file:
overwrite: true
schema: "http://devadressurl"
documents: "src/graph/**/*.ts"
generates:
  src/typings/graphql.tsx:
    plugins:
      - "typescript"
      - "typescript-operations"
      - "typescript-react-apollo"

Expected behavior
result.loading value should change to true, right after http request fired
Environment:

OS: Mac OS Catalina
@graphql-codegen/...: 1.8.3
NodeJS: 10.16.0

Additional context
Using recompose

Solved. Provide ignore rule to HOC options:
options: {       ignoreResults: false,     },
https://github.com/apollographql/react-apollo/issues/3250#issuecomment-513332214

@Infonautica Thank you for opening the issue but what we do in react-apollo plugins is to add generated types in to HOCs' generics. So we don't do anything about the functionality :)


Manage own version

The version is currently hardcoded. It would be nice to pull that from apodidae's git repo instead.
The idea was to write the contents of a very simple Version.swift file from within the Package.swift, so that it would be run on standard swift build invocations. Not sure if that's the greatest of ideas though. Making it a bit easier at least would be to write the file from a bash script and just shell out to that from Package.swift.

Worked around this for now with scripts/release. Definitely far from ideal, but it works.
As notes for future me: Would be cool to not have to tag the current head before running release. Probably by reading argv and using that to set the tag as the first step. Or maybe even do something like release major/minor/patch? There's gotta be a tool for that out there somewhere. Or you know, write a script for that (in something other than bash...).
On second thought, I'm going to leave this open until the release script works like that.