Inconsistent with type genus: failing check

See https://disc-genomics.uibk.ac.at/seqcode/names/23484

Another inconsistent with type genus bug - names ending in a (e.g., Duberdicusella in my draft registry list [seqco.de/r:xqyhj6of])

This name has been deleted since, but it was probably related to the inconsistent grammar issue already solved


QPY serialization fails for custom gates

Environment

Qiskit Terra version: 0.20
Python version:  3.8
Operating system:  Windows 10

What is happening?
To support string parameters in gates I subclassed the qiskit Gate. Using this in circuits works fine, but not with the QPY serialization. The serialization with QPY works, but deserialization results in an error CircuitError: "Invalid param type <class 'str'> for gate wait."
How can we reproduce the issue?
A minimal example:
import io
import qiskit
import numpy as np
from qiskit.circuit import QuantumCircuit
from qiskit.circuit import qpy_serialization
from qiskit.circuit import Gate as QiskitGate
from qiskit.circuit.exceptions import CircuitError

class Gate(QiskitGate):

    def validate_parameter(self, single_param):
        if not isinstance(single_param, (int, float, str, bool, dict, qiskit.circuit.ParameterExpression)):
            raise CircuitError(f'parameter of type {type(single_param)} not supported')
        return single_param

ramsey=QuantumCircuit(2,2)
ramsey.rx(np.pi/2, 0)
gate=Gate('wait', 1, [10, 'special'])
ramsey.append(gate, [0])
ramsey.rx(np.pi/2, 0)

print(ramsey.draw())

with io.BytesIO() as fid:
    qpy_serialization.dump([ramsey], fid)
    b=fid.getvalue()

with io.BytesIO(initial_bytes=b) as fid:
    circuits = qpy_serialization.load(fid)

What should happen?
Deserialization should be supported as well.
Any suggestions?
No response

Can I have a go at this issue?


[Web] [CanvasKit] FittedBox misplaces HtmlElementView

The HtmlElementView does not fill the card as expected. It works in DomCanvas.
CanvasKit

DomCanvas

import 'dart:html';
import 'dart:ui' as ui;

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  void initState() {
    super.initState();
    ui.platformViewRegistry.registerViewFactory(
      '123',
      (int viewId) => DivElement()
        ..style.backgroundColor = 'blue'
        ..style.border = 'none',
    );
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Container(
          width: 300,
          height: 300,
          child: Card(
            color: Colors.red,
            child: FittedBox(
              fit: BoxFit.fill,
              child: SizedBox(
                width: 10,
                height: 10,
                child: HtmlElementView(viewType: '123'),
              ),
            ),
          ),
        ),
      ),
    );
  }
}

[✓] Flutter (Channel master, 1.20.0-8.0.pre.55, on Mac OS X 10.15.5 19F101, locale en-CH)
    • Flutter version 1.20.0-8.0.pre.55 at /Users/ben/flutter
    • Framework revision aa0125387c (4 hours ago), 2020-07-10 21:49:40 -0700
    • Engine revision 9b3e3410f0
    • Dart version 2.9.0 (build 2.9.0-21.0.dev 06cb010247)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/ben/Library/Android/sdk
    • Platform android-29, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.8.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.41.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.7.1

[✓] Connected device (3 available)
    • macOS (desktop)  • macos      • darwin-x64     • Mac OS X 10.15.5 19F101
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 83.0.4103.116

• No issues found!

You might should explain what you are trying. I just see some boxes without any future explanation.

@rekire thanks, I updated the issue to better explain what the expected outcome is.

flutter doctor -v
[✓] Flutter (Channel master, 1.20.0-8.0.pre.102, on Mac OS X 10.15.5 19F101,
    locale en-GB)
    • Flutter version 1.20.0-8.0.pre.102 at /Users/taha/Code/flutter_master
    • Framework revision f95f46e910 (8 hours ago), 2020-07-15 01:46:01 -0400
    • Engine revision be7595bafb
    • Dart version 2.9.0 (build 2.9.0-21.0.dev 20bf2fcf56)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-30, build-tools 30.0.0
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.47.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (5 available)
    • SM M305F (mobile)      • 32003c30dc19668f          • android-arm64  •
      Android 10 (API 29)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS
      13.5.1
    • macOS (desktop)        • macos                     • darwin-x64     • Mac
      OS X 10.15.5 19F101
    • Web Server (web)       • web-server                • web-javascript •
      Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript •
      Google Chrome 83.0.4103.116

• No issues found!

@hterkelsen / @yjbanov the example provided in the issue still produces the wrong result:

I'm unable to repro with the latest engine. I just tried this with a local build of the engine and got this:

@hterkelsen I can still reproduce the issue on the latest master. It looks like this only happens in HiDPI mode though. When running Chrome with --high-dpi-support=1 --force-device-scale-factor=1 the issue disappears.


redis.Client#XReadUntilResult(): also re-try timeout errors

An XREAD with BLOCK sets a socket timeout of BLOCK+10s. If reading the response hits that timeout, it's not re-tried due to BLOCK. Hence, we have to re-ty it by ourselves.
ref/IP/54215

CC @julianbrost @tbauriedel

... so the user could run into ref/IP/54215 depending on their config? Scary IMAO. In contrast, my implementation works always.

Scary IMAO. In contrast, my implementation works always.

No, it is not! If you as a user configure 30s as a timeout, then you should not be surprised if Icinga DB gives up after exactly these seconds and thus it is not something that Icinga DB should keep retrying.

As I mentioned above, retrying it might fix the issue, but we should consider dropping the default BlockTimeout and only setting it if explicitly configured by the user.

That block in the XREAD is set for a reason, see cd96f0de6f33b6750ba44d3934d4380a62ab14a6. So if you'd just undo that, that problem would probably come back.

... so the user could run into ref/IP/54215 depending on their config?

Please don't just reference internal tickets as part of your argument without any kind of summary. It's annoying to look up the whole ticket to get what you're trying to say and for everyone outside of Icinga, it's even impossible to follow.


Version 1.0 | Initial Release

Version 1.0 | Initial Release

Shows SystemExit: None when discord messages are sent successfully. This is because we trigger discord_messager.py as subprocess when a new telegram message is sent in channel_send

await discord_client.wait_until_ready()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: 'await' outside function
show this bug can I help?


Fix examples DPI scaling when scaling is non-integer

I recently ran into an issue where DPI scaling on Windows wouldn't work properly if scaling by a non-integer value (125%, 150%, 175% etc). My program was based on the example's support/mod.rs file.
When you start the program (not changing DPI while program is already running), the GUI would be offset, and the hitboxes for the buttons wouldn't line up with the buttons themselves. I re-tested this on the imgui-rs hello-world example, and the same thing happened.
Changing the HiDpiMode to HiDpiMode::Default in mod.rs seems to fix the issue - non-integer scaling values work correctly when the program is started, and the UI is still usable if you change DPI while the program is running.
I'm not sure if this is the correct way to fix this problem though, so I'm leaving this as a draft PR.
I also changed the value in the imgui-gfx-examples folder, but I haven't tested that as I haven't got it to run on my computer.

absolutely neither am i. if anyone knows or has a good understanding of this issue, it would be very appreciated

I had a look at the git blame to figure out where the "Rounded" came from, and it appears to be from this commit 3 years ago: "Restrict DPI factor to integers in support code" https://github.com/imgui-rs/imgui-rs/commit/c22035250a3824e5297b450b93a836788961c2e5

Restrict DPI factor to integers in support code
The library still supports fractional DPI factors, but it seems like a
good idea to use integer factors in examples to avoid blurry fonts and
other issues which might give the wrong impression.

https://github.com/imgui-rs/imgui-rs/blob/c22035250a3824e5297b450b93a836788961c2e5/imgui-examples/examples/support/mod.rs#L27-L29
Oddly enough, using the "Default" (non-rounded) option looks good on Windows at all scaling values (it is not blurry). The only time it is blurry is if you change DPI while the program is running, but after restarting the program it looks good again.

What I've found worked well is:

HiDpiMode::Default as in this PR
Round the font size to nearest integer (very important) - e.g let font_size = ((13.0 * hidpi_factor) as f32).round();
Increase the oversampling, something like FontConfig { oversample_h: 4, oversample_v: 4, ...} (no idea if those values are optimal - I think I arbitrary shoved in 4 and got less aliasing weirdness when subtly moving text around in the UI, haven't investigated the range of values)

I've checked this on Linux (with quite a variety of DPI screens), two Windows machines (on a 23" 4K monitor and a 21" 1080p one), and one macOS display (Macbook Pro) and it seemed to work reasonably well in all cases.
The only other major things which helps a little are the freetype rasterizer (#496) which mainly helps with smaller font sizes (e.g on 1.0 scaling factor screens); and I've not yet investigated what impact using a linear frame-buffer, so the fonts are blended in a "gamma-correct" manner, but in theory should help font rendering also.

Round the font size to nearest integer (very important) - e.g let font_size = ((13.0 * hidpi_factor) as f32).round();

I since realized, at least when using winit, scaling by the hidpi_factor is wrong and results in things being "doubly scaled".
If you just set let font_size = 13.0; then draw everything without considering the scaling factor, it all "just works" - as in if you force the scaling to 1.0, it looks exactly half the size of same window when forced to HiDPI factor of 2.0 (i.e assuming that factor is determined properly, your UI will look same on different pixel-density screens)
I think by default everything in imgui_winit_support is using "logical pixels", which as described here https://docs.rs/winit/0.25.0/winit/dpi/index.html accounts for the scaling :partying_face:

I've made a PR with a bunch of changes relating to this, which I think should make the standalone examples work about as well across different DPI screens as I can get - #570

Ah nice - I don't think there's any need for this PR anymore (besides as a record of previous discussion), so I'm gonna close it.

Hi, sorry to reopen this thread, but this isn't working as intended on my mac (using winit).
I can get added fonts to display correctly by doing the following:
let font_size = 13.0 * window.scale_factor();
imgui.io_mut().font_global_scale = (1.0 / window.scale_factor()) as f32;

However, it seems like this should be handled by the winit platform.


Optimize response headers from StoreResponse

There have been some improvements in .Net SDK regarding response headers.
https://msdata.visualstudio.com/CosmosDB/_git/CosmosDB/pullrequest/791781
https://msdata.visualstudio.com/CosmosDB/_git/CosmosDB/pullrequest/444179
We should port these ideas to Java V4 SDK.

@kushagraThapar closing this issue as the linked PR closes it.


SurrealDB : ASSERT Error ( vector_dimensions )

Hello,
when I use surrealdb as a store, I always get this error:
field: Idiom([Field(Ident("embedding"))]), check: "(array::len($value) = 1536) OR (array::len($value) = 0)" })
when I add a document to the store :
    let store = StoreBuilder::new()
        .embedder(embedder)
        .db(db)
        .vector_dimensions(1536)
        .build()
        .await
        .unwrap();

    // Intialize the tables in the database. This is required to be done only once.
    store.initialize().await.unwrap();

    match store
        .add_documents(&docs, &VecStoreOptions::default().with_score_threshold(0.8))
        .await
    {
        Ok(_) => {}
        Err(e) => {
            println!("{:?}", e) // <---------------- here
        }
    };

the problem is here in "surrealdb.rs".
async fn create_collection_table_if_not_exists(&self) -> Result<(), Box<dyn Error>> {
        if !self.schemafull {
            return Ok(());
        }

        let vector_dimensions = self.vector_dimensions;

        match &self.collection_table_name {
            Some(collection_table_name) => {
                self.db
                    .query(format!(
                        r#"
                            DEFINE TABLE {collection_table_name} SCHEMAFULL;
                            DEFINE FIELD text                      ON {collection_table_name} TYPE string;
                            DEFINE FIELD embedding                 ON {collection_table_name} TYPE array ASSERT (array::len($value) = {vector_dimensions}) || (array::len($value) = 0);
                            DEFINE FIELD embedding.*               ON {collection_table_name} TYPE float;
                            DEFINE FIELD metadata                  ON {collection_table_name} FLEXIBLE TYPE option<object>;"#
                    ))
                    .await?
                    .check()?;
            }
            None => {
                let collection_table_name = &self.collection_name;
                dbg!(&collection_table_name);
                self.db
                    .query(format!(
                        r#"
                            DEFINE TABLE {collection_table_name} SCHEMAFULL;
                            DEFINE FIELD text              ON {collection_table_name} TYPE string;
                            DEFINE FIELD embedding         ON {collection_table_name} TYPE array ASSERT (array::len($value) = {vector_dimensions}) || (array::len($value) = 0);
                            DEFINE FIELD embedding.*       ON {collection_table_name} TYPE float;
                            DEFINE FIELD metadata          ON {collection_table_name} FLEXIBLE TYPE option<object>;"#
                    ))
                    .await?
                    .check()?;
            }
        }

        Ok(())
    }

simply remove all  (temporary solution) :
 ASSERT (array::len($value) = {vector_dimensions}) || (array::len($value) = 0)
and everything works properly.
or you need to find the right vector_dimensions ?  ( 1536 )
I tried this, but it doesn't work :
    let docs = html_loader
        .load()
        .await
        .unwrap()
        .map(|x| x.unwrap())
        .collect::<Vec<_>>()
        .await;

    let size = docs[0].page_content.len(); //<---- not de right size

(minor remark : vector_dimensions must take usize as parameter, not i32 I think )
thank you in advance for your help.

Yes you need to find the right size for the specific model. I added this as db may perform optimizations if the size is well known. Usually I let it run for the first time and it should say the exact error on what was expected and I then change the size. Other option is to manually call embed_query() or embed_documents and check the len of the vector.
One option would be to make the dimensions size optional.
Makes sense to convert it to usize.

so we have to recreate  "add_documents()" for Store ?
why not expose a function in the Store that returns the size of the vectorization?

why not expose a function in the Store that returns the size of the vectorization?

I would expect the size to be static for a table that is well known ahead of time which is either const, coming from config file/environment variables. It is up to you at how you want to implement get_vector_diemnsion_size.
async fn main() {
  let size = get_vector_dimension_size();

  let store = StoreBuilder::new()
    .embedder(embedder)
    .db(db)
    .vector_dimensions(size)
    .build()
    .await
    .unwrap();
}

If you want to know it on the fly you can do the following. I would highly suggest against this as you would be paying for unnecessary cost and compute. It might work for demo/POC purpose.
async fn main() {
  let openai = OpenAiEmbedder::default();
  let sample_vector = openai.embed_query("Sample embedding").await.unwrap();
  let vector_size = get_size_from_embeddings(sample_vector);

  let store = StoreBuilder::new()
    .embedder(embedder)
    .db(db)
    .vector_dimensions(vector_size)
    .build()
    .await
    .unwrap();
}

We could even go further and add this check before the db calls are made such that db connection is not wasted given the vector size can be large based on the embedding model you use.

@prabirshrestha thank you for your suggestions ,
for the first suggestion,
we have an "=" check, so we must have the same size,
ASSERT (array::len($value) = {vector_dimensions}) || (array::len($value) = 0)
why not use " <= " , it's more flexible ?
ASSERT (array::len($value) <= {vector_dimensions})
and we'll no longer need :
|| (array::len($value) = 0)

The reason for exact dimensions is the db may optimize indexing.

Closing this for now as it is expected.


Expected URL scheme 'http' or 'https' but no colon was found okhttp3.HttpUrl$Builder.parse

Hi! The crush happens during making request via okhttp3. I checked correctness of url, which is used to make request. We couldn't reproduce current bug. But, some users continue crashing.
Also, I notice from stacktrace that the crash happens when url is got from cache.
okhttp3.HttpUrl$Builder.parse (HttpUrl.java:1333)
okhttp3.HttpUrl.get (HttpUrl.java:916)
okhttp3.Request$Builder.url (Request.java:165)
okhttp3.Cache$Entry.response (Cache.java:706)
okhttp3.Cache.get (Cache.java:214)
okhttp3.Cache$1.get (Cache.java:145)

Dupe of https://github.com/square/okhttp/issues/6453


#region folding/expanding stops working with PowrShell ps1 file

I have the latest update of vscode. i added #region stuff #endregion stuff to portions of my code (.ps1 file) and it all worked well. while most of the regions were collapsed, i did a search and replace for a line of code, selected replace all. afterwards my collapsed regions were not expandable. Even if i removed the #region, the code inbetween dissappeared. I opened in ISE editor and everythign works as expected collapse/expand and code is there. so it's an issue with vscode.s too large to send. Please paste.

/needsMoreInfo

Version: 1.39.2 (system setup)
Commit: 6ab598523be7a800d7f3eb4d92d7ab9a66069390
Date: 2019-10-15T15:35:18.241Z
Electron: 4.2.10
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Windows_NT x64 10.0.14393
This seems to affect more than regions. i can't expand or collapse anything, such as functions, if statements, etc. Have not experience this problem ever, not sure if it's coincidence or result of trying to use #region .
Step 1: open ps1 file, expand collapse different areas.
Step2: add #region #endregion to various sections of code.
Step3: Do a search and replace (CNTRL+H) and replace all
Now nothing is able to collapse and expand.
Resolution: close vscode, reopen vscode. seems to work now.

Please file this against the powershell extension


Settings -> Setup

Wrong instructions ... its Setup -> Domains   not Settings -> Domain in my  UI

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

ID: f0302478-af73-742b-a7d2-536375b92986
Version Independent ID: 30f173d3-559b-85fc-6bdd-eb4fcf59d183
Content: Add or edit custom DNS records in Office 365 - Microsoft 365 admin
Content Source: microsoft-365/admin/dns/add-or-edit-custom-dns-records.md
Service: o365-administration
GitHub Login: @pebaum
Microsoft Alias: pebaum

@eino-makitalo - Thank you for submitting feedback.
PR #1659  has been created by @D3Design to fix and close this issue once the PR is merged.
Thank you and we appreciate your contribution to make the docs better!


Features

Hello Microverse

Added HTML
Added CSS
Added Linters

Merging to the main branch to the feature branch

Hi @Akorede3133,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.
Invalid Code Review Request
You have submitted the wrong PR from the Hello Microverse project to be reviewed as Activity name: Portfolio: details popup window.
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag @topeogunleye in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.


oneview_volume is not  idempotent

Scenario/Intent
When I execute oneview_volume multiple times, it returns error from second time. It means oneview_volume is not idempotent. It seems oneview_volume_template as well.
  File "/Users/tak/.pyenv/versions/3.6.9/lib/python3.6/site-packages/hpOneView/connection.py", line 397, in __do_rest_call
    raise HPOneViewException(body)
hpOneView.exceptions.HPOneViewException: ('Unable to parse JSON request body.', {'errorSource': None, 'nestedErrors': [], 'errorCode': 'REQUEST_DATA_READ_ERROR', 'data': {}, 'recommendedActions': ['Refer to the API specification to determine the appropriate JSON request body for this request, then try the request again.'], 'details': 'There was a problem near properties at line 1, position 1297.', 'message': 'Unable to parse JSON request body.'})

Environment Details

Module Version: oneview-ansible-5.4.0
Ansible Version: ansible 2.8.5
OneView Appliance Version: Firmware 5.00.00-0400525
OneView Client API Version: 1200
Python Version: 3.6.9
python-hpOneView SDK Version: hpOneView 5.0.0
Platform: [OS distribution and release version]

Steps to Reproduce
Execute playbook like below.
[Playbook]
    - name: "Get storage pool info"
      oneview_storage_pool_facts:
        hostname: "{{ ov_hostname }}"
        username: "{{ ov_username }}"
        password: "{{ ov_password }}"
        api_version: "{{ ov_api_ver }}"

    - name: "Get volume template info"
      oneview_storage_volume_template_facts:
        hostname: "{{ ov_hostname }}"
        username: "{{ ov_username }}"
        password: "{{ ov_password }}"
        api_version: "{{ ov_api_ver }}"

    - name: "Create volume"
      oneview_volume:
        hostname: "{{ ov_hostname }}"
        username: "{{ ov_username }}"
        password: "{{ ov_password }}"
        api_version: "{{ ov_api_ver }}"
        state: present
        data:
          properties:
            name: tak_test_vol01
            description: "This is test"
            size:<PHONE_NUMBER>
            storagePool: "{{storage_pools | json_query(\"[?name=='CPG-SSD'].uri\") | join('')}}"
          templateUri: "{{storage_volume_templates | json_query(\"[?name=='tak-test-vol-template'].uri\") | join('')}}"

Expected Result
I hope to get return code "OK" from Ansible when volume already exists.
Actual Result
return error when volume already exists.

@fideltak , Sorry for the delayed response here.
Thank you for reporting this issue and I was able to reproduce it in my environment.
The issue is, this resource's request body of POST and PUT is not the same as other resources.
The "properties" and tempalteUri fields are only acceptable for the create operation, not for the update operation.
Even the GET operation response body doesn't have these fields. Because of that the comparison of the resource data and the input data is failing and the library is always trying to update the resource even though there is no actual difference in the configuration.
Created a branch with the fix, please try and let me know.
https://github.com/HewlettPackard/oneview-ansible/tree/bug_fix/volume/update

@sijeesh Thanks, I have checked them. LGTM.

Fixed the issue in latest ansible SDK


Use constructor instead of cWillMount for correct injection order

React Boilerplate

[x] You have followed our contributing guidelines
[x] Double-check your branch is based on dev and targets dev
[x] Pull request has tests (we are going for 100% coverage!)
[x] Code is well-commented, linted and follows project conventions
[x] Documentation is updated (if necessary)
[x] Internal code generators and templates are updated (if necessary)
[x] Description explains the issue/use-case resolved and auto-closes related issues

Changelog
This is an alternative to @tonyex52's fix for #2314 in his PR #2467.
Instead of making injection Promise-based (which has a few drawbacks not addressed in #2467), we simply do the injection from the constructor.
It'll guarantee that things happen in the correct order, as described by @flameddd in #2314.
All tests are passing with no changes required.
I also did the same thing for reducer injection, if only for consistency.
Also, a small doc update that was missed when we switched the default saga injection mode to DAEMON.

Coverage remained the same at 100.0% when pulling f08dace7116b7614691e6f9021e6cd76f61e3b25 on saga-injection-fix into 75dd475bd67c1595d7b7c63bcfb493cef17df457 on dev.

Coverage remained the same at 100.0% when pulling f08dace7116b7614691e6f9021e6cd76f61e3b25 on saga-injection-fix into 75dd475bd67c1595d7b7c63bcfb493cef17df457 on dev.


Improve spec

Coverage remained the same at 93.75% when pulling 9149a6553f4751b3ed3b0ee7082954053a2e80b9 on improve-spec into f16591de7642c14c5324d27f419100254454f21b on master.

Coverage remained the same at 93.75% when pulling 9149a6553f4751b3ed3b0ee7082954053a2e80b9 on improve-spec into f16591de7642c14c5324d27f419100254454f21b on master.

Coverage remained the same at 93.75% when pulling e01a0018860c1e726ba93334a40995866b507717 on improve-spec into f16591de7642c14c5324d27f419100254454f21b on master.


Minor changes to ensure this works

Hi Adam!
Sorry to be a pain, could we do the following?

Apply to dev branch (it's a bit further ahead)
Replace tabs with 4 spaces (a few spots) - I can do this afterwards, low priority
Send-SlackApi validatescript is a good idea, but forces us to use the config file - we can swap the if logic to this:  -not $_ -and -not $Script:PSSlack.Token to check if parameter value ($_) is empty

The Send-SlackMessage logic that was simplified is a little annoying, but avoids this case:

I have Uri and Token defined in my config (or even just Uri)
I want to use an explicit token via parameter.  Because the default value is set for $Uri, the if(-not $Uri) logic in the change means that if Uri is set in the config, the Token parameter will never be used

Happy to tweak that logic if it's off (will take a peak this weekend), but would prefer the behavior of:

Prefer specific parameters to configs
Prefer Token to Uri (given that everything uses tokens)

Sorry again!


Export athenz-tenant-cert.expiry.seconds metric

Metric added in https://github.com/vespa-engine/vespa/pull/4941

👍


Redesign character skins

Skins for all characters need to be redesigned in a more artistic and vivid manner. Current checklist:

Turtle
Crab
Shrimp
Sardine
Neptune grass
Plastic bag

To do:

Create new skins for the following characters, possibly using Illustrator, copy image functionality:

crab
shrimp
sardine
neptune grass
plastic bag

Cleanup width/height through the use of appropriate new properties.

The following characters yet need to be redesigned:

shrimp
sardine
plastic bag

Done and merged to master


'About' menu not working at al

For the last few versions, when I click on 'About' - nothing happens. All other menus work perfectly. The The 'About' menu link is to... http://192.168.2.XX:8099  ... Is this right?

I will test again. That happened a few version ago due to a bug.

This has been fixed in v1.4.1.

Any new comments?

Closing due to lack of interest.


Add clarity in documentation for editing sync.yml when permissions don't allow editing the file

There are reports that people outside of the organization or who don't have necessary permissions can't edit sync.yml files and so going to clarify in documentation what to do in those cases, such as

[x] Clarify that you can open an issue asking us to add you to the sync.yml
[ ] Create an issue template for that case above ^
[x] Clarify what you can do so that you can fork and edit

a PR in the ottrproject.org repo addresses the first and last bullet point above. A PR in this repo will address the 2nd one shortly


feat(indy): add choice for taa mechanism

todos:

tests
ensure this is complete and correct

Signed-off-by: Moriarty<EMAIL_ADDRESS>BREAKING CHANGE: the transaction author agreement acceptance mechanism was previously automatically the first acceptance mechanism from the acceptance mechanism list. With this addition, the framework never automatically selects the acceptance mechanism anymore and it needs to be specified in the transactionAuthorAgreement in the indyLedgers agent config array.

closes #707

Codecov Report

Merging #849 (78c0cf8) into main (16b316c) will decrease coverage by 13.18%.
The diff coverage is 55.55%.

@@             Coverage Diff             @@
##             main     #849       +/-   ##
===========================================
- Coverage   87.59%   74.41%   -13.19%
===========================================
  Files         459      459
  Lines       11175    11181        +6
  Branches     1897     1901        +4
===========================================
- Hits         9789     8320     -1469
- Misses       1324     2671     +1347
- Partials       62      190      +128

Impacted Files
Coverage Δ

packages/core/src/modules/ledger/IndyPool.ts
80.48% <ø> (-4.88%)
:arrow_down:

...e/src/modules/ledger/services/IndyLedgerService.ts
41.14% <55.55%> (-22.84%)
:arrow_down:

...ore/src/modules/proofs/ProofResponseCoordinator.ts
22.22% <0.00%> (-77.78%)
:arrow_down:

.../src/modules/proofs/models/RetrievedCredentials.ts
25.00% <0.00%> (-75.00%)
:arrow_down:

...protocol/v1/handlers/V1RequestCredentialHandler.ts
23.25% <0.00%> (-74.42%)
:arrow_down:

.../core/src/modules/credentials/CredentialsModule.ts
20.97% <0.00%> (-69.76%)
:arrow_down:

...ules/proofs/handlers/RequestPresentationHandler.ts
27.77% <0.00%> (-63.89%)
:arrow_down:

...protocol/v2/handlers/V2RequestCredentialHandler.ts
30.55% <0.00%> (-63.89%)
:arrow_down:

...s/core/src/modules/proofs/services/ProofService.ts
22.78% <0.00%> (-63.02%)
:arrow_down:

...s/protocol/v1/handlers/V1IssueCredentialHandler.ts
33.33% <0.00%> (-59.26%)
:arrow_down:

... and 68 more

Continue to review full report at Codecov.

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

@TimoGlastra @blu3beri @karimStekelenburg any feedback welcome

Also could you add some tests?

This is great @morrieinmaas!
The new transactionAuthorAgreement needs to be documented. Could you also create a PR in aries-javascript-docs to add this property? It should be added here: https://github.com/animo/aries-javascript-docs/blob/main/guides/tutorials/agent-config.md#indyledgers

Yes I will do!

The documentation is growing nicely!


Support multiple daemon modes

Features and tasks:

[ ] Raw Erlang term support
[ ] RPC mode
[ ] Erlang distribution mode
[ ] Document each
[ ] Add "Daemon" section to README, with notes about modes (and links to example use in docs)

The following Rust libraries may be useful for this:

https://docs.rs/eetf/latest/eetf/
https://docs.rs/erl_dist/latest/erl_dist/
https://docs.rs/erl_rpc/latest/erl_rpc/


Update google-analytics.md

 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.


Add AppVeyor config

I'm guessing the AppVeyor doesn't have access to mess with plaidml/plaidbench; I'm having trouble getting it to test this PR.  It worked fine on my fork at earhart/plaidbench, though.


Reserved Keywords

Hi,
Is "firstSegment", "secondSegment" and "thirdSegment"  reserved keywords?
Every time I try to create a state-machine with a state named "firstSegment" it gives me an error
pseudoCode:
{'name': 'master', 'children': ['firstSegment', 'segment2', 'segment3', 'finalSegment']}

self.machine = Machine(model=self, states=self.states, transitions=self.transitions, auto_transitions=False, ignore_invalid_triggers=True, initial='myInitialState')

self.graph.draw('my_state_diagram88.png', prog='dot')

self.graph.draw('my_state_diagram88.png', prog='dot')
File "C:\Anaconda2_x64\lib\site-packages\pygraphviz\agraph.py", line 1474, in draw
data = self._run_prog(prog, args)
File "C:\Anaconda2_x64\lib\site-packages\pygraphviz\agraph.py", line 1335, in _run_prog
raise IOError(b"".join(errors))
IOError

Hi @guilhermecgs,
that looks like an issue with pygraphviz. Unfortunately, the pygraphviz error output is (ironically) kind of bugged (b"".join(error) does not work as expected I guess). I assume something went wrong during the generation of the graph and pygraphviz cannot convert it into a valid output.
I suggest that you run a debugger and set a breakpoint exactly at that line (1335) or just print out the content of error (which requires an extra line of code in pygraphviz). Alternatively you can print self.graph.string() to get the content of the graph.
If you can provide a minimal example to reproduce the bug I can help to track down the bug.

@aleneum , I will do the additional debugging and inform you
btw, I can change the state name and make it work. So, it is not something critical...  It is just a curiosity...

@guilhermecgs, that would be nice since it sounds like a really strange side effect (which makes me curious as well :) ). Afaik, there are no reserved key words for states. Maybe some dot/Graphviz naming collision but thats just random guessing.

Hi @guilhermecgs,
were you able to do some debugging? I experienced IOErrors if I tried to save graphs to directories or file locations with wrong permissions.

I close this for now due to lack of information. It sounds like a side effect though. Feel free to reopen if you have further cues to investigate.


Add parameters for QoS of update and feedback topics

Analogous to what's being added to the Python implementation in #53

Testing with rviz_default_plugins

Linux
Linux-aarch64
macOS
Windows


First request takes forever

This is with some extra logging in wait_for_service. I've cut the log and added some comments below:
// First readiness check at 28m56s
dispatcher-55cc9c7b8d-snh96 2020-10-30T17:28:56 stderr F Starting wait loop for http://function-vanilla-hello:8081/readinessProbe
function-tracing-hello 2020-10-30T17:28:57 stderr F UP hello: pod up (tracing enabled: true)
...
// Tracing function is ready at 28m59s
function-tracing-hello 2020-10-30T17:28:58 stderr F Serverless function has started listening on port 8081
function-tracing-hello 2020-10-30T17:28:59 stderr F INITIALIZE hello: spawning child process to monitor function
function-vanilla-hello-jxvlm 2020-10-30T17:28:57 stderr F UP hello: pod up (tracing enabled: false)
...
// Vanilla function is ready at 28m58s
function-vanilla-hello-jxvlm 2020-10-30T17:28:58 stderr F Serverless function has started listening on port 8081
function-vanilla-hello-jxvlm 2020-10-30T17:28:58 stderr F INITIALIZE hello: spawning child process to monitor function
...
// First readiness check fails at 31m07s (over 1m after it was issued)
dispatcher-55cc9c7b8d-snh96 2020-10-30T17:31:07 stderr F http://function-vanilla-hello:8081/readinessProbe produced error error trying to connect: tcp connect error: Connection timed out (os error 110)
...
// Second readiness check succeeds at 31m08s (instantly after a 1s delay)
dispatcher-55cc9c7b8d-snh96 2020-10-30T17:31:08 stderr F http://function-vanilla-hello:8081/readinessProbe succeeded.

Question: Why did the first readiness check take an entire minute to fail?
Answer (I think): It takes a while for a network connection to definitively fail. But, our retry loop is written with the assumption that the failure will be almost instantaneous. I think we need to figure out how to make an HTTP request and abort it within a second if it doesn't succeed.

This could work: https://docs.rs/hyper-timeout-connector/0.1.0/hyper_timeout_connector/

This is now fixed using that timeout connector!


event of pagination dropdown

i want to call a function on pagination dropdown. when i make 10 records to 20 records, some function needs to be executed. how can i call that? can you give some hints?

@ssjogus, there's no any hook for that, but I can provide it in next version :) The next version will release in these day

Fix it on v1.3.1, check example from 8f4d57b


Updated Inter font to fix vertical stretching issue and for lighter typefaces

The PR fix an issue with Inter fonts which look stretched vertically.
It just replace the fonts with latest version downloaded from Google Fonts.
The new fonts are a little lighter too: 300kb vs 350kb per font.
https://github.com/AvaloniaUI/Avalonia/assets/3595443/51814fb9-f23e-4764-9b00-092a7f67a1ec
For more details: https://github.com/AvaloniaUI/Avalonia/issues/12663

You can test this PR using the following package version. 11.0.999-cibuild0038796-beta. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@Gillibald do you remember the ClearType issue with a newer version of the Inter font. Did you double check this version displays it properly?

We can see ClearType working in the video


Upgrading Postal

I have installed Postal from package as that is the default installation method in the documentation. However by looking at the latest stable and beta links it seems if I'm not incorrect the stable version is bit less than year old and beta is even older?
Would it be possible to upgrade the packages?
Alternatively is there instructions how to convert existing package based installation to git?

Packaging is handled by @adamcooke and atech so its down to them. There are more than a few useful PRs outstanding so it would be better to get those merged before a release.
Using git-based tends to be more complex as you could have made changes to the files which could conflict with changes from the repo so its easier for most to stick with packages.
Postal is mostly stable so you shouldn't have any major problems with the latest releases code, do make an issue or reply if you need more information or get stuck somewhere.


Release 1.6.0 faulty quick installation URL (404 error)

The quick installation code block states the following image url:
flash https://github.com/hypriot/image-builder-rpi/releases/download/v1.6.0/hypriotos-rpi-v1.5.1.img.zip

However, this leads to a 404 error. The correct URL would be this:
flash https://github.com/hypriot/image-builder-rpi/releases/download/v1.6.0/hypriotos-rpi-v1.6.0.img.zip

Thanks @krfricke. I've fixed the release text.


Add and Remove Books

Add and Remove Books plain JavaScript with objects

Created a collection that keeps a list of books using an array of objects.
Added a function to add a new book to the collection, with title and author.
Added a function to remove a book from the collection using the array filter().
Added a function to Display all books saved in the collection in the top part of the page.
When a user clicks the "Add" button a new book is added to the collection and the new book is displayed on the page.
When a user clicks the "Remove" button the correct book is removed from the collection and the correct book disappears from the page.
Data are preserved in the browser's memory by using localStorage.

Oooh soory.
I totally forgot about the readme file.
my bad


tsdb-usage doesn't need storage-schemas.conf

because it generates all metrics by itself with known interval.
technically, tsdb-gw also only needs a storage-schemas.conf if we have input plugins enabled that don't enforce/know an interval (e.g. if only kafka input is enabled, we don't need it)
, but adding those conditionals to the code seems clumsy and fragile.

Lgtm


[3.4RC2 regression] Can't close last remaining scene tab in editor.

Godot version
3.4RC2
System information
Windows 10
Issue description
Can't close current scene tab if this is the last remaining scene tab opened. We have to make a new scene tab or open another one to be able to close the first. Previous behavior (3.4RC1 and previous versions) would open an empty scene tab automatically when closing the last remaining tab.
Steps to reproduce
Create, save and open a single scene. Try to close the tab. It can't be closed without creating another tab first.
Minimal reproduction project
It does not need any particular project configuration. Just create a scene and try to close its tab without creating a new one.

Duplicate of #54304.


Whatsapp banish numbers

Today my number that i use WhatsAllApp got banish for Whatsapp servers. So i try again with 5 anothers numbers in diferents smartphones and all got banish too. Anyone have experienced this too?

Yeah,
Maybe your Ip is blocked, or your phone language is set to a language other
than the phone country. I had a lot of numbers blocked few days ago.
On Fri, Jul 19, 2019 at 4:42 PM julianoo<EMAIL_ADDRESS>wrote:

Today my number that i use WhatsAllApp got banish for Whatsapp servers. So
i try again with 5 anothers numbers in diferents smartphones and all got
banish too. Anyone have experienced this too?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/LoranKloeze/WhatsAllApp/issues/76?email_source=notifications&email_token=AA33PUTR77VAQSBMZJNGIDDQAIKKJA5CNFSM4IFLH2J2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HALMVEA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA33PURXSEVP5MTQDKS2QPLQAIKKJANCNFSM4IFLH2JQ
.

--
Att
Luiz Ricardo Perovano


Some performance problem when visualizing the predicted actions and reference one

Good Result

Good Result

Not good result

Not good result

Thanks for your great job.
I have trained with the dataset "hand_wiping_1-14_5actiongap_10000points.hdf5" for about 3000 epochs with the provided config. Then I write some code to visualize the predicted action and reference action (Using the same dataset for validation). I found that most results looks pretty well but there also exists some bad output, which are shown as above where green curve refers to the reference trajectory and  red curve refers to the predicted action(trajectory).  I wander whether it's in your expectation(in my expectation, the predicted output should be very close to the reference when using the same dataset for training and validation)?
The visualization coda are as below and hope it can help for validation before deploying on any real robot:
Code for saving the reference trajectory and predicted trajectory
import json
import torch
import robomimic.utils.obs_utils as ObsUtils
from robomimic.config import config_factory
import robomimic.utils.file_utils as FileUtils
import numpy as np
import os
import h5py
import robomimic.utils.train_utils as TrainUtils
from torch.utils.data import DataLoader

def vector_to_action_dict(action: np.ndarray, action_shapes: dict[str, int], action_keys: list[str]) -> dict[
    str, np.ndarray]:
    action_dict = dict()
    start_idx = 0
    for key in action_keys:
        this_act_shape = action_shapes[key]
        this_act_dim = np.prod(this_act_shape)
        end_idx = start_idx + this_act_dim
        action_dict[key] = action[:, start_idx:end_idx]
        start_idx = end_idx
    return action_dict

# load model
infer_device = "cuda:0"
checkpoint_path = "~/diffusion_policy_pcd_wiping_1-14/20240530170743/models/model_epoch_2300.pth"

algo_name, ckpt_dict = FileUtils.algo_name_from_checkpoint(ckpt_path=checkpoint_path)
dp_eval_steps = 10

if dp_eval_steps is not None:
    # HACK: modify the config, then dump to json again and write to ckpt_dict
    tmp_config, _ = FileUtils.config_from_checkpoint(ckpt_dict=ckpt_dict)
    with tmp_config.values_unlocked():
        if tmp_config.algo.ddpm.enabled:
            tmp_config.algo.ddpm.num_inference_timesteps = dp_eval_steps
        elif tmp_config.algo.ddim.enabled:
            tmp_config.algo.ddim.num_inference_timesteps = dp_eval_steps
        else:
            raise Exception("should not reach here")
ckpt_dict['config'] = tmp_config.dump()

    # restore policy
model, ckpt_dict = FileUtils.policy_from_checkpoint(ckpt_dict=ckpt_dict, device=infer_device, verbose=True)

config_file = "......../training_config/diffusion_policy_pcd_wiping_1-14.json"

ext_cfg = json.load(open(config_file, 'r'))
config = config_factory(ext_cfg["algo_name"])
with config.values_unlocked():
    config.update(ext_cfg)

# read config to set up metadata for observation modalities (e.g. detecting rgb observations)
ObsUtils.initialize_obs_utils_with_config(config)
# make sure the dataset exists
eval_dataset_cfg = config.train.data[0]
dataset_path = os.path.expandvars(os.path.expanduser(eval_dataset_cfg["path"]))
ds_format = config.train.data_format
if not os.path.exists(dataset_path):
    raise Exception("Dataset at provided path {} not found!".format(dataset_path))
shape_meta = FileUtils.get_shape_metadata_from_dataset(
        dataset_path=dataset_path,
        action_keys=config.train.action_keys,
        all_obs_keys=config.all_obs_keys,
        ds_format=ds_format,
        verbose=True
    )
trainset, validset = TrainUtils.load_data_for_training(
        config, obs_keys=shape_meta["all_obs_keys"])
train_sampler = trainset.get_dataset_sampler()

# initialize data loaders
train_loader = DataLoader(
    dataset=trainset,
    sampler=train_sampler,
    batch_size=config.train.batch_size,
    shuffle= False, #(train_sampler is None),
    num_workers=config.train.num_data_workers,
    drop_last=True
)

expected_traj = []
output_traj = []

data_loader_iter = iter(train_loader)
num_steps = min(len(train_loader), 200)
To = 3

with torch.no_grad():
    for i in range(num_steps):
        batch = next(data_loader_iter)
        obs = {}
        for k, v in batch['obs'].items():
            obs[k] = torch.squeeze(v, dim=0)
        obs = {k: obs[k][:To, :] for k in obs}
        output_action_numpy = model(obs)
        action_shapes = {"eef_position": 3, "eef_quaternion": 4, "gripper": 1}
        action_keys = ["eef_position", "eef_quaternion", "gripper"]
        action_dict = vector_to_action_dict(output_action_numpy, action_shapes, action_keys)
        expected_traj.append(np.squeeze(np.asarray(batch['actions'])))
        output_traj.append(action_dict['eef_position'])

    save_file = "~/dexil_inference_with_trainset_debug-wiping-1-14.hdf5"

    with h5py.File(save_file, 'w') as output_hdf5:
        for idx in range(len(expected_traj)):
            traj = output_hdf5.create_group(f"traj_{idx}")
            traj.create_dataset("output_traj", data = output_traj[idx])
            traj.create_dataset("expected_traj", data = expected_traj[idx])
        output_hdf5.attrs["num_samples"] = len(output_traj)

Code for visualizing the trajectories
import h5py
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

file = "~/dexil_inference_with_trainset_debug-wiping-1-14.hdf5"
f = h5py.File(file,'r')
traj_num = f.attrs['num_samples']
# new a figure and set it into 3d
fig = plt.figure()
ax = fig.add_axes(Axes3D(fig))
# set figure information
ax.set_title("3D_Curve")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")
print("start to polt trajectories!")

idx = 0
save_dir = "..../debug_images/"

for k,v in f.items():
    expected_traj = v['expected_traj']
    output_traj = v['output_traj']
    expected_x = expected_traj[:, 0]
    expected_y = expected_traj[:, 1]
    expected_z = expected_traj[:, 2]
    output_x = output_traj[:, 0]
    output_y = output_traj[:, 1]
    output_z = output_traj[:, 2]
    ax.clear()
    ax.plot(output_x, output_y, output_z, color='green')
    ax.plot(expected_x, expected_y, expected_z, color='red')
    ax.plot(output_traj[0][0], output_traj[0][1], output_traj[0][2], marker="o", markersize=4, markeredgecolor="green", markerfacecolor="green")
    ax.plot(expected_traj[0][0], expected_traj[0][1], expected_traj[0][2], marker="o", markersize=4, markeredgecolor="red", markerfacecolor="red")
    plt.savefig(f"{save_dir}/{idx}.png")
    idx += 1

plt.show()

It's still a bit hard for me to locate the problem from the description. As we discussed in the previous accuracy issue, could you first confirm that you have received consistent results and can reproduce similar accuracy on the training data as we did in that discussion?


Final touches on page

What?
I created the wireframe version of the leaderboard app. I wrote a code to post and get data from an API.
Why?
This is to keep the name and scores inputted stored in theapi and displayed upon webpage display or reload. This allows users from different locations use and see real time scores and user names.
How?

I created webpage with phoe-first approach.
I created a front-end environment using webpack.
I created branches for my project using proper gitflow.
I created source files.
I created sass and modules folders.
I wrote the code for the webpage using ES6 syntax.
I posted results inputted to an API using the post method.
I fetched results stored from the API using the GET method.
I created a unique id for the API.
I styled the page.
I gave the buttons hover and after effects.

@AmaduKamara Thanks for reviewing my project. I will do that asap

Good 👍

Good 👍

@AmaduKamara Fixed it Sir.

Good job and good luck on your next milestone. Keep doing great 👍

Good job and good luck on your next milestone. Keep doing great 👍

@AmaduKamara Thank you very much.


POL-595 Use micrometer metrics

@theute that's the PR for policies-ui-backend I meant yesterday evening.


Port USV plugins from gazebo

There are a set of gazebo plugins for USVs in the VRX repo:
https://github.com/osrf/vrx/tree/master/usv_gazebo_plugins
This ticket tracks the progress of porting of those plugins to Ignition gazebo systems:

usv_gazebo_dynamics_plugin
usv_gazebo_thrust_plugin
usv_gazebo_wind_plugin
buoyancy_gazebo_plugin

Once the plugins are ported, an example world should be provided to demonstrate the support of USVs in Ignition gazebo.
Desired behavior
Ability to simulation USV models with configurable dynamics / thruster params.
Additional context
Related work is porting of the wave model to Ignition so that the USV vehicle motion is influenced by wave motion.

usv_gazebo_dynamics_plugin

This looks like ignition::gazebo::systems::Hydrodynamics. It even links to the original plugin.
One thing to note is that the plugin has been added without tests in #749, I've been meaning to add some tests soon.
We also have a fork of it on LRAUV because some bugs have been fixed. Those should be upstreamed soon, progress is tracked here: https://github.com/osrf/lrauv/issues/37

usv_gazebo_thrust_plugin

Maybe ignition::gazebo::systems::Thruster can be extended to support all features on that plugin.

usv_gazebo_wind_plugin

It looks similar to ignition::gazebo::systems::WindWffects, I think the functionality could be combined.

buoyancy_gazebo_plugin

I think the core functionality should be achieved with ignition::gazebo::systems::Buoyancy, but note that it's a world plugin instead of a model plugin. It also seems to have some different parameters, not sure if the drag is best kept at LiftDrag or Hydrodynamics.

after some discussion with @caguero. The plan is:

try out the Hydrodynamics and Buoyancy plugin as is
look more into the Thruster plugin and see if it supports the actuator capability we need
port the wave model part of the usv_gazebo_dynamics_plugin to Ignition
convert the WAM-V urdf file from VRX to sdf with a single fixed configuration

We'll extend the Thruster plugin to support the articulation of the thruster.


minor list update

Hey @bnurbekov, just want to call out a minor issue with your list.  As a former Comcast employee, comcast.com is a valid corporate Comcast email address.  comcast.net is their Residential email account suffix, which you already block.  Is there a reason both are present?

Thank you so much for pointing this out. I will update the module and release a new version soon.


Improve scrolling performance with passive event listeners

I'm submitting a ...  (check one with "x")
[ ] bug report => search github for a similar issue or PR before submitting
[X] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/HackedByChinese/ng2-idle/blob/master/CONTRIBUTING.md#getting-help

Current behavior
Adding default list of event listeners (DEFAULT_INTERRUPTSOURCES) causes warnings in Angular4.
EX:
[Violation] Added non-passive event listener to a scroll-blocking 'mousewheel' event. Consider marking event handler as 'passive' to make the page more responsive.
[Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive.
Expected behavior
Add event listeners in passive mode.
Minimal reproduction of the problem with instructions
const idle = new Idle();
idle.setInterrupts(DEFAULT_INTERRUPTSOURCES);
idle.watch();
What is the motivation / use case for changing the behavior?
Improved performance.

@ng-idle version: 2.0.0-beta.12

Angular version: 4.2.2

Browser: Chrome 51+

Language: all

Node: v6.10.3

Implemented in a5e24eb. However, this has to be manually enabled by your application, and should do so based on whether or not you detect the browser supports this feature (since not all will).
I did not want to build feature detection into this module as it is out of scope, but instead leave that up to you. However, I've added a function that you can use in concert with the feature detection of your choice so you can still utilize default interrupt sources. More info here.
Simply change to the following (this example uses detectIt):
const idle = new Idle();
idle.setInterrupts(createDefaultInterruptSources({passive: detectIt.passiveEvents});
idle.watch();


Add a callback / notification to indicate trip status from the Ride Request Widget

Currently the Ride Request Widget only exposes a delegate for errors. It would be useful to expose some indicator of the trip status, as it changes. Possibly via the delegate or a notification.

see #54

We may want to do this via API call instead. Something like a get to
/current with limited info.
On Fri, Jul 8, 2016, 7:50 AM John Brophy<EMAIL_ADDRESS>wrote:

Currently the Ride Request Widget only exposes a delegate for errors. It
would be useful to expose some indicator of the trip status, as it changes.
Possibly via the delegate or a notification.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/uber/rides-ios-sdk/issues/53, or mute the thread
https://github.com/notifications/unsubscribe/AFExoBgraB3DtOWF9U1i7lWKZ_LXcI42ks5qTZDdgaJpZM4JHm39
.

That is a possibility, we will need to think about how to handle the app being backgrounded as well

Guys do we have a follow-up on this?

Ride Request Widget was deprecated in 0.9, so I'm closing this as a non-issue anymore. Sorry!
https://github.com/uber/rides-ios-sdk/releases/tag/v0.9.0
https://developer.uber.com/docs/riders/change-log


Clarify open source philosophy

This PR seeks to clarify how we decide what is open source.
What our guiding principles should be is an open conversation, so I started off by documenting the state of things today in this PR.
In response to:
https://sourcegraph.slack.com/archives/C024S6JG7B6/p1636405775041400

This looks great @malomarrec, it's nice to have this written down. I'd suggest also linking to here from somewhere on https://handbook.sourcegraph.com/product/product_management/pricing since choosing what goes into an OSS tier is a variable there.
I'm not sure who is the final approver on determining if this captures the company's current strategy or not, but @christinaforney should know.

@malomarrec with Christina's approval now in place, I'd say merge this then share it widely (maybe #product and #marketing) and let people know that it now exists and future iterations are welcome.


Please publish

Hi @EvanBacon, would love to play around with this. Would you please consider publishing it to npm (even though I guess it's early stage)? :)

can't publish since it uses local patches

Aah, I see. I decided to try to give it a spin but I'm getting errors when building natively locally (No such module 'ExpoModulesCore' and ExpoModulesCore/ExpoModulesCore.modulemap' not found.
Is there anything except lerna bootstrap, npx patch-package (not sure bootstrap deals with that?) and pod install in the example project that I should need to do?


Update DoctrineMetadataRepository.php

On Ubuntu Xenial (PHP7 and MariaDB) $identityProviderCollection->count() === 0 and $serviceProviderCollection->count() === 0 do not evaluate true in the event that the there is no result in the collection. The easiest way is to check if count() evaluates to something that casts to false in the absence of any result.

Looks like PHPMD doesn't agree with this change, could you take a look at it?

Also I'd like to know what the output of count() is if it is not 0.
It may indicate much larger issues as Countable is supposed to guarantee an int: http://php.net/manual/en/class.countable.php

Also the EntityRepository should return an ArrayCollection that simply returns a count() on the elements. Again count should never give anything but an int back.

The error I'm getting in my deployment when showing engineblock's own metadata
Trace:
May 26 12:48:36 myconext EBLOG[1388]: [2016-05-26 12:48:36] engineblock.INFO: Handling incoming request: GET /authentication/idp/metadata {"request_id":"5746d484706ae","session_id":null} []
May 26 12:48:36 myconext EBLOG[1388]: [2016-05-26 12:48:36] engineblock.INFO: Calling service 'idpMetadataService' {"request_id":"5746d484706ae","session_id":"tsmoe3spupvgcdv0tep9of57u1"} []
May 26 12:48:36 myconext EBLOG[1388]: [2016-05-26 12:48:36] engineblock.ERROR: Entity found for entityId: http://engine.myconext.org/authentication/idp/metadata is not an ServiceProvider! {"request_id":"5746d484706ae","session_id":"tsmoe3spupvgcdv0tep9of57u1"} {"exception":{"severity":"ERROR","location":"/opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Dispatcher.php:79","userId":null,"idp":null,"sp":null,"details":"EngineBlock_Exception: Entity found for entityId: http://engine.myconext.org/authentication/idp/metadata is not an ServiceProvider!
#0 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Dispatcher.php(48): EngineBlock_Dispatcher->_handleDispatchException(Object(RuntimeException))
#1 /opt/OpenConext/OpenConext-engineblock/www/authentication/index.php(13): EngineBlock_Dispatcher->dispatch()
#2 {main}

RuntimeException: Entity found for entityId: http://engine.myconext.org/authentication/idp/metadata is not an ServiceProvider!
#0 /opt/OpenConext/OpenConext-engineblock/vendor/openconext/engineblock-metadata/src/MetadataRepository/AbstractMetadataRepository.php(177): OpenConext\\Component\\EngineBlockMetadata\\MetadataRepository\\DoctrineMetadataRepository->findServiceProviderByEntityId('http://engine.m...')
#1 /opt/OpenConext/OpenConext-engineblock/vendor/openconext/engineblock-metadata/src/MetadataRepository/CompositeMetadataRepository.php(90): OpenConext\\Component\\EngineBlockMetadata\\MetadataRepository\\AbstractMetadataRepository->findEntityByEntityId('http://engine.m...')
#2 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Module/Service/Metadata.php(15): OpenConext\\Component\\EngineBlockMetadata\\MetadataRepository\\CompositeMetadataRepository->fetchEntityByEntityId('http://engine.m...')
#3 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Module/Services.php(56): EngineBlock_Corto_Module_Service_Metadata->serve('idpMetadataServ...')
#4 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/ProxyServer.php(331): EngineBlock_Corto_Module_Services->serve('idpMetadataServ...')
#5 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Adapter.php(342): EngineBlock_Corto_ProxyServer->serve('idpMetadataServ...', '')
#6 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Adapter.php(72): EngineBlock_Corto_Adapter->_callCortoServiceUri('idpMetadataServ...')
#7 /opt/OpenConext/OpenConext-engineblock/application/modules/Authentication/Controller/IdentityProvider.php(174): EngineBlock_Corto_Adapter->idPMetadata()
#8 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Controller/Abstract.php(43): Authentication_Controller_IdentityProvider->metadataAction()
#9 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Dispatcher.php(67): EngineBlock_Controller_Abstract->handleAction('Metadata', Array)
#10 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Dispatcher.php(43): EngineBlock_Dispatcher->_dispatch('/authentication...')
#11 /opt/OpenConext/OpenConext-engineblock/www/authentication/index.php(13): EngineBlock_Dispatcher->dispatch()
#12 {main}","message_prefix":null},"previous_exceptions":["RuntimeException: Entity found for entityId: http://engine.myconext.org/authentication/idp/metadata is not an ServiceProvider! in /opt/OpenConext/OpenConext-engineblock/vendor/openconext/engineblock-metadata/src/MetadataRepository/DoctrineMetadataRepository.php:181
Stack trace:
#0 /opt/OpenConext/OpenConext-engineblock/vendor/openconext/engineblock-metadata/src/MetadataRepository/AbstractMetadataRepository.php(177): OpenConext\\Component\\EngineBlockMetadata\\MetadataRepository\\DoctrineMetadataRepository->findServiceProviderByEntityId('http://engine.m...')
#1 /opt/OpenConext/OpenConext-engineblock/vendor/openconext/engineblock-metadata/src/MetadataRepository/CompositeMetadataRepository.php(90): OpenConext\\Component\\EngineBlockMetadata\\MetadataRepository\\AbstractMetadataRepository->findEntityByEntityId('http://engine.m...')
#2 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Module/Service/Metadata.php(15): OpenConext\\Component\\EngineBlockMetadata\\MetadataRepository\\CompositeMetadataRepository->fetchEntityByEntityId('http://engine.m...')
#3 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Module/Services.php(56): EngineBlock_Corto_Module_Service_Metadata->serve('idpMetadataServ...')
#4 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/ProxyServer.php(331): EngineBlock_Corto_Module_Services->serve('idpMetadataServ...')
#5 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Adapter.php(342): EngineBlock_Corto_ProxyServer->serve('idpMetadataServ...', '')
#6 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Corto/Adapter.php(72): EngineBlock_Corto_Adapter->_callCortoServiceUri('idpMetadataServ...')
#7 /opt/OpenConext/OpenConext-engineblock/application/modules/Authentication/Controller/IdentityProvider.php(174): EngineBlock_Corto_Adapter->idPMetadata()
#8 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Controller/Abstract.php(43): Authentication_Controller_IdentityProvider->metadataAction()
#9 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Dispatcher.php(67): EngineBlock_Controller_Abstract->handleAction('Metadata', Array)
#10 /opt/OpenConext/OpenConext-engineblock/library/EngineBlock/Dispatcher.php(43): EngineBlock_Dispatcher->_dispatch('/authentication...')
#11 /opt/OpenConext/OpenConext-engineblock/www/authentication/index.php(13): EngineBlock_Dispatcher->dispatch()
#12 {main}"]}
May 26 12:48:36 myconext EBLOG[1388]: [2016-05-26 12:48:36] engineblock.NOTICE: An error was caught {"request_id":"5746d484706ae","session_id":"tsmoe3spupvgcdv0tep9of57u1"} []
May 26 12:48:36 myconext EBLOG[1388]: [2016-05-26 12:48:36] engineblock.NOTICE: Showing feedback page with message: SURFconext - Error - An error occurred {"request_id":"5746d484706ae","session_id":"tsmoe3spupvgcdv0tep9of57u1"} []
May 26 12:48:37 myconext java[564]: 12:48:37.341 357923 [pool-1-thread-1] INFO  me.control.MetaDataController - Start refreshing metadata
May 26 12:48:37 myconext java[564]: 12:48:37.368 357950 [pool-1-thread-1] INFO  me.control.MetaDataController - ServiceProviders metadata has changed: false
May 26 12:48:37 myconext java[564]: 12:48:37.369 357951 [pool-1-thread-1] INFO  me.control.MetaDataController - IdentityProviders metadata has changed: false
May 26 12:48:37 myconext java[564]: 12:48:37.369 357951 [pool-1-thread-1] INFO  me.control.MetaDataController - Finished refreshing metadata in 28 ms

gettype($serviceProviderCollection->count()) returns "string".
And I don't understand why Travis is angry. I only changed the condition to return true in the event of an empty serviceProviderCollection  or identityProviderCollection

The output of $serviceProviderCollection->count() is "0", I forgot to mention.

And it's not the first time strange things happen on my platform of choice regarding (un)expected ctypes
https://github.com/janus-ssp/janus/pull/598


When expression is ignoring while generates a query?

I just add a column with expression to show a field value from related table. But generator ignores these fields with two different sceneraio.

SortOrder is appliying but column is not shown
 public sealed class TopicRow : Row, IIdRow, INameRow
    {
[DisplayName("LastUpdateDate"), SortOrder(1, true)]
        [Expression("(ISNULL((SELECT top 1 ISNULL(t.UpdateDate, t.InsertDate) FROM Post t (NOLOCK) Where t.TopicId = T0.Id order BY t.UpdateDate,t.InsertDate),ISNULL(T0.UpdateDate, T0.InsertDate)))")]
        public DateTime? LastUpdateDate
        {
            get { return Fields.LastUpdateDate[this]; }
            set { Fields.LastUpdateDate[this] = value; }
        }

Column is not showing anywhere (generated query does not contains this column)
[DisplayName("Text"),
        //SetFieldFlags(FieldFlags.ClientSide),
        Expression("(Select top 1 p.Text from [dbo].Post p Where p.Topic=t0.Id order by p.InsertDate)")]
        public String Text
        {
            get { return Fields.Text[this]; }
            set { Fields.Text[this] = value; }
        }

Output:
SELECT TOP 100
T0.Id AS [Id],
T0.Title AS [Title],
T0.ViewCount AS [ViewCount]
FROM [dbo].Topic T0
ORDER BY (ISNULL((SELECT top 1 ISNULL(t.UpdateDate, t.InsertDate) FROM Post t (NOLOCK) Where t.TopicId = T0.Id order BY t.UpdateDate,t.InsertDate),ISNULL(T0.UpdateDate, T0.InsertDate))) DESC, T0.Id;
SELECT count(*)
FROM [dbo].Topic T0

What is wrong with this row or columns?

There is nothing wrong. You set default sort order to 1 for LastUpdateDate so repository is sorting by this column by default. Sorted columns doesn't have to be visible.
Second, if you didn't add Text column to Columns, it won't be selected by default. If you put ClientSide flag to it, it won't be selected ever, as it is unmapped (though it is commented there)

Oh how did i miss column declerations. I did lots of changes to undestand what happened. But i can not catch because of first rule:

Sorted columns doesn't have to be visible.

I am so surprised, Why? Is there anyway to override this rule?

This is to determine natural order for a row/grid. If you don't want it to be sorted, why put a SortOrder? You can override it in form or grid GetSortColumns

No I want to sort by this column but I also want to see in result list. Why do not I want to see column that sort criteria? I have never need "this rule". I guess I missunderstand something

Volkan so sorry about this ugly details. I am obsessed with tiny details I guess. If you do not want to explain you will close. These details are not about your framework actually. I do not want to tire you.

SortOrder doesn't control if this column can be sorted. It controls initial sorting order for list. If you put SortOrder to some fields, records are sorted by these fields initially, unless it is overridden somewhere.

For example in a customer transactions list, you might want records to be sorted by transaction date descending, then ID descending. So you put SortOrder(1, desc: true) on date and SortOrder(2, desc: true) on ID. Thus records come sorted by date and id desc, even if you don't show ID on screen. User can always change this order by clicking grid column headers.

I got over with adding MinSelectLevel(SelectLevel.Always) attribute to field i want to get.
Maybe somebody needs to this info.


THRIFT-5325: Fix Lua library writeStructEnd() in TCompactProtocol

In 0.13.0, two changes were made to the Lua library's TCompactProtocol for writing structs: THRIFT-4992 (writeStructEnd) and THRIFT-5262 (writeStructBegin). Unfortunately these addressed the same issue, so the two changes together just recreated the original problem of corrupt field indices in nested structs.
Revert the change in THRIFT-4992 (and keep the one in THRIFT-5262).

[x] Did you create an Apache Jira ticket?  (not required for trivial changes)
[x] If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
[x] Did you squash your changes to a single commit?  (not required, but preferred)
[x] Did you do your best to avoid breaking changes?  If one was needed, did you label the Jira ticket with "Breaking-Change"?
[x] If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

Would be awesome to have some CV test that checks the issue so this doe not happen again. Is this feasible?

I don't think I'll have time coming up, sorry!


feat: improve type inference for WindowFrame

Which issue does this PR close?
Closes #11432
Closes #12982
Rationale for this change

This tried to fix the liked issue by improving the type inference when creating window frame from sqlparser.
What changes are included in this PR?

WindowFrameBound's try_from method is replaced by a try_parse that also takes the WindowFrame's units in order to make some conclusions about the type.

Are these changes tested?

Yes
Are there any user-facing changes?

No API changes but potentially a new behaviour introduced that could break some existing code.

The substrait plan in the original reproducer now contains the expected window frame values for ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING:
bounds_type: Rows,
lower_bound: Some(
    Bound {
        kind: Some(
            Preceding(
                Preceding {
                    offset: 1,
                }
            ),
        ),
    },
),
upper_bound: Some(
    Bound {
        kind: Some(
            Following(
                Following {
                    offset: 1,
                }
            ),
        ),
    },
),

@notfilippo Thanks, squashed three bugs with this refactor 🚀.
cc @alamb

@goldmedal I've removed SingleQuotedString according to https://github.com/apache/datafusion/pull/13059#discussion_r1814842636.

Thanks @notfilippo
If no more comments from the other one, I plan to merge this tomorrow.

Thanks again @notfilippo @jcsherin 👍


internal compiler error: unknown intrinsic 'raw_eq'

I am interested in trying ed25519 signature verification on cuda, and was trying to compile ed25519-dalek crate.
More specifically, for now I just added it as a dependency to gpu/add example to see if there will be any compilation errors.
I had to remove code related to secret key generation(since I am only interested in verification) and zeroize crate since it was causing obvious errors (see https://github.com/andll/ed25519-dalek/commit/132de2d6735117262802845370b098745bf7a68c), but after that I get compiler error that I don't understand / know how to fix
  error: internal compiler error: crates/rustc_codegen_nvvm/src/intrinsic.rs:430:18: unknown intrinsic 'raw_eq'

  thread 'rustc' panicked at 'Box<dyn Any>', compiler/rustc_errors/src/lib.rs:1170:9
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
  warning: `ed25519-dalek` (lib) generated 3 warnings
  error: could not compile `ed25519-dalek`; 3 warnings emitted
  warning: build failed, waiting for other jobs to finish...
  error: atomic fence is not supported, use cuda_std intrinsics instead

I am also not sure if 'unknown intrinsic' and 'atomic fence is not supported' referring to the same problem or are they different issue.
Problem with those errors is that they don't point to source code that cause them, so for person like me who is not familiar with compiler internals don't even know where to look.
Do you have any advice what are the things in source that can cause this that I can try to remove/change with something else?
Is there a way to pin point specific source code line that cause the issue?

This is a bug in the codegen, it seems i may have forgotten to add the raw_eq intrinsic to the intrinsic handler, and that intrinsic is apparently codegenned for... something in that crate. I will try to fix that right now. The second error is intentional, NVVM IR does not support atomic fence instructions because fences on the GPU can be thread block fences, device fences, or system fences. And they do not support ordering or synchronization scopes, therefore its best to just error on them and make users use the cuda_std versions to be more explicit.

should be fixed in 0.2.3, i don't currently plan to support core atomic fences since i'd have to guess their use based on the ordering and scope and that seems too dangerous

Thank you!


'order' option can't be a string

Hello,
when I using the order option,
AppUser.find({ order: 'id DESC' }) // will throw error

AppUser.find({ order: [['id', 'DESC']] }) // This works well

When I use order as a string, the error below will be thrown:
Error: Order must be type of array or instance of a valid sequelize method.
      at Object.getQueryOrders (node_modules/sequelize/lib/dialects/abstract/query-generator.js:1692:13)
      at Object.selectQuery (node_modules/sequelize/lib/dialects/abstract/query-generator.js:1161:27)
      at QueryInterface.select (node_modules/sequelize/lib/query-interface.js:672:27)
      at Promise.try.then.then.then (node_modules/sequelize/lib/model.js:1538:34)
      at tryCatcher (node_modules/bluebird/js/release/util.js:16:23)
      at Promise._settlePromiseFromHandler (node_modules/bluebird/js/release/promise.js:512:31)
      at Promise._settlePromise (node_modules/bluebird/js/release/promise.js:569:18)
      at Promise._settlePromise0 (node_modules/bluebird/js/release/promise.js:614:10)
      at Promise._settlePromises (node_modules/bluebird/js/release/promise.js:693:18)
      at Async._drainQueue (node_modules/bluebird/js/release/async.js:133:16)
      at Async._drainQueues (node_modules/bluebird/js/release/async.js:143:10)
      at Immediate.Async.drainQueues (node_modules/bluebird/js/release/async.js:17:14)

The order's definition is:
order?: string | col | literal | Array<string | number | typeof Model | {
        model: typeof Model;
        as?: string;
    }> | Array<string | col | literal | Array<string | number | typeof Model | {
        model: typeof Model;
        as?: string;
    }>>;

So, I think it's a bug.

Thanks for reporting. The original sequelize typings seem to have the same issue:
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/sequelize/index.d.ts#L3243
Additionally I cannot find any possibilities to use strings in order in the sequelize docs.
Which sequelize version are you using?

I think only array should be allowed, because I believed I've read in the Sequelize docs that order shouldn't be with strings. although it works

@BruceHem You mean it is working with strings? In which sequelize version?

Sequelize v3 order can be used with strings last time I checked.

Yes, but v4 can't any more.

@bucket-sven  @BruceHem Thanks.
If it is working on v3, I would suggest to not change the typings for now. When dropping v3 support some day, this issue should be fixed as well.

@RobinBuschmann OK.

I just ran into this problem as well:
Order must be type of array or instance of a valid sequelize method.
at Object.getQueryOrders
with sequelize v4.19.0
The docs still has the "string example": http://docs.sequelizejs.com/manual/tutorial/models-usage.html
Project.findAll({order: 'title DESC'})
I think this is misleading.

@andineck
I ran into it, too.
It looks like the proper way should be:
Project.findAll({order: sequelize.literal('title DESC')})
or:
Project.findAll({order: [sequelize.literal('title DESC')]})

FWIW, I ran into this issue to. Docs should be updated to remove the Project.findAll({order: 'title DESC'}) example that @andineck mentioned earlier.

Still not removed from the docs, +1


small clarification

https://github.com/MicrosoftDocs/windows-itpro-docs/issues/10343

Dear @JohanFreelancer9,
kindly do the copy editor review for this PR.
Dear @e0i, for your information
Thank you


Previous Data

@jbenet here:

[geoip lookups] should work in previous releases too. we should be able to regenerate the exact data. the database has versions. so does the codebase.

Is there any way we can do this?

We've switched to DAG-CBOR in https://github.com/ipfs-shipyard/ipfs-geoip/pull/93 which makes things bit more future-proof.
As long b-tree generation logic remains the same, one can switch DATA_HASH in src/generate/index.js to a previos snapshot and get the same CID.