Impro 1783

Addresses #GitHubissuenum
Description
Testing:

[X] Ran tests and they passed OK
[X] Added new tests for the new feature(s)

CLA

[ ] If a new developer, signed up to CLA

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 11

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  1

Clones added
============
- improver_tests/utilities/test_field_texture.py  27

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 3

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  1

Clones added
============
- improver_tests/utilities/test_field_texture.py  27

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  1

Clones added
============
- improver_tests/utilities/test_field_texture.py  27

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  1

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  1

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  1

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 2

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  3
- improver_tests/utilities/test_field_texture.py  2

Clones added
============
- improver_tests/utilities/test_field_texture.py  2

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 2

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  5
- improver_tests/utilities/test_field_texture.py  2

Clones added
============
- improver_tests/utilities/test_field_texture.py  2

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  5
- improver_tests/utilities/test_field_texture.py  7

See the complete overview on Codacy

Ah one more comment - field_texture is much too specific to live in utilities!  I don't know exactly where it goes so for the moment, could you just move it up a directory to improver (where things like cube_combiner live) please.

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  5
- improver_tests/utilities/test_field_texture.py  7

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 1

Complexity increasing per file
==============================
- improver/utilities/field_texture.py  5
- improver_tests/utilities/test_field_texture.py  9

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver_tests/test_field_texture.py  7
- improver/field_texture.py  5

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver_tests/test_field_texture.py  8
- improver/field_texture.py  5

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver_tests/test_field_texture.py  8
- improver/field_texture.py  5

See the complete overview on Codacy


Pretty schedule display

[x] Make it at all
[x] Make it pretty
[ ] Make public by setting
[ ] Offer HTML/bundle download
[ ] bonus with gold star: serviceWorker
[x] bonus: colors/design modifiable
[x] Link RSS feed

I have moved the remaining points to their own issues: #126, #127, #128


Processor  for deleting fields

As a dpp user, I want to be able to pre-define unnecessary columns for my data, so that after running dpp run xxx  output data does not have those columns
Acceptance Criteria

[x] able to delete column with dpp

Tasks

[x] write spec
[x] write tests
[x] add remove_fields processor to common processors
[x] update README

Analysis
Spec:
run: delete_fields
parameters:
  resources: resource_name
  columns:
    - column_name1
    - column_name2

FIXED


Lenovo Flex 5i opens ubuntu to black screen.

Please paste the output of the following command here: sudo edit-chroot -all

name: xenial
encrypted: no
Entering /mnt/stateful_partition/crouton/chroots/xenial...
crouton: version 1-20210907212903~master:9b281df5
release: xenial
architecture: amd64
xmethod: xorg
targets: touch,kde
host: version 13904.77.0 (Official Build) stable-channel volteer
kernel: Linux localhost 5.4.109-26094-g381754fbb430 #1 SMP PREEMPT Sun Jun 27 22:37:02 PDT 2021 x86_64 x86_64 x86_64 GNU/Linux
freon: yes
Unmounting /mnt/stateful_partition/crouton/chroots/xenial...
Please describe your issue:
I followed the tutorial once doing the xfce but got a black screen with a white cursor on it in the top left when I switched over to Ubuntu and none of the keys or buttons work,
I restarted over in developer mode and this time used KDE but ran into the same issue.
I also tried to uninstall using the evil chroot command but that did not work either.
I used command sudo startkde.
Not sure what else to try so posting here any help would be appreciated.
-Thanks
If known, describe the steps to reproduce the issue:

Forgot to add I ran though the troubleshooting steps and updated the crouton download but still have the same error.

For me KDE is not installing at all, and I get the same black screen with Debian bullseye. Just to be clear— Focal is the latest version of Ubuntu?


Support libsass4

libsass4 support.  Private libsass4 development tree, macOS only for bringup.
Plan:

Add a SassLibSass module
Shouldn't need a C layer for this one, go direct to Swift
Support APIs matching the Embedded/Dart API as far as possible
Expand the Sass types with anything important
Custom Importers will just have to be different to reflect different semantics

Codecov Report

Merging #8 (acddb83) into main (2343687) will decrease coverage by 1.10%.
The diff coverage is 66.10%.

@@            Coverage Diff             @@
##             main       #8      +/-   ##
==========================================
- Coverage   98.81%   97.71%   -1.11%
==========================================
  Files          25       28       +3
  Lines        1694     1753      +59
==========================================
+ Hits         1674     1713      +39
- Misses         20       40      +20

Impacted Files
Coverage Δ

Sources/SassLibSass/LibSass.swift
57.14% <57.14%> (ø)

Sources/SassLibSass/Compiler.swift
83.33% <83.33%> (ø)

Sources/SassLibSass/LibSassConversion.swift
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Make trust boundaries closed

Arc trust boundaries are ambiguous.  For example, in the sample diagram, one arc can be extended to split "background worker process", another can be extended to bisect "database."
Closed boundaries (such as boxes) are more clear, and should be the default shape.

Migrated to new issue in the OWASP area repo : https://github.com/OWASP/threat-dragon-core/issues/5


Implementing the "theme-color" meta tag.

Used by Android >= 5.0 to make the top bar colored.
Reference: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android
Before:

After:

Thanks!

Received notification after I merged for an hour....

Received notification after I merged for an hour....

Me too. GitHub is having problems with notifications. On Twitter: https://twitter.com/githubstatus


Unable to locate DLL file (7ab6e586)

This issue was submitted by the add-in's exception handler.

Exception:
Bovender.Unmanaged.DllNotFoundException: Unable to locate DLL file
   at Bovender.Unmanaged.DllManager.LoadDll(String dllName, String expectedSha1Hash)
   at Bovender.Unmanaged.DllManager.LoadDll(String dllName)
   at XLToolbox.Export.Exporter..ctor()
   at XLToolbox.Export.Exporter..ctor(SingleExportSettings settings)
   at XLToolbox.Export.ViewModels.SingleExportSettingsViewModel..ctor(SingleExportSettings singleExportSettings)
   at XLToolbox.Export.QuickExporter.ExportSelection()
   at XLToolbox.Dispatcher.Execute(Command cmd)

Message: Unable to locate DLL file
Environment

Parameter
Value

Version
7.1.4

OS
Microsoft Windows NT 6.1.7601 Service Pack 1, 64-bit

Excel
2013 SP1 (15.0.4867), 32-bit

CLR
4.0.30319.18444, 32-bit

VSTO runtime
10.0.40820

ClickOnce
True

Bovender
<IP_ADDRESS>

FreeImage
Unable to locate DLL file

Closed by b3f97d7eddb93eb09e615c8b9b45237384cafd5d.


[DRAFT] Try cargo workspace for CI

testing ci

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


[Feature Request] Toggle for 18+ filter (SFW MODE)

Is it possible? I want to introduce my little sister to manga through this app, but I dont wanna stick hentai right there in the search bar as an option that's labelled..
Just a toggle in settings would be awesome.

I'd be willing to give it a shot myself but I'm very new to coding.

so a toggle to hide the r18 in the search menu?

<IP_ADDRESS>


Wrong template variable in some prometheus cluster rules

https://github.com/cloudnative-pg/charts/blob/fd5eff94b986797100155ad4638555cda3fb5823/charts/cluster/prometheus_rules/cluster-offline.yaml#L7
https://github.com/cloudnative-pg/charts/blob/fd5eff94b986797100155ad4638555cda3fb5823/charts/cluster/prometheus_rules/cluster-ha-critical.yaml#L7
https://github.com/cloudnative-pg/charts/blob/fd5eff94b986797100155ad4638555cda3fb5823/charts/cluster/prometheus_rules/cluster-ha-warning.yaml#L7
All of the above reference the cluster name incorrectly by using {{ $labels.job }}, causing them to not expand in the file, which then render as blank values when the alert is thrown.  They will expand correctly if changed to {{ .namespace }}/{{ .cluster }} in accordance with the other prom rules.

That's odd, because the .labels is provided from here:
https://github.com/cloudnative-pg/charts/blob/fd5eff94b986797100155ad4638555cda3fb5823/charts/cluster/templates/prometheus-rule.yaml#L11-L29

I think the problem is just with the CNPGClusterOffline query:
The count() aggregation here doesn't return any of the labels from the underlying cnpg_collector_up metric. Which is why there are no labels at the end in the alert description. The rest of the alerts are fine.


Update sbt-decent-scala to 0.7.0+74-5009e62d

Updates com.github.sideeffffect:sbt-decent-scala from 0.7.0+59-378a8581 to 0.7.0+74-5009e62d.
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!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.github.sideeffffect", artifactId = "sbt-decent-scala" } ]

labels: sbt-plugin-update, early-semver-build-metadata, semver-spec-build-metadata, commit-count:1

Superseded by #25.


Question on multivariate extension

Thank you for the great work! I wonder if there are multivariate extensions of this work that the authors are aware of. Specifically, I am interested in the continuous case and in Table 1 of the paper, $y\sim \mathcal{N}(\mu, \sigma)$ is for a scalar output. Do you know if there are extensions of the framework where $y \sim \mathcal{N}(\boldsymbol{\mu}, \Sigma)$? Thank you very much in advance!

Happy that you liked the work :) While having discussed the multivariate case multiple times with interested people, I am not aware of any published work on the multivariate case yet. It would simply correspond to use the normal(-inverse)-Wishart distribution as conjugate prior to derive (1) the expected likelihood, and (2) the entropy of the conjugate prior. Unfortunately, I did not derive these terms so far but I am happy to share it when I find time to make these cool derivations.
In the (unlikely) case, where your use-case would work with with a multivariate distribution with independent components, then you can use the formula in the paper (as we do with the depth estimation experiments) ;)

Thank you for your quick response!


fix ~ update onig/onig_sys dependency (fixes windows compilation bug)

This PR now includes the workaround within the AppVeyor CI config to fix "gnu" ABI test builds (#1318;
a workaround for rust-lang/rust#47048 / rust-lang/rust#53454), so that CI testing works.


Way to do "fetchMore"/"pagination"/"infinite scroll"?

Thanks for the great library!
What is the way to handle fetchMore? I see the query function returned from useQuery hook .but it doesn't seem to take any parameters.

useQuery it's a simple hook, it will do the fetch on every action object change, so:
pagination
const createFetchNewsAction = (page) => ({
    endpoint: `/news?page=${page}`,
    method: 'GET',
})

const [page, setPage] = useState(1);
const action = useMemo(() => createNewsAction(page), [page])
const { payload, loading } = useQuery(action);

return <NewsList data={payload} loading={loading} onSetPage={setPage}/>

fetchMore and infiniteScroll are the same (just trigger is different)
const createFetchNewsAction = (page) => ({
    endpoint: `/news?page=${page}`,
    method: 'GET',
})

const [page, setPage] = useState(1);
const [data, setData] = useState([]);
const action = useMemo(() => createNewsAction(page), [page])
const { payload, loading } = useQuery(action);

const onFetchMore = () => {
    setPage(page + 1);
}

useEffect(() => {
    if(payload) {
         setData([...data, ...payload])
     }
}, [payload])

return <NewsList data={data} loading={loading} onFetchMore={onFetchMore}/>

@marcin-piela This is intuitive and straightforward. I got it working in my case. Thanks!


Open dvc.yaml automatically after adding a pipeline

Part of #3058
https://user-images.githubusercontent.com/3683420/217349036-409a6bb6-e4e7-4932-b0e2-77728aea7afd.mov

Still need to figure out a way to test this. I keep hitting walls with whatever strategy I try. jest.requireActual('vscode') gives the following error Cannot find module 'vscode' from 'src/fileSystem/index.test.ts'


New serializer API

with TripleSerializer and QuadSerializer traits,
and TripleStringifier and QuadStringifier specializations.
This is meant to replace the "duck-typing" style Config objects.
In the process, removed some duplicate code btw nt and nq serializers.

Superceded by 9a97dae


[Bug] _windows_resizer_not_working

About Bug
when using the configuration
nmap <Control-w> <window_resizer>

the application wont start and i have a logfile
========== System Infomation ==========
[Windows]
      Edition: Windows 10 Pro
      Version: 22H2
Build Numbers: 10.0.19045
 Architecture: x64

[win-vind]
      Version: <IP_ADDRESS>
=======================================
[Message] Version: huge
[Error] An logic exception occurred: control is not supported. (int __cdecl WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int))

Errors also for
<switch_window> and <select_left_window>  also errors when using version big

Ok i finally found out it means that the keyword "Control" is not supported. Perhaps it should say keyword 'Control' not understood

Use the following keywords for key codes.
https://pit-ray.github.io/win-vind/cheat_sheet/keywords/

Yes, please consider improving the error message - perhaps even supply that url in the error message,


[validator-set] Add permissions to LibraRoot

Draft, not ready for review yet.
This PR resolves to sub-cases of the Issue #5117:

it makes set_operator callable by both the libra_root and the validator owner. Once all of the owners migrate to custodying their own keys, we can remove the libra_root from being able to call the set_operator function.
Make libra_root be able to rotate the validator owner's authentication key in order to allow the AOS to initially create validator owners' accounts with dummy auth keys:

the RecoveryAddress resource is instantiated in LibraRoot account at genesis,
the LibraAccount::create_validator_account_and_extract_key_rotation_cap function is added to create an account and immediately extract the key rotation capability and return it back to the caller; the create_validator_account script calls this function and places the returned capability to the RecoveryAddress of LibraRoot.

The solution is not very elegant from the move side. Any suggestion on how to improve it are very welcome!
The account should still have an auth key (it can be dummy), but it leaves the possibility for someone to crack into that key and take advantage of the account. It is especially important to create the key in a way that makes sure no secret key is known for it. It also seems beneficial to have different dummy auth keys for different validators, otherwise cracking into one auth-key will make it possible to break the rest of them.
Have you read the [Contributing Guidelines on pull requests]
Yes
Test Plan
cargo xtest

It is especially important to create the key in a way that makes sure no secret key is known for it. It also seems beneficial to have different dummy auth keys for different validators, otherwise cracking into one auth-key will make it possible to break the rest of them.

I think we can addresses this by using the @JoshLind scheme to generate the validator addrs, but then use 0x0...0 for the auth key prefix of each validator?


⚠ Bofrost.es has degraded performance

In 2e09b2d, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1564 ms

Resolved: Bofrost.es performance has improved in cee5d5a after 8 minutes.


Trailing slash breaks internal routing

Actual behavior
When a URL has a trailing slash, any internal links that are not explicit to the file fail.
Expected behavior
Page to render instead of 404
Steps To Reproduce
Click on Gallery in the second to last section of the below page
Works
https://h2oai.github.io/wave/docs/tutorial-monitor goes to https://h2oai.github.io/wave/docs/examples
Doesn't Work
https://h2oai.github.io/wave/docs/tutorial-monitor/ goes to https://h2oai.github.io/wave/docs/tutorial-monitor/examples
Proposed Solution (needs testing)
This seems to be a docusaurus problem and they suggest, for now, using .md extensions and relative paths.
We'll need to do a bulk-replace of all our local links [Gallery](examples) to use extensions and relative paths

@mtanco Even though we use the .md extension in URL if the user lands with a trailing / (i.e. examples/index.md/ ) then still the issue remains.
Here also using useBaseUrl function instead of markdown hyperlink will fix the problem.
Gallery
@lo5 WDYT?

@dulajra It would be good to figure out a way to fix this using plain markdown, without useBaseUrl everywhere. This is a problem with docusaurus: https://github.com/facebook/docusaurus/issues/3372

In docusaurus/packages/docusaurus/src/client/normalizeLocation.ts
any trailing /index.html is knocked off the path.
If you knock off any trailing / as well with
pathname = pathname.replace(//$/, '');
on line 23, this seems to fix this bug.
But I don't know whether this would break anything else.
But it does seem to me that if you want to normalize, then allowing both /foo/bar/ and /foo/bar doesn't seem to be a very good job of normalizing to me.


Add additional derive macros to Prost generated types

If you take a look at osmosis-std You'll see they have derived some additional traits on many of their types, which allow you get access to type urls, and request responses automatically. This is super powerful, because then you can automatically generate utility functions to send/receive messages using a client. This is what the generated code looks like:
/// QueryParamsRequest is the request type for the Query/Params RPC method.
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(
    Clone,
    PartialEq,
    Eq,
    ::prost::Message,
    ::serde::Serialize,
    ::serde::Deserialize,
    ::schemars::JsonSchema,
    CosmwasmExt,
)]
#[proto_message(type_url = "/cosmos.auth.v1beta1.QueryParamsRequest")]
#[proto_query(
    path = "/cosmos.auth.v1beta1.Query/Params",
    response_type = QueryParamsResponse
)]
pub struct QueryParamsRequest {}

The macros are already built so they could simply be used in this crate almost without changes.

What's generating the type URLs?

What's generating the type URLs?

I'm assuming they're just being scraped from the .proto files. Likely whatever template they're using to generate the code includes those extra derives

I mainly ask because I've been very much interested in getting that upstreamed to Prost: https://github.com/tokio-rs/prost/pull/858

Ah yes I see that would be pretty convenient. Perhaps you can comment more on this, but I've wondered why cosmrs redefines many of the types in cosmos-idk-proto. Adding these extra derives IMO would mean that a new version of cosmrs could directly use the types from cosmos-sdk-proto rather than redefining them.

CosmRS defines "domain types" which wrap the protos and enforce various invariants, similar to how gogoproto is used in the upstream Cosmos SDK. It also has custom logic to handle field evolution between versions, as well as custom serializations for various types.
A similar pattern is used in tendermint-rs and ibc-rs (as well as various other Cosmos-related projects like Penumbra).

Ah gotcha! I see how that could be useful. So currently I'm maintaining a crate called cosm-utils which consists of 80% boilerplate that could be completely removed if we were able to get these response and type_url traits on all of the proto types. It would make maintaining it so much easier.

I see that cosmos_sdk_proto has a TypeUrl trait. Is there any chance we could get a Request trait that looks something like this?
pub trait Request {
    type Response: TypeUrl + MessageExt
}

This would be massively powerful. Adding a macro to make these for us wouldn't be too difficult either. What do you think?

@ewoolsey FWIW I'd like to move to a trait like this in the next release: https://github.com/tokio-rs/prost/pull/896

What's the use case?

@tony-iqlusion It allows you to build queries automatically. Essentially you could write a single function like this (coded from my head please ignore errors):
impl Client {
    pub async fn query<T: Request>(&self, msg: T) -> Result<<T as Request>::Response> {
        let res = self.query(msg)?;
        let response: <T as Request>::Response = serde_json::from_bytes(res.value)?;
        Ok(response)
    }
}

You could do something similar with execute message as well, imagine a message like MsgStoreCode, the Response could be
pub struct MsgStoreCodeResponse {
    code_id: u32
}

impl TryFrom<Vec<Events>> for MsgStoreCodeResponse {
    ...
}

That's what tonic already does with gRPC endpoints

That's what tonic already does with gRPC endpoints
Yes that's true for tonic and gRPC, but not true for other clients(tendermint_rpc, http, websocket, etc.)

We don't even support gRPC yet. That seems like the logical place to start.
(Note: it's already implemented downstream in Ocular)

(Note: it's already implemented downstream in Ocular)

Yeah I also have support for it in the library I'm maintaining for my work. It's currently very cumbersome to maintain manually, hence the request for this trait which would make that work a breeze.

I have similar need where I'd like to get JSON version of cosmrs::bank::MsgSend and other proto related structs and having serde derives on those would make my life way easier.
What's the best way for now to do that?

See #83 for JSON-related discussion

In #432 we migrated to the new prost::Name trait.
It should eventually get first-class support in prost-build: https://github.com/tokio-rs/prost/issues/926

In #432 we migrated to the new prost::Name trait.
It should eventually get first-class support in prost-build: tokio-rs/prost#926

This is fantastic news! Thanks for the hard work. I'll look into migrating over to this soon.


Release 9.4.4 misses native artifacts

The current 9.4.4 release only has some linux artifacts but misses Windows and Mac artifacts, because of the failing build https://github.com/WiseLibs/better-sqlite3/actions/runs/8533464864/job/23376326672.

Can you fix the build?
Is it possible to only publish to NPM after all native artifacts are available?  Otherwise this makes all sorts of application builds fail.

@JoshuaWise

I will be looking at fixing this later today

Wow, you all are so fast!  Some linux artifacts are also broken
npm ERR! prebuild-install warn install No prebuilt binaries found (target=20.11.1 runtime=node arch=x64 libc= platform=linux)

Fixed in 9.4.5


Not playing any song (v1.0.2)

Describe the bug
I tried the Bot today (latest docker image, v1.0.2), and unfortunately i don't get it to play any song.
For (probably) short songs like !play what is love, i only get Unable to find video for query what is love: timed out as response.
Not much more info in the server logs.
for most likely longer songs (which is a surprising amount when searching on youtube. many videos are 1 hour or longer with multiple songs)
It gives me Unable to find video for query epic music: failed to unmarshal video metadata: unexpected end of JSON input
I was able to get it to at least try to play "what is love", the bot joined but immediately left the voice channel again and said it finished. But that was a single occurrence till now.
Restarting does not help.
Also playing youtube links directly does not work (in the hope that this might help that it does not need to search first)
What do you see?
responses like:

timed out
failed to unmarshal video metadata: unexpected end of JSON input

What do you expect to see?
bot to join the voicechannel i am in and start playing the music
List the steps that must be taken to reproduce this issue

Install the Bot and add it to your Discord Server
Join a Voice-Channel
use a play command

Version
v1.0.2
Additional information
Running it inside a Kubernetes Cluster, just like https://github.com/eritislami/evobot

It's possible; I haven't used this in a while. Can you try to re-build the docker image and tell me if it works? The Dockerfile has a step that retrieves the latest version of youtubedl, and that binary being outdated is usually the problem

I have the same problem.I've installed it via portrainer and it times out no matter how many times I rebuild it.

did u ever find a fix for this?

same problem here

Seems like it's related to https://github.com/ytdl-org/youtube-dl/issues/30102
I'm going to update the Dockerfile & make a few changes to switch to https://github.com/yt-dlp/yt-dlp instead

There seems to be another issue besides for this - the bot joins and then shortly after, leaves.
I don't really have time to work on this project right now, so if fixing this is a pressing matter for somebody, you might have to look into it yourself 😔


Editor component preview breaks with less-than "<" character

- Do you want to request a feature or report a bug?
BUG
- What is the current behavior?
When using the WYSIWYG editor (non-markdown editor), adding less than characters < are converted to < which breaks editor previews.
Example: {{< youtube nthOpo5tQDk >}} becomes {{< youtube nthOpo5tQDk >}}
- If the current behavior is a bug, please provide the steps to reproduce.
Add the following editor component (this is the example YouTube component on the Netlify docs), and attempt to add the following shortcode in the WYSIWYG editor:
Shortcode: {{< youtube nthOpo5tQDk >}}
CMS.registerEditorComponent({
  id: "youtube",
  label: "Youtube",
  fields: [{name: 'id', label: 'Youtube Video ID'}],
  pattern: /^{{<\s?youtube (\S+)\s?>}}/,
  fromBlock: function(match) {
    return {
      id: match[1]
    };
  },
  toBlock: function(obj) {
    return '{{< youtube ' + obj.id + ' >}}';
  },
  toPreview: function(obj) {
    return (
      '<img src="http://img.youtube.com/vi/' + obj.id + '/maxresdefault.jpg" alt="Youtube Video"/>'
    );
  }
});

Alternatively, clone chrisgeary92/netlify-cms-editor-issue-2, update the repo in config.yml and try it out.
- What is the expected behavior?
Expecting {{< to not convert to {{<

Known issue, will be addressed by #254.

Sorry, didn't see this, thanks :)


Provide a version for IntelliJ 2020.2 EAP

Version 1.0 of the plugin is not compatible with the 2020.2 EAP of IntelliJ. I don't know if there are some breaking API changes in IntelliJ that affect the plugin, but I would love to use the plugin in 2020.2

Please wait a few days...

Add support for 2020.2 in v1.0.1
https://plugins.jetbrains.com/plugin/14266-mob/update/90804


[release][3.1.7] Added 3.1.7 release document

Purpose of the pull request

Brief change log

Verify this pull request

This pull request is code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:

(or)
If your pull request contain incompatible change, you should also add it to docs/docs/en/guide/upgrede/incompatible.md

Codecov Report

:exclamation: No coverage uploaded for pull request base (3.1.7-prepare@05ebd40). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head 9e0aea0 differs from pull request most recent head 31d8040. Consider uploading reports for the commit 31d8040 to get more accurate results

@@               Coverage Diff                @@
##             3.1.7-prepare   #14172   +/-   ##
================================================
  Coverage                 ?   38.18%
  Complexity               ?     3969
================================================
  Files                    ?      999
  Lines                    ?    36880
  Branches                 ?     4261
================================================
  Hits                     ?    14084
  Misses                   ?    21184
  Partials                 ?     1612

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


ffmpeg: interrupt callback fix

resolves #6356
Use timeout interrupt only for active waits (during open or read calls).

:+1:


[stdlib] Constraining BinaryInteger.Words to Sequence at least

@swift-ci Please test and merge

@swift-ci Please smoke test macOS platform


[Feature]Can add support for alpine linux

alpine linux是在Docker中使用较多的系统, 而Docker是系统部署的未来,希望能增加对alpine linux的支持.

good idea, please update description to English, thank you!

@hanxirui
We published the first official docker image based on alpine linux some days ago, you can install it following the doc: https://dolphinscheduler.apache.org/zh-cn/docs/1.3.4/user_doc/docker-deployment.html
@dailidong Please close this pr

@hanxirui
We published the first official docker image based on alpine linux some days ago, you can install it following the doc: https://dolphinscheduler.apache.org/zh-cn/docs/1.3.4/user_doc/docker-deployment.html
@dailidong Please close this pr


Expiratin date in track1 and track2 allows only YYMM

It is hardcoded in Track1 and Track2 that the expiration date format is YYMM while it can be the other way around.
Could this format be made configurable?

@Scratch-net I don't see validation for expiration date to require that. I do see it specified as an alpha string in the example. Do you need help with this?
https://github.com/moov-io/iso8583/blob/master/specs/spec87ascii.go#L106

Actually, it was my mistake, sorry. When calculating CVC you can choose MMYY or YYMM but in the track itself it's mandatory YYMM, I didn't know that.
Thanks for the great library!


URLs in the API reference doc is not working.

https://googlecloudplatform.github.io/google-cloud-node/#/docs/google-cloud/0.56.0/not-found
When clicking the annotateImageResponse, the URLs are not working.

Every URL, linked on this page is broken.
https://googlecloudplatform.github.io/google-cloud-node/#/docs/vision/0.12.0/vision/v1/data_types
The below one is the broken URL.
https://googlecloudplatform.github.io/google-cloud-node/#/docs/vision/0.12.0/vision/v1/data_types?method=BatchAnnotateImagesResponse

Is there any updates on this?
Without references not sure how I can use api's or am i missing something obvious? Thanks.

Where you encounter a broken URL, instead of clicking on the link, just search the page for it. For example, for this method, it shows a link for FaceAnnotation. Instead of clicking that link, you can either search or go to the top of the page to find the correct section of the page.
Every type is on the same page, so it's just a matter of finding it. I'm sorry for the inconvenience. I would like to look at this again next week to correct the links.

@stephenplusplus Simple. Can you point where is the response for the faceAnnotation
Right now, i am using the reference from the REST API page. Thanks.

https://googlecloudplatform.github.io/google-cloud-node/#/docs/vision/0.12.0/vision/v1/data_types?method=FaceAnnotation

I think this will be a "won't fix", unfortunately, as we are almost complete in moving our documentation off of gh-pages and onto cloud.google.com.
Sorry for the inconvenience. The information is there, you just have to search the page with "Ctrl+F" instead of the broken link. (See my previous post)


chg: remove python 3.8 (EOL), add python 3.13

Nothing crazy, just allowing to install the package on python 3.13 (and remove python 3.8, as it is EOL).

Thanks for your PR @Rafiot, I might got a bit lazy maintaining. :)

You're welcome :)
If you want to be extra lazy, remove the <3.14 block, there is nothing in this module that will fail on newer python, it's all pretty standard.


Feature Request: FTP Watcher

Could you add a native FTP Watcher to VS Code? The extensions I tried don't work reliably and I love VS Code so far so having a file watcher that automatically uploads file changes to an ftp server would be awesome.

Unlikely from within VSCode but maybe an extension could do this.


LoadAsync for the same entity in separate handlers targeting the same eventtype results in an error

Describe the bug
I cannot use Loadasync in two seperate classses who each are handling the same event to load the same entity.
Franki — i går kl. 22:08
Question:  I have two separate handlers for the same event type. Both using LoadAsync to get the updated model from the database. This results in a error in the dynamic handler. Because two variables are named the same. The fix is easy. Just remove one the LoadAsync methods from one of the classes. Is this behaviour intended or a bug?
Jeremy Miller — i går kl. 22:11
No, it's not purposeful, but also, nobody has tried doing that yet apparently. Bug. Edge case bug, but bug.
To Reproduce
see above
Expected behavior
Being able to use LoadAsync in two seperate classes with two seperate handlers targeting the same event and loading the updated model from the database using LoadAsync
Error:
CS0128: A local variable or function named 'supplier' is already defined in this scope

I think the answer might be an exception telling you to "don't do that" though


Defining variables doesn't like newlines.

I get this error on countdown.bella in the examples directory.
✕ error: invalid syntax
  ┌─ ./examples/countdown.bella:1:16
  │
1 │ let countdown =
  │                ~
  │

? I don't understand what this means

There may be some sort of newline character that it doesn't understand (it works on my machine). I'll check it out; thanks for the repot!

Did you modify the file at all? Maybe the line endings are messed up.

Yup, it doesn't understand CRLF correctly ATM.

It should work now in the latest build. Do you mind testing it out?


[ownership] Ban cond_br from having any non-trivial operands.

Previously, we just banned cond_br from having non-trivial operands along
critical edges. This is a stronger condition that beyond simplifying ossa for
passes, also lets me remove the need for BranchPropagatedUser, simplifying the
linear lifetime checker.

@swift-ci test

@swift-ci test source compatibility

Lets see if anything breaks.

@swift-ci test source compatibility


Workaround for litellm proxy -> ollama issue

When streaming responses from a model served by ollama, through a litellm proxy that provides an OpenAI compatible API, the last chunk (i.e. choice["delta"]["content"]) of the streaming response will be set to None
This causes an exception to be thrown during the following, since None can't be appended to a string:
content += choice["delta"]["content"]
To avoid this, I simply added a check so that choice["delta"]["content"] is only appended to content if it's not None.

I've researched the issue more now, and it's the very last chunk, containing the finish_reason field, that in the case of at least LiteLLM:s implementation of the OpenAI API, also sets the 'delta' field to {content: null, role: null} rather than just not setting the delta field at all in this case.
I think it's a good idea for this project to be resilient to that type of slight deviation from how the real OpenAI endpoints might respond, but I also think it should be fixed upstream in the litellm repo. I've already made some pull requests for a couple of other issues there when using litellm with ollama.

@simonw - any chance of getting this PR merged? I think it makes sense for llm to be defensive in this way. I'm currently vendoring my llm as I really need this change.
@clevcode - do you have plans to add a fix that eliminates the Nones to litellm directly? Lmk if I can help with this

Sorry for not getting this into 0.13 - this will need some tweaks now that I've upgraded the OpenAI Python library.

Hey @clevcode i'm the maintainer of litellm
Tracking this issue on our end as well - https://github.com/BerriAI/litellm/issues/2010
Thanks for raising it.


Capture an error when a transaction is rejected due to being invalid

Problem Statement
Whenever a transaction grows too large, it gets discarded due to being Invalid, since it exceeded the size limit. Currently there's no mechanism that would inform us engineers that this happened.
Solution Brainstorm
Sentry could automatically capture an error in such case, so that we engineers know about this invalid transaction and can fix it.
 We should be logging an error in the SDK if we receive a reply with a non-200 status code when sending an event to Sentry. (I believe the server would reply with a 400 in case the payload is too big.) That'd be one place to look.
You might also be able to see dropped transactions on the Stats page in the product.

@sentrivana what should I search for in our logs? I'll take a look.
As for the stats page - yes, I see it there, but that cannot be alerted on, and doesn't give us almost any debugging info for that dropped transaction.

what should I search for in our logs? I'll take a look.

@the21st logs from the Sentry SDK should be prefixed with [sentry].

@szokeasaurusrex thanks! I can see in Sentry stats that there were 5 transactions dropped due to a network error in the last hour but in our logs there are no entries with [sentry] in them.

I can see in Sentry stats that there were 5 transactions dropped

Where exactly are you seeing this information @the21st? A link to the exact page and/or a screenshot of the information would be helpful

@szokeasaurusrex on the stats page: https://invert.sentry.io/stats/?clientDiscard=true&dataCategory=transactions&environment=prod&project=4507972815028224&statsPeriod=7d . I can send a screenshot in a private channel if there is some.

@the21st apologies for the back and forth.
So yes, it is true that currently we only expose information on things such as invalid transactions, size limits, network errors, etc only on that Stats page. See here for information on all the various types of stats we collect.
There are reasons we wouldn't want to automatically create errors for each of these because this would mean you would have to pay us (via quota usage) for things that are wrong not in your, i.e. userland code but something within our SDK and our servers. Storing errors/transactions is costly for us (and hence you) so we only do it for actual user problems and collect statistics for our internal problems.
However, I do agree that it makes sense to somehow surface a spike based on those statistics somewhere in the product UX. I will talk internally about this and get back to you.


useCall not working in version 0.12.1

Problem
Using usedapp/core version 0.12.1, useCall does not seem to send any calls to the blockchain network.
Background
I created a very simple smart contract (SimpleStorage - stores and updates a "message" string), and a react frontend using create-react-app.
The full application source is here if you need it.
yarn add @usedapp/core installed version 0.12.1 of usedapp (and version 0.5.6 of ethersproject/contracts)
When I tried to fetch the current message from the contract, useCall did not seem to be sending any calls to the network. The value returned from useCall was always undefined, and when using a local ganache-cli blockchain network, I did not see any eth_call log entries after connecting metamask. I saw the same problem when using the Rinkeby network.
This is the react source for my useGetMessage.ts hook:
import {useCall} from "@usedapp/core"
import {utils} from "ethers"
import {Contract} from "@ethersproject/contracts"
import SimpleStorage from "../contract-data/contracts/SimpleStorage.json"

export const useGetMessage = (contractAddress: string): string => {
  const ssInterface = new utils.Interface(SimpleStorage.abi)
  const ssContract = new Contract(contractAddress, ssInterface)

  const {value: message} = useCall({
    contract: ssContract,
    method: "message",
    args: []
  }) ?? {}

  return String(message)
}

After editing my package.json file to change the dependencies like this:
    "@ethersproject/contracts": "5.5.0",
    "@usedapp/core": "0.11.0",

...and then running:
yarn add<EMAIL_ADDRESS>yarn add<EMAIL_ADDRESS>
Then the same application code worked correctly, including the code which invokes useCall.

I am also working with version 0.12.1 recently. I believe this version is not stable and has many issues. I will file an issue to cover more details on the problems I encountered later. Perhaps you may try to use an older version first (let say, 0.7.0).

@digitalronin Are you getting any errors in the browser console?

No errors are logged, afaict. It looks like the useCall executes, but
always returns undefined.
On Wed, 30 Mar 2022, 20:36 Dmytro Maretskyi, @.***>
wrote:

@digitalronin https://github.com/digitalronin Are you getting any
errors in the browser console?
—
Reply to this email directly, view it on GitHub
https://github.com/TrueFiEng/useDApp/issues/622#issuecomment-1083019942,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAASISVMYYQF2EKYTZTBGTVCQ4CJANCNFSM5RPUQQJA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Seeing the same behavior here.

This should be the same as https://github.com/TrueFiEng/useDApp/issues/644
Please try 0.12.4 version.


Add XiVO Desktop assistant app

Thanks @jpthomasset. Before merging this, I would recommend adding a background color to the icon, in case we ever want to display apps in contexts with varying background colors.

(bump)

Gonna close this out due to inactivity. Feel free to respond if you ever want to revive this PR.


More Peers shown in Dashboard than set in peering.json

I have entered 4 static neighbors in the peering.json. After some time, the dashboard showed 5 peers. Not only was the 5th peer not entered by me, but it is also connected (green dot) according to the dashboard. See screenshot attached for details.
System: Hetzner VPS CX21, Ubuntu 20.04.1

I have the feeling the following is set to true in chrysalis-pt2 branch
https://github.com/gohornet/hornet/blob/0715a1633366b2a459f79098116050c37467b7a1/peering.json#L2

Reason found: Default config allows up to 4 unknown peers to be connected for gossip!


PLAT-126346: Add UI tests for agate/Popup

Enact-DCO-1.0-Signed-off-by: Stanca Pop<EMAIL_ADDRESS>Checklist

[x] I have read and understand the contribution guide
[ ] A CHANGELOG entry is included
[ ] At least one test case is included for this feature or bug fix
[x] Documentation was added or is not needed
[ ] This is an API breaking change

Resolution

added UI tests for agate/Popup

Additional Considerations
Other tests should be added once component is refactored.
Links
PLAT-126346
Comments

Good


Popover Placement not working on Firefox and Safari

The placement works on chrome but it doesn't work on the mentioned browsers above. On scrollable page.

Hi @virtualbjorn, what exactly does not work? Do you have some code samples or a screen shot. Without any additional information it's hard to help right now.

@ivansieder you can reproduce this issue on the live demo as well
https://akryum.github.io/v-tooltip/#/ under Use with components to create a popover
the placement doesn't work

This works perfectly for me. Are you referring to the fact, that it gets moved from the bottom to the top if you are scrolling?
If you mean that, then that's by design from popper.js trying it's best to keep the popover in the user's viewport.
If you don't want that behaviour, try adding these options to your v-tooltip:
popperOptions: {
  preventOverflow: {
    enabled: false
  }
}

placing that under preventOverflow doesn't seem to do anything.

Can you provide me a code sample on how you use the code and attach a screenshot on what it looks like for you?

I manage to find the right modifier.
```popperOptions: {`
flip: {
enabled: false
}
}
``

Thanks for accommodating my issue. :)


Improve handled state validation

Improve validation of handled state to address 2 scenarios:

if the notify method was passed an object as its 5th parameter, handledState would not be created
if the report._handledState was modified in a beforeSendCallback, the severityReason could potentially be invalid

This seems ok, it's more checking than before, but there are still ways that rogue data could cause it to crash. I think it might be worth repeating the check on L312 in the toJSON method, since the entire _handledState object could have been replaced or meddled with.


Create a new CDDL type for memo

We have a few places where we keep a human-readable and machine-readable memos. These should be streamlined in a single space.
To do:

[x] Create the specification changes
[ ] Make the changes in many-rs and many-framework.
[ ] Make the changes in albert and many-js.

Fixed by #58


Make 'manage' and 'view' buttons align right

In the list of packages for logged in users, we show 'manage' and 'view' buttons:

Right now, there is an approx 20px gap at the right of the 'view' button. It would be better if these could align right in the card.

Screenshot Required: This issue will require an update to the visual design of the site. To help our team give you faster feedback, please include a screenshot in your Pull Request.

Good First Issue: This issue is good for first time contributors. If you've already contributed to Warehouse, please work on another issue without this label instead. If there is not a corresponding pull request for this issue, it is up for grabs. For directions for getting set up, see our Getting Started Guide. If you are working on this issue and have questions, please feel free to ask them here, #pypa-dev on Freenode, or the pypa-dev mailing list.

Is this what you are looking for?

perfect @saxenanurag !


Please fix asap and make sure this doesn't happen again

Please fix asap and make sure this doesn't happen again

it happens when 3 people use command after the $pokelist command, the bot takes 30secs to process the pokelist and if someone uses other command in those 30secs twice,  the bot breaks smh.

it happens when 3 people use command after the $pokelist command, the bot takes 30secs to process the pokelist and if someone uses other command in those 30secs twice, the bot breaks smh.

Could you please disable pokelist then ?
It will be fine if there is no pokelist but the pokesearch has to function properly without breaking


Handle distortion in the ipm

Currently, no distortion is considered in the IPM and we assume all inputs come from a rectified image. But this might not always be the case. Many CV approaches also perform well on unrectified images and skipping the rectification can be good in terms of performance. In cases like this, the distortion needs to be accounted for during the inverse perspective mapping. This pr introduces a dep to OpenCV to calculate the ray directions. This is able to account for the distortion. It is slightly slower compared to the previous approach, but it still only takes ~1/100 seconds to convert a reasonably sized image in its entirety (which is not the case most of the time).
Closes #11

Docs: https://github.com/ros-sports/ipm-docs/pull/5


issue Resolved Real State Files Added

Description
I have Added the Real State User Interface  in the UI teamplate.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] 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?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Manual testing

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Work done

please use the latest flutter version. it is showing that you are using V1 embedding which was used in older flutter versions


Maintenance: Suggest large PRs to split

Summary
Task to create a GitHub Action Workflow to suggest authors to split large PRs - that is, any PR labeled with size/XL or size/XXL. There'll always be exceptions like code+docs, etc. Reacting to these labels being added is a good signal to whether we're dropping quality in detriment to very large PRs.
Why is this needed?
Huge PRs makes it difficult to spot potential bugs that tests may not catch, or deviate from our style guide where our automation doesn't have good coverage yet. More importantly, it reduces cognitive load on reviewers.
Which area does this relate to?
Automation, Governance
Solution
No response
Acknowledgment

[X] This request meets Lambda Powertools Tenets
[X] Should this be considered in other Lambda Powertools languages? i.e. Java, TypeScript

fully working now.


Some entity functions do not start

Hello. I have just started experimenting with durable functions and entities.
I have created a sample project with the Counter Entity copied from this page and it works.
I call the entity functions from the orchestrator using the proxy.
I have duplicated the Counter into another similar Entity and it works
I have created another Entity with different but simple logic and it doesn't work. It is scheduled but not started. The Await for the entity function results waits for 90 seconds and then the orchestrator ends with status 202, basically my entity function never starts. Once it happened in the debugger that all the scheduled and buffered calls were executed one after the other (about 15). I don't understand why this new Entity function I created is so problematic. What tools can I use to investigate more?
Please someone give me some suggestions, I am running out of ideas.
Thanks

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

ID: 87e12177-bb3a-d00c-99a5-422e00f9b03f
Version Independent ID: 2fa1cf0d-2a5f-2fb0-ef25-bccfac3279fd
Content: Durable Entities - Azure Functions
Content Source: articles/azure-functions/durable/durable-functions-entities.md
Service: azure-functions
GitHub Login: @cgillum
Microsoft Alias: azfuncdf

Hi @antogh would you mind opening an issue in the Durable Functions repo, here? That will be a better place for us to work with you to understand what might be going on. If you could share some code snippets you are using, that would be helpful as well. Thanks!

Hi @cgillum   sure I'll do it. Thanks!

Closing per above.


test: use traditional tt variable name and remove unneeded loop-copy-var

Typically with table tests the inner variable is called tt, which we're doing in most places already but not everywhere - and as a result, this lead to linting picking up a few copyloopvar violations that were previously ignored due to the different variable name

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 68.37%. Comparing base (8509b99) to head (05c7fbc).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1381      +/-   ##
==========================================
- Coverage   68.52%   68.37%   -0.16%
==========================================
  Files         183      183
  Lines       17574    17574
==========================================
- Hits        12043    12016      -27
- Misses       4873     4897      +24
- Partials      658      661       +3

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


Unit testing for Move

This PR adds the initial implementation of unit testing for Move.
This PR consists of two commits:

The bottom commit adds unit test support to the compiler

Adds an pass before expansion that removes any #[test] or #[test_only] module members if the compiler is not in test mode
Adds a pass at the end (just before bytecode generation) that generates a TestPlan that will then be used by the unit testing framework...

That is defined in the top commit. This takes a test plan, and executes the tests in parallel based on a workqueue with multiple workers. Each test's expected results are checked against the VM output and any test errors are reported (see below for an example). Current features that are supported are:

Filtering tests by name, e.g., cargo run -- -f "filter_string_just_like_cargo_test" <files>
Setting timeouts (this bounds the gas used for execution), e.g., cargo run -- -T=100 <files>.
Setting the number of workers (parallelism) to be used for testing, e.g., cargo run -- -w=8 <files>

As example output, lets say you have the following module (taken from the unit testing proposal):
// This is a test based on the example in the unit testing proposal
address 0x1 {
module TestonlyModule {
    #[test_only]
    public fun aborts() {
        abort 42
    }
}

module Module {
    struct B<T> has key { t: u64 }
    struct A has key {t: u64}

    fun a(a: u64): bool {
        a == 10
    }

    fun b(a: address): bool {
        exists<A>(a)
    }

    fun c(a: address, x: u64): bool
    acquires A {
        exists<A>(a) && borrow_global<A>(a).t == x
    }

    fun d<T: store>(a: address, x: u64): bool
    acquires B {
        exists<B<T>>(a) && borrow_global<B<T>>(a).t == x
    }

    fun aborts() {
       abort 10
    }

    ///////////////////////////////////////////////////////////////////////////
    // unit tests
    ///////////////////////////////////////////////////////////////////////////

    // A test-only module import
    #[test_only]
    use 0x1::TestonlyModule;

    // A test only struct. This will only be included in test mode.
    #[test_only]
    struct C<T> has drop, key, store { x: T }

    // Not a test entrypoint, can only be called from #[test] and #[test_only] functions
    #[test_only]
    fun setup_storage_tests_b(a1: &signer, a2: &signer) {
        move_to(a1, A{t : 5});
        move_to(a2, A{t : 5});
    }

    #[test_only]
    fun setup_storage_tests_c(a1: &signer, a2: &signer) {
        move_to(a1, A{t : 5});
        move_to(a2, A{t : 6});
    }

    #[test_only]
    fun setup_storage_tests_d(a1: &signer, a2: &signer) {
        move_to(a1, B<u64>{t : 5});
        move_to(a2, B<u64>{t : 5});
        move_to(a2, B<bool>{t : 6});
        move_to(a2, B<C<u64>> {t: 5 });
    }

    #[test] // test entry point.
    fun tests_a() { // an actual test that will be run
        assert(a(0) == false, 0);
        assert(a(10), 1);
    }

    #[test(a1=0x1, a2=0x2)] // testing framework will create and pass-in signers with these addresses
    fun tests_b(a1: signer, a2: signer) {
        assert(b(0x1) == false, 0);
        setup_storage_tests_b(&a1, &a2);
        assert(b(0x1), 1);
        assert(b(0x2), 2);
        assert(!b(0x3), 3);
    }

    #[test(a1=0x1, a2=0x2)]
    fun tests_c(a1: signer, a2: signer)
    acquires A {
        setup_storage_tests_c(&a1, &a2);
        assert(c(0x1, 5), 0);
        assert(!c(0x1, 6), 1);
        assert(!c(0x2, 5), 2);
        assert(c(0x2, 6), 3);
    }

    #[test(a1=0x1, a2=0x2)]
    fun tests_d(a1: signer, a2: signer)
    acquires B {
        setup_storage_tests_d(&a1, &a2);
        assert(d<u64>(0x1, 5), 0);
        assert(!d<u64>(0x1, 6), 1);
        assert(!d<bool>(0x2, 5), 2);
        // This should fail, and the error should be reported against the source
        assert(d<u64>(0x2, 6), 3);
    }

    #[test]
    #[expected_failure(abort_code=10)] // check that this test aborts with the expected error code
    fun tests_aborts() {
       aborts()
    }

    #[test]
    #[expected_failure(abort_code=42)]
    fun other_module_aborts() {
       TestonlyModule::aborts()
    }
}
}

unit testing of this would result in the following output:

:exclamation: Invalid command

Bors help and documentation

Bors is a Github App used to manage merging of PRs in order to ensure that CI is always green. It does so by maintaining a Merge Queue. Once a PR reaches the head of the Merge Queue it is rebased on top of the latest version of the PR's base-branch (generally master) and then triggers CI. If CI comes back green the PR is then merged into the base-branch. Regardless of the outcome, the next PR is the queue is then processed.
General

This project's Merge Queue can be found here.
This project requires PRs to be Reviewed and Approved before they can be queued for merging.
Before PR's can be merged they must be configured with "Allow edits from maintainers" enabled. This is needed for Bors to be able to update PR's in-place so that Github can properly recognize and mark them as "merged" once they've been merged into the upstream branch.

Commands
Bors actions can be triggered by posting a comment which includes a line of the form /<action>.

Command
Action
Description

Land
land, merge
attempt to land or merge a PR

Canary
canary, try
canary a PR by performing all checks without merging

Cancel
cancel, stop
stop an in-progress land

Cherry Pick
cherry-pick <target>
cherry-pick a PR into <target> branch

Priority
priority
set the priority level for a PR (high, normal, low)

Help
help, h
show this help message

Options
Options for Pull Requests are configured through the application of labels.

          Option
Description

Indicates that the PR is high-priority. When queued the PR will be placed at the head of the merge queue.

Indicates that the PR is low-priority. When queued the PR will be placed at the back of the merge queue.

Before merging the PR will be squashed down to a single commit, only retaining the commit message of the first commit in the PR.

/land


Add API (or document existing one) to implement custom protocols.

I have to test some server using a custom protocol via long-lived TCP-connections. I want to create a large amount of conections, so Gatling seem to be a right choice for that due to actor model.
It seems to be possible to do this with some sort of plugins but the API is not documented yet (according to this tweet).

Hi (again :))
I'll try to document this as soon as I can :) Thanks for your interest :)

Hi,
First page: the global architecture of Gatling : https://github.com/excilys/gatling/wiki/Gatling-architecture
I plan to explain the main APIs as soon as I can. First one will be the Checks API then the Request API as you'll need Checks to write a good protocol module :)

Hi,
I'm currently writing documentation for the Checks API, after this one, it will be the Request API's turn ;)
https://github.com/excilys/gatling/wiki/Checks-API (it's still a draft :))

Hi @digal,
Unfortunately the API will change between 1.0 and 1.1. As there's a lot to explain in the developer documentation, I'll focus on documenting the API in version 1.1.
Sorry to make you waiting, but I think it's for the best ;)
Cheers,
BluePyth


Multiple timelines not working in Bootstrap Modal Accordion

Hello,
i just tried to you this plugin to display multiple timeline in 1 modal, if i only display timelines it works, but when i put those timeline in Accordion to make UI more user friendly, only first timeline is properly displayed rest are not. The HTML elements are still there and can be found with inspector but they are not displayed correctly.
Any idea how to fix this or what might be the problem?
Thank you.

Hi. This sounds similar to issue #3
You may need to initialise the timeline once the modal is visible.
Let me know if this helps.
Thanks.

Hello,
followed your advice and got it working, as you suspected it was a #3 related issue with elemnt widths
Got ti working with the folowing code
$('#accordion').on('shown.bs.collapse', function () {
    timeline(document.querySelectorAll('.timeline'), {
        mode: 'horizontal'
    });
});

Thank you.

Cool. Glad it's working now. I'll mark as closed.


Benchmarks

Document 9volt benchmarking.

Performed some initial (and anecdotal) performance metric visualization + documentation.
This can certainly get a whole lot bigger, but should do for now.
Resolved in #75


Tom/interlay exchange logos

Add Acala and Stellaswap to list of Interlay exchanges

Going to merge this in with the placeholder URLs (to Acala and StellaSwap websites). Better to test now, and a simple config change to update the URLs when we have them.


support darwin all architectures

fixes #19

the failure is due to some GH permissions in CI script that I haven't sorted out yet.  this change should not affect the image


Question: Need for flatland?

I am currently considering picking up one 2 (2.5D) simulator and would like to ask what specific use case led you to build this package as opposed to using existing solutions such as stage or stdr?
Watched the ROSCon ligthning talk but missed this comparison.

Hey,
I deliberately didn't try to bring up a comparison at the ROSCon lightning talk, since given the short amount of time, I didn't want to come across as badmouthing other community members. Stage and STDR are both reasonable simulators if they fit your needs. Here's my attempt to compare them. Feel free to correct me if I'm mistaken about any of the other simulators.
Here's a breakdown of reasons why you might want Flatland vrs. other options:
STDR vrs. Flatland

STDR can't do other robots perceived as obstacles from sensors, wheras flatland handles this just fine. This is important
Noise in sensors - flatland has gaussian laser noise simulation
Kinematic models - flatland supports doing this, although the current motion models are written in a way.
Plugins - All sensors and motion models are written as flatland model plugins using the standard ROS pluginlib. This means that it's really easy to add custom sensors, or plugins that make a model perform specific actions to allow for testing complex scenarios automatically.
STDR has a nice graphical robot model editor. If you can build your robot using this editor, it can help you get up and going really quickly. Flatland does not have this, and you have to create your robot model using a YAML file, trial and error.
License - STDR is GPLv3, wheras Flatland is BSD 3 clause. If you want to make proprietary flatland enhancements and distribute the binary, you can under BSD 3 clause. If you want to make flatland enhancements and release them as GPL, you can.

Player / Stage vrs. Flatland:

Flatland is more tightly integrated with ROS (TFs, visualisation messages, pluginlib etc.) , whereas Player/Stage is more abstracted from ROS. Which design choice is better for you depends on what you're trying to do, but if you're in the ROS environment you may find flatland easier to integrated.
Flatland plugins are more free-form. Rather than a plugin implement a rigid API, they just attach to events that they're interested in and can modify the world however they want. Player/stage plugins provide specific behaviour classes, which makes them easier to swap in/out for eachother, but if you want to create an entirely different class of plugin, it might be more difficult.
Flatland is currently single threaded, wheras player/stage is multithreaded. This means that flatland's internal communication stays in sync sequentially under most circumstances, but it doesn't scale as well with multiple CPU cores.
When we were evaluating Player/Stage in Spring 2017, we found that the ROS interface for player/stage, and the current release version documentation didn't line up very well. This made it really hard to work with.
I think that Flatland's documentation is a bit easier to follow than Player/Stage's, but it still needs some improvements.
License: Player/Stage is GPLv2 wheras Flatland is BSD 3 clause. As a developer, in my opinion you have more options with BSD 3 clause (although this could be subject to a lot of debate).

Both vrs. Flatland:

Flatland is newer and more actively developed than either STDR or Player/Stage . This means it's more likely to find unreported bugs in Flatland, which is a downside, although we'll try to fix them  or integrate fixes ASAP.
Flatland supports world plugins, which can provide world initialisation behaviour. For example, you could write a world plugin that generates a random maze or other world type based on parameters and a seed.
Flatland supports configurable simulation speed (similar to gazebo, step size * update rate = real time factor), whereas I don't believe this is supported in either STDR or Player/Stage.
Flatland server is 3k lines of code, and 9k including all the other packages, STDR is 15.6k lines of C/C++, Stage is 16k. This is due to Flatland's plugin focus. I believe that this should make it easier to enhance the core, and extend functionality without the server becoming too complex. Complex functionality can be pushed out to plugins via the pluginlib interface. (All line counts based on cloc "code" column for C/C++ and headers).
Both player/stage and STDR have a sonar simulation, wheras Flatland doesn't have a plugin for that yet. It wouldn't be hard to add (as it's basically a simpler version of the laser scaner plugin), but if you need this ASAP and want Sonar it might be easier to use STDR if it meets your other needs.
Flatland doesn't have a GUI, and instead uses visualisation messages + rviz plugins to integrate directly into RViz if you need to spawn/move models, or
Flatland simulates the static world as a series of layers, and all dynamic objects as models. This means that a table and a robot are the same type of object, aside from the robot likely having a bunch of model plugins attached to give it a motion model, sensors, tfs published etc. This design choice should allow for complex functionality to be simulated fairly easily. In the Flatland Turtlebot integration's example world, this can be seen simulating a sliding door that listens to a boolean ros topic, and a passive collision sensor publishing a boolean ros topic working together to simulate a proximity activated door. This could probably also be done in Player/Stage but it would likely involve a lot of messing around and misusing their robot interfaces.

Flatland vrs. Gazebo:

Under almost all circumstances Flatland should run significantly faster than Gazebo
In my non-scientific tests, physics in Flatland is more stable than in Gazebo at faster simulation speeds (likely due to less degrees of freedom)
The physics simulation is not abstracted in Flatland like it is in Gazebo. Pro: It's easier to interact with the physics simulation. Con: You can't swap out physics backends (although realistically there are only 2-3 viable options and we believe we picked the best one).

Hopefully that illuminates some of the differences between your options. There are certainly areas where each of the simulators shine, but the reasons I highlighted here are the primary ones that caused us at Avidbots to spend the time writing our own.
We have the need to simulate large numbers of complex, dynamic environments, and the simulation speed in Gazebo (which we used, and still use) proved a major road block. What we really wanted was a fast, lightweight, 2.5D version of Gazebo that could allow us to easily simulate people walking through areas as the robot was in operation, doors opening and closing, multiple robots interacting with each-other, dynamic environments that change frequently, very large worlds (since our robots clean malls, airports, and other similar large spaces around the world).

That is very good and detailed explanation, and illustrates a lot of good points (y)
Thanks!


Issue on page /notebooks/02/01-bim.html, "Building the optimization problem" section

The constraint for silicon is x<=1000, not 4x+y<=1000.

Thanks for spotting the typo, the latest commit fixes it.


Arrow function with closure fails to track generic type (statement function works)

I wrote the two same functions, one as an arrow function, and the other as a statement with the 'function' keyword.
The function takes a generic input to determine the type of a function it will be provided (that will itself be provided with the data itself) and returns a function that will call that function, receiving itself the data to provide.
Here is some sample code:
// Outputs:
// "string literal `A` (This type is incompatible with the expected param type of some incompatible instantiation of `D`)"
// and
// "string literal `B` (This type is incompatible with the expected param type of some incompatible instantiation of `D`)"
const version1: <D : DataType>(strategy: Strategy<D>) => (data: D) => string =
  strategy => data => strategy(data)

// Does not output errors (as I would expect).
function version2<D : DataType>(strategy: Strategy<D>): (data: D) => string {
  return data => strategy(data)
}

With the statement function, the function declaration works fine, no error is outputed, and trying to call it produces the expected warnings.
But when I write the same function with an arrow function being assigned to a 'const', I get an error on the call of the first parameter in my closure, saying the parameter of the second function is incompatible with some instantiations of the function.
Since that type is specified as a generic parameter, and that I'm using the same type for my closure, I would expect this not to give errors, as the same statement function does.
Also, even if I get an error in the version 1, calling it still works as expected, meaning that it recognizes type mismatches between the parameters of the main function and the returned closure's parameter.
Please find a (really simple) version of that problem, complete with all definitions and test calls, here:
https://flow.org/try/#0PQKgBAAgZgNg9gdzCYAoVAXAngBwKZgAiAhhsQCq4EC8YA5AIJ1gA+9AQnetvmAMoYATqTwBzLAB5CYAFxFSFKgD4wtABQATBXMIBKVSoDOQgJYA7Udyr8hI8Q1U3hGMZMZ0lmawOev2jnzs3Tk9UAGM4M2MwY197OUCXe0ctMgMwVOIwYGB6JnDI6Nig9gTbJKx-Wkz0mpyOLlR6gHkAVwwcdsMZJtyAIljzUTAYExdhGDAAAwYpsDVyAAsTQzAeAhWwcwiAWxxSEwAjGAIEMcW1xYI8AA98MJcNMH3hHbXrOCgYuB2Ns139hgjictlEyGYgQdImBPtNCFNdH1emBiGYNMiBqYLCMxngJtN2HMFstVustqttj9AcDTudLtc7ngHngni9iG8ybDDD8-gCDsc-sZUZCgdDYVN4YiCmCwAA3PGGEyRACMciksnkZEo+CUamKFTKcUkhCU+moKk02iIZqMWOG1FQYBi5VctQU6X1rktZF06HqhDgeFWZjgGBh7U6YbxgjgglWamIqwAkmAEHBWjAnrd7hhdAA6VBQVr-UVmOUKpVmABM6p0Cm1eF1nvEhqCUlNcm9xB0NudgiGYAA3o6wII8BhWoIyzVzX2gl3fQBfP25ACi8sEWDAYWIMEmacEAGt47GwFBiCYYIZ9ImwNmmY8ADRgENgHakcb0u+CGNxsCiEx5TLYhDjgeUeg3RUVT1F17F0NR3F9SDK2VGCjXYeDENQZDoObLAGEwzgkIrXDYMqQi6F9bCSOrNCggIhCmGIuNKyrOiKgwxjKOoljIjYvCGLoIieKg2i8M4oTuKAA
(Please note: in this simple example, the Strategy type and the closure type coincide, but it's really to keep the example simple. In practice, the faulty function serves to simplify usage of said Strategy by centralizing more of its parameters in the first function call, returning a very easy to use closure. However, with more parameters, I get the exact same error. I simplified it to make sure of what was the problem, and to keep the example simple as said above.)

Now the behaviors are consistent


TypeScript: chartHelpers.getRelativePosition(new Event(''), new Chart()) doesn't pass

Expected behavior
When passing a Chart instance to the helper method getRelativePosition() I expect the types to be correct. In v3 this worked.
Current behavior
The types don't match and the following error will be shown:
const chart: Chart<"bar", number[], string>
Argument of type 'Chart<"bar", number[], string>' is not assignable to parameter of type 'Chart'.
  Type 'Chart<"bar", number[], string>' is missing the following properties from type 'Chart': _options, _aspectRatio, _layers, _metasets, and 41 more.ts(2345)

Reproducible sample
https://codesandbox.io/s/typescript-playground-export-forked-ufm45w?file=/index.ts:435-491
Optional extra steps/info to reproduce
Open the sandbox, ignore the runtime error and just look at the TS compiler error.
Possible solution
No response
Context
No response
chart.js version
v4.2.1
Browser name and version
No response
Link to your project
No response

There does not seem to be any ts errors

@LeeLenaleee It seems you've run the example on a mobile device, correct?
Please try again on a desktop computer as the mobile version doesn't seem to run type checking.

Just ran into same issue in latest after upgrade from v3...
Error: libs/charts/src/lib/components/line/line.component.ts:74:69 - error TS2345: Argument of type 'Chart<"line", (number | Point | null)[], unknown>' is not assignable to parameter of type 'Chart'.
Type 'Chart<"line", (number | Point | null)[], unknown>' is missing the following properties from type 'Chart': _options, _aspectRatio, _layers, _metasets, and 40 more.
Had to cast my chart to any.

I'm guessing the unknown on the chart type is the problem which comes from https://github.com/chartjs/Chart.js/blob/master/src/types/index.d.ts#L487
When the chart has data, the unknown is then inferred from the data type.


Investigate biorxiv article missing from Sciety

https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>7818v1 resolves on Biorxiv.
https://doi.org/10.1101/2<IP_ADDRESS>7818 points to the Biorxiv preprint.
The Sciety URL for that paper shows an Oops page.
The logs say the DOI is a 404 Not Found on Crossref.
A search for the DOI on Sciety has no results.

A different Crossref API, the XML API, does have knowledge of this DOI:
<EMAIL_ADDRESS>This response contains front matter such as title, authors and abstract.

Biorxiv DOIs that have generated a warning on Sciety when queried against the Crossref Works API:
https://api.crossref.org/works/10.1101/mjaymy4wni
https://api.crossref.org/works/10.1101/node/add
https://api.crossref.org/works/10.1101/user/register
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>964...
https://api.crossref.org/works/10.1101/mjaymy4wns
https://api.crossref.org/works/10.1101/mjaymy4wns
https://api.crossref.org/works/10.1101/mjaymy4wns
https://api.crossref.org/works/10.1101/rackmultipart20240112-1-3xx70p_html_9746c6132a627ccc.jpg
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>9462/articles/activity/10.7554/elife.74919
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>99234
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>01113
https://api.crossref.org/works/10.1101/mjaymi4woc
https://api.crossref.org/works/10.1101/212572
https://api.crossref.org/works/10.1101/<IP_ADDRESS>6402
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>0649v1
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/32793914
https://api.crossref.org/works/10.1101/32793914
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/683624
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/784836
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/29802
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>9462/articles/activity/10.7554/elife.74919
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>9462/articles/activity/10.7554/elife.74919
https://api.crossref.org/works/10.1101/2022.04.24...
https://api.crossref.org/works/10.1101/2022.04.24...
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>9462/articles/activity/10.7554/elife.74919
https://api.crossref.org/works/10.1101/mjaymi4wmy
https://api.crossref.org/works/10.1101/872193
https://api.crossref.org/works/10.1101/32793914
https://api.crossref.org/works/10.1101/263682
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>4668
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818v1
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818
https://api.crossref.org/works/10.1101/872208
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/gb.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/g_book.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/apps/guestbook
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/gaestebuch.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/guestbook.html
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/scarbook.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/guestbook.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/album.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/default.asp
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/jax_guestbook.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/aska.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/guestbook
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/yybbs.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/seo-joy.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/guestbook.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/cgi/guestbook
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/light.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/gastenboek.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/bbs.cgi
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/guestbook.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/home.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/index.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/member/
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/modules.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/index.php/component/users/
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>3497/index.php
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>9462/articles/activity/10.7554/elife.74919

A cleaned, deduplicated list of DOIs from the above list that might have this problem:
https://api.crossref.org/works/10.1101/<IP_ADDRESS>6402
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>01113
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>99234
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>0649v1
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>03109
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>4668
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818
https://api.crossref.org/works/10.1101/212572
https://api.crossref.org/works/10.1101/263682
https://api.crossref.org/works/10.1101/29802
https://api.crossref.org/works/10.1101/32793914
https://api.crossref.org/works/10.1101/683624
https://api.crossref.org/works/10.1101/784836
https://api.crossref.org/works/10.1101/872193
https://api.crossref.org/works/10.1101/872208

Only 2 from the above list do resolve on https://doi.org:
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>4668
https://api.crossref.org/works/10.1101/2<IP_ADDRESS>7818


Feature/admin userview preprint [ENG-414]

Purpose
Adding the ability to view Preprints on the admin app user view. Also adding pagination to preprints and nodes on the admin app user view.
Changes
All Changes were conducted in the admin/users folder

Updated views.py UserView class to display preprints and modified how nodes were being displayed.
Updated user.html. Modified the template for the preprint display and pagination for preprint and nodes.
Updated serializers.py to display preprints and render nodes differently for pagination.
Created node_preprint_paginated_list.html as a template for preprints and nodes and the user view page.

QA Notes
This modified the admin app user view.
Verify pagination behavior of user nodes and preprints.
"Restore" button for deleted nodes has been removed from this template from product.
Documentation
Side Effects

Ticket
https://openscience.atlassian.net/browse/ENG-414

So far, preprints have been added to the user view, and pagination has been added to the preprints. The pagination is working, however I feel there might be a better implementation. See admin/views UserView to see how the data and Paginator are being passed.

🚢 LGTM

likewise, this PR @corbinSanders, can you please get this up-to-date with feature/fearow? (this branch includes guardian work). Let me know if you have questions.


No such module 'libpq'

Hello, I cloned PerfectTemplate and added the Perfect-PostgreSQL connector to Package.swift. After I ran swift build and generated the .xcodeproj file, when I try to compile it in Xcode, Xcode complains that there is no such module 'libpq.' It compiles when I build it without the PostgreSQL connector.
Thanks!

Hi @kurtbitner - sorry I missed this issue as it was on this repo and not the main... did you regenerate your Xcode project file after adding the postgres connector to the Package.swift file? Swift Package Manager works a little strangely like that.
If still an issue please post the contents of your Package.swift file here and I'll take a look.
Also, don't forget the Gitter room for quicker help!
https://gitter.im/PerfectlySoft/Perfect


Add New Feature: Connection Growth Over Time

Connection Growth Over Time: Plot the growth of your connections over time to visualize your network's expansion.

What characteristics will this depict? Raw number, number by company, by skills, by job titles?

I think the python package is Matplotlib, which is primarily for data visualization.

Jens finished feature 2


Failed to get file: googleapi: Error 404: File not found

$ gdrive download --recursive "https://drive.google.com/drive/folders/1zx8OX_Iq9NDwKh8RRBTuIrNTbpR9oi2H"
Failed to get file: googleapi: Error 404: File not found: https://drive.google.com/drive/folders/1zx8OX_Iq9NDwKh8RRBTuIrNTbpR9oi2H., notFound

According to the gdrive help download, the field after [options] should be <fileId>
In this case, it's 1zx8OX_Iq9NDwKh8RRBTuIrNTbpR9oi2H
Which means, you should run it this way: gdrive download --recursive "1zx8OX_Iq9NDwKh8RRBTuIrNTbpR9oi2H"

Thanks, it seems providing ID works fine.


Set tlsv1 tlsv1.1 tlsv1.2 dynamically by routes ,When is the new version support?

Set tlsv1 tlsv1.1 tlsv1.2 dynamically by routes ,When is the new version support?
Thank you for everything.
@thibaultcha
@subnetmarco
@hishamhm
@bungle

Please don’t cross post in multiple forums.
https://discuss.konghq.com/t/set-tlsv1-tlsv1-1-tlsv1-2-dynamically-by-routes-when-is-the-new-version-support/5477


Flow-broker - remote node persistence

The node is not persisted:

Steps executed:

Start dojot
Add remote node
Create flow with remote node

{
"message":"ok",
"flow":{
"name":"kelvin flow",
"enabled":true,
"id":"e860db31-da3a-40c7-88f0-8075caf1030a",
"flow":
[
{"id":"9d53e6e.1fcd818","type":"tab","label":"Flow 1"},
{
"id":"d919caa8.bca788",
"type":"device in",
"z":"9d53e6e.1fcd818",
"name":"termometro",
"device_source_id":"termometro (d4b9a4)",
"status":"false",
"_device_id":"d4b9a4",
"_device_label":"",
"_device_type":"",
"x":234.5,"y":180,
"wires":[["bce46601.d18af8"]]
},
{
"id":"bce46601.d18af8",
"type":"kelvin",
"z":"9d53e6e.1fcd818",
"name":"",
"out":"saida.temperatura",
"outFieldType":"msg",
"in":"payload.temperatura",
"inFieldType":"msg",
"x":464.5,
"y":186,
"wires":[["2cd96daa.791942"]]},
{
"id":"2cd96daa.791942",
"type":"device out",
"z":"9d53e6e.1fcd818",
"name":"termometro kelvin",
"device_source":"configured",
"device_source_msg":"",
"device_source_id":"termometro kelvin (2e5a3f)",
"attrs":"saida",
"_device_id":"2e5a3f",
"x":718.5,
"y":188,
"wires":[]
}
],
"created":1545045592651,"updated":1545045592651}
}

Execute flow

flowbroker_1                  | <11:37:04 17/12/2018> -- DEBUG: Received message: { value: <Buffer 7b 22 6d 65 74 61 64 61 74 61 22 3a 7b 22 64 65 76 69 63 65 69 64 22 3a 22 64 34 62 39 61 34 22 2c 22 74 65 6e 61 6e 74 22 3a 22 61 64 6d 69 6e 22 2c ... >,
flowbroker_1                  |   size: 103,
flowbroker_1                  |   key: null,
flowbroker_1                  |   topic: '3e2e678a-ea72-4db1-899a-3fe46e6e50ec',
flowbroker_1                  |   offset: 9,
flowbroker_1                  |   partition: 0,
flowbroker_1                  |   timestamp:<PHONE_NUMBER>605 }
flowbroker_1                  | <11:37:04 17/12/2018> -- DEBUG: Emitting new event message for subject device-data@admin
flowbroker_1                  | <11:37:04 17/12/2018> -- DEBUG: Queued event {"metadata":{"deviceid":"d4b9a4","tenant":"admin","timestamp":1545046623605},"attrs":{"temperatura":1}}
flowbroker_1                  | <11:37:04 17/12/2018> -- DEBUG: Pre-processing event {"metadata":{"deviceid":"d4b9a4","tenant":"admin","timestamp":1545046623605},"attrs":{"temperatura":1}}
flowbroker_1                  | <11:37:04 17/12/2018> -- DEBUG: [ingestor] got new device event: { metadata: { deviceid: 'd4b9a4', tenant: 'admin', timestamp:<PHONE_NUMBER>605 },
flowbroker_1                  |   attrs: { temperatura: 1 } }
flowbroker_1                  | [executor] will handle node kelvin
flowbroker_1                  | [dispatcher] remote [6bbef0072c86] took 2ms
flowbroker_1                  | [executor] hop (kelvin) result: [{"payload":{"temperatura":1},"saida":{"temperatura":274.15}}]
flowbroker_1                  | [executor] will handle node device out
flowbroker_1                  | debug: Executing device-out node...
flowbroker_1                  | debug: Updating device...
flowbroker_1                  | debug: Message is: { attrs: { temperatura: 274.15 },
flowbroker_1                  |   metadata: { deviceid: '2e5a3f', timestamp:<PHONE_NUMBER>617, tenant: 'admin' } }
flowbroker_1                  | object
flowbroker_1                  | will produce [object Object] to device-data:admin
flowbroker_1                  | <11:37:04 17/12/2018> -- DEBUG: Trying to publish someting. Current producer topics are { 'dojot.device-manager.device': { admin: 'df3dd0d8-a28d-4a37-8e38-6a41ceba38a5' },
flowbroker_1                  |   'device-data': { admin: '3e2e678a-ea72-4db1-899a-3fe46e6e50ec' } }
flowbroker_1                  | debug: ... device was updated.
flowbroker_1                  | debug: ... device-out node was successfully executed.
flowbroker_1                  | [executor] hop (device out) result: undefined

Restart flowbroker

Restarting dojot_flowbroker_1 ... done

flowbroker_1                  | Subscribed to topic 295d289f-aa03-42b9-b341-014194b1fe40
flowbroker_1                  | <11:39:10 17/12/2018> -- DEBUG: Adding a producer topic.
flowbroker_1                  | [redis] Succesfully connected to redis
flowbroker_1                  | [amqp] producer ready ...
flowbroker_1                  | info: [executor] Worker ready.
flowbroker_1                  | [redis] Cache is cleared
flowbroker_1                  | [amqp] producer ready ...
flowbroker_1                  | [amqp] consumer ready ...
flowbroker_1                  | [amqp] producer ready ...
flowbroker_1                  | <11:39:10 17/12/2018> -- DEBUG: Connections established with RabbitMQ!
flowbroker_1                  | [amqp] consumer ready ...
flowbroker_1                  | debug: ...[remoteNode] container already up with id 6bbef0072c86.

Execute flow

the flow does not executed:

flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Received message: { value: <Buffer 7b 22 6d 65 74 61 64 61 74 61 22 3a 7b 22 64 65 76 69 63 65 69 64 22 3a 22 64 34 62 39 61 34 22 2c 22 74 65 6e 61 6e 74 22 3a 22 61 64 6d 69 6e 22 2c ... >,
flowbroker_1                  |   size: 103,
flowbroker_1                  |   key: null,
flowbroker_1                  |   topic: '3e2e678a-ea72-4db1-899a-3fe46e6e50ec',
flowbroker_1                  |   offset: 15,
flowbroker_1                  |   partition: 0,
flowbroker_1                  |   timestamp:<PHONE_NUMBER>558 }
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Emitting new event message for subject device-data@admin
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Queued event {"metadata":{"deviceid":"d4b9a4","tenant":"admin","timestamp":1545047005558},"attrs":{"temperatura":5}}
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Pre-processing event {"metadata":{"deviceid":"d4b9a4","tenant":"admin","timestamp":1545047005558},"attrs":{"temperatura":5}}
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: [ingestor] got new device event: { metadata: { deviceid: 'd4b9a4', tenant: 'admin', timestamp:<PHONE_NUMBER>558 },
flowbroker_1                  |   attrs: { temperatura: 5 } }
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Received message: { value: <Buffer 7b 22 6d 65 74 61 64 61 74 61 22 3a 20 7b 22 64 65 76 69 63 65 69 64 22 3a 20 22 64 34 62 39 61 34 22 2c 20 22 74 65 6e 61 6e 74 22 3a 20 22 61 64 6d ... >,
flowbroker_1                  |   size: 101,
flowbroker_1                  |   key: null,
flowbroker_1                  |   topic: '3e2e678a-ea72-4db1-899a-3fe46e6e50ec',
flowbroker_1                  |   offset: 16,
flowbroker_1                  |   partition: 0,
flowbroker_1                  |   timestamp:<PHONE_NUMBER>633 }
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Emitting new event message for subject device-data@admin
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Queued event {"metadata": {"deviceid": "d4b9a4", "tenant": "admin", "status": "online", "reason": "statusUpdate"}}
flowbroker_1                  | [redis] storing device info on cache . . .
flowbroker_1                  | [redis] . . . device info stored successfully
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: Pre-processing event {"metadata": {"deviceid": "d4b9a4", "tenant": "admin", "status": "online", "reason": "statusUpdate"}}
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: [ingestor] got new device event: { metadata:
flowbroker_1                  |    { deviceid: 'd4b9a4',
flowbroker_1                  |      tenant: 'admin',
flowbroker_1                  |      status: 'online',
flowbroker_1                  |      reason: 'statusUpdate' } }
flowbroker_1                  | [executor] will handle node kelvin
flowbroker_1                  | [executor] Unknown node kelvin detected. Igoring.
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: [ingestor] ignoring device status update d4b9a4 e860db31-da3a-40c7-88f0-8075caf1030a
flowbroker_1                  | <11:43:26 17/12/2018> -- DEBUG: [ingestor] ignoring device status update d4b9a4 273524c8-4d75-4de9-b1a4-e8d65c1cb073
flowbroker_1                  | <11:43:32 17/12/2018> -- DEBUG: Received message: { value: <Buffer 7b 22 6d 65 74 61 64 61 74 61 22 3a 20 7b 22 64 65 76 69 63 65 69 64 22 3a 20 22 64 34 62 39 61 34 22 2c 20 22 74 65 6e 61 6e 74 22 3a 20 22 61 64 6d ... >,
flowbroker_1                  |   size: 102,
flowbroker_1                  |   key: null,
flowbroker_1                  |   topic: '3e2e678a-ea72-4db1-899a-3fe46e6e50ec',
flowbroker_1                  |   offset: 17,
flowbroker_1                  |   partition: 0,
flowbroker_1                  |   timestamp:<PHONE_NUMBER>725 }
flowbroker_1                  | <11:43:32 17/12/2018> -- DEBUG: Emitting new event message for subject device-data@admin
flowbroker_1                  | <11:43:32 17/12/2018> -- DEBUG: Queued event {"metadata": {"deviceid": "d4b9a4", "tenant": "admin", "status": "offline", "reason": "statusUpdate"}}
flowbroker_1                  | <11:43:32 17/12/2018> -- DEBUG: Pre-processing event {"metadata": {"deviceid": "d4b9a4", "tenant": "admin", "status": "offline", "reason": "statusUpdate"}}
flowbroker_1                  | <11:43:32 17/12/2018> -- DEBUG: [ingestor] got new device event: { metadata:
flowbroker_1                  |    { deviceid: 'd4b9a4',
flowbroker_1                  |      tenant: 'admin',
flowbroker_1                  |      status: 'offline',
flowbroker_1                  |      reason: 'statusUpdate' } }

the node is not persisted

After the restart of the flowbroker, the remote node is lost.

the node is not removed because it does not exist:

curl -X DELETE ${DOJOT_HOST}/flows/v1/node/kelvin -H "Authorization: Bearer ${JWT}" -H "content-type: application/json"
{
"message": "Failed to remove node."
}

flowbroker_1                  |   body: { message: 'No such container: 609f927721f8' } }

the node is not added because it already exists:

curl -X POST ${DOJOT_HOST}/flows/v1/node -H "Authorization: Bearer ${JWT}" -H "content-type: application/json" -d '{"image": "mmagr/kelvin:latest", "id":"kelvin"}'
{
"message": "Failed to add node: ... This image already up. Image: mmagr/kelvin:latest"
}

flowbroker_1                  | debug: ... This image already up.


Error creating WinUI blank App

Hi,
I am trying to create a new Blank WinUI App (C#) but getting this error:

I am using Visual Studio Version 16.4.5
Thanks,
Jassim

@jrahma Are you seeing this after just creating a blank app ? Are there any other changes to the blank app ? Can you share a callstack ?

It's just when I try to create a new blank app like this:

@danzil can you help ?

@jrahma, do you have the following 3 Visual Studio workloads installed?

.Net Desktop Development
Desktop Development with C++
Universal Windows Platform development

@danzil only (Desktop Development with C++) was not installed but I am getting the same error even after installing it.

Bummer, that works for me (I'm on an even newer VS pre-release version). Any chance you could start VS using the "devenv.exe /log file.log" command and try reproducing again, and see if the log file reveals more details on what's failing? See the VS /Log switch for details on this flag.
Thanks for your help identifying the issue!

@danzil here is the log file:
winuilog.log

Thanks for sharing the log. I'm trying to figure out what's going on, it looks like a path is not being formed correctly - don't know why yet.

@jrahma while I wait for an answer from the Visual Studio team, I installed the same version of VS that you have (and made sure I checked all the 3 boxes I mentioned above). The same scenario works for me.  Are you able to create the equivalent (a regular) UWP C# app? Have you made any additional changes to your VS installation that I should know about in order to reproduce? Thanks!

@danzil No changes at all, just the VS only with no special configuration
yes, I am able to create UWP and Mobile apps too (Xamarin)

@jrahma sorry about the delay, this fall off my radar. Are you still having problems with this?


Support hex prefix (&H) on values in DATA

This fix will also include support for binary (&B) and octal (&O) formatted numbers.