Variant of increase function that assumes uninitialized counters start at zero 0, like VictoriaMetric's increase_pure

Proposal
Hello, would a function like VictoriaMetric's increase_pure make sense to implement for PromQL?
It seems to solve the problem discussed in https://github.com/prometheus/prometheus/issues/1673 and would be easier to adopt than the upcoming created timestamp feature
Put another way, our use-case is we want to fire an alert in grafana anytime a prometheus counter is increased. The counter has many dynamic labels so pre-initializing the counter to zero is not an option. Additionally, we would like to sum the counter by labels, and calculate the increase for each of those sums. For example, a counter tracking when an error occurs, summed by the customer label, which would fire a separate alert per customer if their error count increases. Using rate and increase would miss firing the alert on the first increment of the counter after the application instance starts.
I'm guessing there's some edge cases where increase_pure understates the counter and causes an alert to misfire, but that's much better than missing a legitimate reason to alert.
I've found some partial workarounds, but they don't allow aggregating by label and are complex for people new to promql. My company is used to delta temporality metric systems like statsd where setting-up these types of alerts is trivial. Unless I missed some easier workaround, this could be a painful part of our migration to prometheus

With the current work on created-at timestamps (/cc @ArthurSens ), I believe this problem will be addressed in a much superior way than adding yet another confusing PromQL function to a set of functions that are already confusing.

The 2.50.0 should come pretty soon with initial support for created timestamps. Although support is only coming for the protobuf format, I'm already working on other formats, e.g. OpenMetrics text https://github.com/prometheus/prometheus/pull/13506.
You mention that adoption of created timestamps might be difficult, do you mind elaborating on that? Happy to make things easier, we just need feedback :)

As this is a problem that we have discussed literally from the very early days of Prometheus, and we have deliberately avoided assuming a zero point that isn't really in the data all the time, I'm very confident that we won't change course now, when a suitable solution (in the form of taking the created-at timestamp into account) is very close.
Therefore, I close this issue. But feel free to continue the conversation, here or on other community channels.


add authentication option

Allows a user to use etcd with authentication.
Hi,
foremost thank you for the python-etcd library.
My etcd cluster is using authentication and there was no support for that in your library, so I've added the option. I am not sure, how to go about the tests, so I haven't done any, but with few hints I can add them too to make the feature complete.
Best Wishes
Michal

thanks for the PR @Neotronic, but I have a more complete one, #124 , that I am going to merge instead.


[Enhancement] Move menus to dpad left and right

Move dungeon info / world map info menus to dpad left and right
Let them work on any pause screen

I personally don't like this because it doesn't allow boot equip on the inventory screen anymore.

Perhaps A and D-down?


Turn field angles dict into enum

Makes for a cleaner closest angle method.

Yeah this is a nicer way to keep track of field angles and find the nearest angle.


Syncing settings and assets

This PR is designed to take all the work done in the windows-vm branch and pushing it to master.
I'd like more eyeballs on this as the master branch is for Linux streamers.

This PR doesn't make sense at this time.


Implement Extend

Extend can be implemented on the NestedContainmentList to allow for inserting many RangeBounds objects at once.
A naive implementation would be to call insert() on each element in the iterator. This should be the initial implementation.
However, a more efficient implementation would be to sort the elements on their RangeBounds, and then to insert each element, finding the index using a binary search only on the slice after the previously-inserted element. This will be a bit more complicated, and it will involve pulling out some of the insertion logic into a shared method which takes an index parameter.

Naive implementation is completed.

And the more efficient implementation is now completed as well. The insertion should be O(n log(n)), where n is the amount of values to be inserted. This is better than the O(N log(N) of the naive solution, where N is the number of values already in the container.


Installing extensions from my dotfiles

VSCode Version: 1.7.1
OS Version: OSX Siera: 10.12.1 (16B2555)

I used to install all my extensions with the following script:
# installation of extensions
for VARIANT in "code"
do
  if hash $VARIANT 2>/dev/null; then
    VERSION="$($VARIANT --version)"
    MAJOR="$(echo $VERSION | sed -e 's/\..*$//')"
    MINOR="$(echo $VERSION | sed -e 's/\-[a-z]*$//' -e 's/^[0-9]*\.//' -e 's/\.[0-9]*$//')"
    if [ "$MAJOR" -gt "0" ] && [ "$MINOR" -gt "1" ]; then
      echo "Installing extensions for $VARIANT"
      for EXTENSION in ${EXTENSIONS[@]}
      do
        $VARIANT --install-extension $EXTENSION
      done
    else
      echo "$VARIANT (v$VERSION) does not support extension CLI args"
    fi
  fi
done

Unfortunately this does not work anymore. I'm unsure what version caused this; but do you guys have any idea how to fix this?


Make isort run with Python 3 only

As isort is primarily used as a command-line tool, it is in a good position to move to Python 3 only. Other command-line-only tools have begun moving to Python 3. For example: black, mypy, pylint, and pypinfo. It will continue to support formatting Python 2 code, so users can still format their Python 2 projects.
Allows for many code cleanups. By removing these workarounds, the project will be easier to maintain and reduce testing resources.
Python 2 is scheduled to be EOL on January 1, 2020. The Python community is moving on.
https://www.python.org/dev/peps/pep-0373/
For reasons to drop Python 2 support, see:
https://python3statement.org/
For an overview of projects that have dropped Python 2 support entirely, see:
https://hugovk.github.io/drop-python/2.7/

Hi @jdufresne,
First off - thanks for all the continued amazing work!
I do think one final Python2 release would be nice - followed immediately with this Python3 only implementation. I will make sure to have these out by the end of next week.
I'd also like to move to enable you, and other trusted contributors, to do releases as well in the future.
Thanks again!
~Timothy

Sounds good @timothycrosley Thanks!
I've rebased to resolve the merge conflicts, let me know if I can help in any other way.


Dat URL listing

First of all, I want to say thank you for creating this project and keeping it open-source.
Anyway, I just quickly browsed through the documentation and I'm wondering if there is a way of getting a list of dat's on the current device? I could try to read from the database in the ~/.dat folder, but I've had issues with LevelDB locking before so I thought it would be best to ask if it's even possible here first.
Something like dat list and it will print out a list of dat:// urls.

@mateogianolio Hi, thanks.
The LevelDB in ~/.dat is indeed where we track metadata for all the dats... but it is meant to be more of a cache than anything. So I wouldn't really trust it as a definitive source of all the dats on a machine. Whats your use case BTW?
To read the LevelDB from multiple processes we use a module called level-party. Also there is a module in development called dat-manager that will manage a group of dats manually. But I dont think theres an easy way we can accurately list all the dats on a machine at the moment...

I didn't really have any specific use case in mind, but it would be neat to be able to maintain a list of dat metadata for a machine, e.g:
3 peers  dat://54e5c2483e06bc3403795ce62fb1df9c05a52f6e1466373425be0fc5d33ffec2
1 peer   dat://...

I wrote a tiny bittorrent client (unmaintained) a few months ago to learn about webtorrent and handled the inter-process communication by having the main module emit events and submodules responding to them.
The gist of what I'm looking for (in pseudo-js):
// create new dat tcp server
var dat = new require('dat')();

dat.add('/path/to/folder');
dat.on('add', function (metadata) {
  // ...
});
dat.on('close', function () {
  // moving on...
});

I'll check out dat-manager and level-party.

dat-desk is pretty much what I was looking to do, so I'll go ahead and close this.


Add simple backend

Rationale
Provide in-memory backend for usage in unittests when no external service is available as per https://github.com/jazzband/django-constance/issues/285.
It can also be used to cover this https://github.com/jazzband/django-constance/issues/349 use case.
Usage
Update your test config in the app which uses django-constance library with
CONSTANCE_BACKEND = 'constance.backends.simple.SimpleBackend'

Run your tests as usually (e.g. python manage.py test) using this in-memory backend without external database / redis instance.
Changes

Added new SimpleBackend in-memory backend
Moved backend tests to tests/backends subdirectory
Added tests for mget backend method
Fixed redis_mockup.Connection.mget implementation
Updated documentation for the new backend usage

Fixes
Python 3.5 was not providing any guarantees for the order of dict keys, so such a construction
config._backend.mget(settings.CONFIG)

with improper mget mock implementation as here
for key, value in zip(keys, self._rd.mget(prefixed_keys))

might return different results (mapping to the first elements of the list). When explicitly return list of values for all the requested element we make sure keys and values match.
Condition
            if value:
                yield key, loads(value)

guarantees we do not return anything which is not stored by backend.

@jezdez @camilonova could you review this?

Looks good to me. Please add documentation so we can merge this one 🍺

Hey, I haven't looked in detail into the implementation, but I'm thinking we should name this "MemoryBackend" or something similar since "simple" is rarely descriptive enough for users and instead could mislead them about its use case.
Secondly since the main purpose of the backend is to be used for testing, can we make sure that this is thread-safe when accessing the underlying dict?

@jezdez I've refactored code to MemoryBackend and added lock for thread safety. Python built-in structures and their methods are thread-safe by default, so the only place where race condition can occur is when retrieving multiple values (context switch while other thread modifying a setting), so I've modified mget method to reflect that.

@jezdez Django uses locks within loclmem because its methods are not atomic (there are a couple of operations over the storage), but I agree we should stay close to that implementation.
I have also tested current solution with
def test_same_storage():
    s1 = MemoryBackend()
    s2 = MemoryBackend()
    assert id(s1._storage) == id(s2._storage)

    s1.set('s1-key', 's1-value')
    s2.set('s2-key', 's2-value')

    assert s1.get('s2-key') == s2.get('s2-key')
    assert s2.get('s1-key') == s1.get('s1-key')

    assert s1._storage == s2._storage

def test_same_lock():
    s1 = MemoryBackend()
    s2 = MemoryBackend()
    assert id(s1._lock) == id(s2._lock)

and with
from threading import Thread

from constance.backends.memory import MemoryBackend

def target(target_name):
    s = MemoryBackend()
    s.set(target_name, 'value')

    print(s.get(target_name))
    print(id(s._storage))

def test_threads_share_storage():
    s = MemoryBackend()
    t1 = Thread(name='t1', target=target,  args=('t1',))
    t2 = Thread(name='t2', target=target, args=('t2',))

    t1.start()
    t2.start()

    t1.join()
    t2.join()
    # check storage in main thread
    assert len(s._storage) == 2
    assert s.get('t1') == 'value'
    assert s.get('t2') == 'value'

to make sure backend works properly and it's equivalent to have _storage and _lock on class level and on the module level.


Bug: Inconsistent front matter serialization for empty input

Minimal steps to reproduce

Create test/schema.json with the following contents:

{
    "name": "test",
    "fields": [
        {
            "type": "string",
            "name": "foo"
        },
        {
            "type": "text",
            "name": "bar"
        }
    ]
}

Run php hyde make:publication test
Hit enter for the first field
Immediately hit CTRL+D (and enter if needed) for the second field
See result in created Markdown file

Actual result
On my machine (Windows)
---
__createdAt: 2023-02-20T18:37:15+00:00
bar: ''
---

## Write something awesome.

On Roberts machine (Linux)
---
__createdAt: 2023-02-20T19:04:12+00:00
bar: ''
---

## Write something awesome.

Expected result
The front matter should be one of the following:
Option A (Empty string)
---
__createdAt: xxx
foo: ''
bar: ''
---

Option B (No entries at all)
---
__createdAt: xxx
---

OK, hitting enter (for the 1st field) and ctrl-d (for the 2nd field) I get this MD file:
---
__createdAt: 2023-02-20T19:04:12+00:00
bar: ''
---

## Write something awesome.

Which is correct. Interestingly enough, the CTRL-D worked.
I've tested the CTRL-D issue and if you add a field AFTER the text field and enter CTRL-D for the text field, then in breaks.
I've used this schema file to test this:
{
    "name": "test",
    "fields": [
        {
            "type": "string",
            "name": "foo"
        },
        {
            "type": "text",
            "name": "bar"
        },
        {
            "type": "string",
            "name": "bars"
        }
    ]
}

So for the first part, thanks for confirming. Then we can rule out OS differences for this.
As for the second part, I cannot reproduce your crash (as shown in DM) on my Windows machine. I would guess that it has to do with OS inconsistencies with the EOT character.
Gonna to back and debug the first part

OK, thanks :-)

Gonna make a few posts here of me thinking out loud. Robert, you are my rubber ducky now. Feel free to ignore me!
Starting to narrow down the location of where this bug happens, and I can confirm I'm getting unexpected results with your schema file with the additional field. So the two problems may be related.
The CreatesNewPublicationPage::normalizeData method when fed with input (a,b,c, for each field respectively, receives this collection: (so far all good)
^ array:4 [
  "__createdAt" => DateTime @1676920405 {#468
    date: 2023-02-20 19:13:25.0 UTC (+00:00)
  }
  "foo" => "a"
  "bar" => "b"
  "bars" => "c"
]

Feeding empty inputs to everything gives me this however:
^ array:2 [
  "__createdAt" => DateTime @1676920579 {#464
    date: 2023-02-20 19:16:19.0 UTC (+00:00)
  }
  "bar" => ""
]

For some reason we are not getting all entries here (which we need if we want Option A)
So the issue is before this method is called.

The empty values are not at all passed to the CreatesNewPublicationPage constructor.
Okay, found the location in the MakePublicationCommand::collectFieldData method:
if (empty($fieldInput)) {
    $this->line("<fg=gray> > Skipping field $field->name</>");
} else {
    $this->fieldData->put($field->name, $fieldInput);
}

So we'll want to add an empty value here, question is, what do we add so that we cover all field types? What should we do for example if the type is a boolean?

So we'll want to add an empty value here, question is, what do we add so that we cover all field types? What should we do for example if the type is a boolean?

Actually, partially disregard that. We can add these on a per-type basis, for example:
protected function captureOtherFieldInput(PublicationFieldDefinition $field): ?PublicationFieldValue
{
    $selection = $this->askForFieldData($field->name, $field->getRules());
    if (empty($selection)) {
        return null; <- HERE
    }

    return new PublicationFieldValue($field->type, $selection);
}

I see no real change with this fix applied to my repo:
---
__createdAt: 2023-02-20T19:41:46+00:00
bar: ''
---

## Write something awesome.

That's weird. I get this:
---
__createdAt: 2023-02-20T19:44:15+00:00
foo: ''
bar: ''
bars: ''
---

## Write something awesome.

Once we fix this, another question remains, should we keep the > Skipping field xxx output?


Override default pod spec with StrategicMergePatch

Change Overview

Pull request type
Please check the type of change your PR introduces:

[ ] Work in Progress
[ ] Refactoring (no functional changes, no api changes)
[ ] Trivial/Minor
[ ] Bugfix
[x] Feature
[ ] Documentation

Issues

#XXX

Test Plan

[ ] Manual
[ ] Unit test
[ ] E2E

🚀


Angular Material documentation code snippets refer to the old md-* prefixes

Bug, feature request, or proposal:
Bug (in documentation)
What is the expected behavior?
Documentation should reflect the change from md prefix to mat prefix in material components
What is the current behavior?
Documentation for the latest version of Angular Material still refers to the old prefix which causes bugs in production.
What are the steps to reproduce?
Please take a look at code snippets at Angular Material documentation.
For example:
https://material.angular.io/components/menu/overview still refers to md prefix - similarly to https://material.angular.io/components/select/overview
Basically, all of the code snippets need to be updated.
What is the use-case or motivation for changing an existing behavior?
Code snippets should provide reliable examples that could be used in a production.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular Material 2.0.0-beta.12
Is there anything else we should know?
You make awesome work :)

For whatever reason, the old docs are being cached really aggressively. If you clear your cache, you should see the updates (also be sure you have no other tabs open to the docs site). I think this should be fixed during the next release.

Yeah, this is a caching issue that's service-worker related. Should be resolved soon. Closing this since the docs actually are correct, just cached.


DHE-301 Change role to job title

Current coverage is 82.41% (diff: 100%)

Merging #15 into master will not change coverage

@@             master        #15   diff @@
==========================================
  Files            25         25
  Lines           904        904
  Methods           0          0
  Messages          0          0
  Branches         36         36
==========================================
  Hits            745        745
  Misses          152        152
  Partials          7          7

Powered by Codecov. Last update b9786d9...9cb3c5d

Can one of the admins verify this patch?


SolarMoon Token PR

SolarMoon token PR for Sollet.io wallet

Good

Apparently the project is no longer maintained. Any other OSS Solana Web3 wallets? I've only found this one by @jferrer so far.


Auto-reload based on directory

https://github.com/facebook/watchman

Switching to a generator-style workflow


Add support to update strategy

To be merged after tachiyomiorg/tachiyomi#7902 gets merged and a new Stable release of the app gets released.

Merging for now, will need to tag appropriately once in stable.


Guard unsafe imports behind !appengine

"unsafe" (in this case, imported via "golang.org/x/sys/unix") cannot be
used on AppEngine, so we need to add the "!appengine" build constraint
to files that use it (namely a few terminal_check_*.go).
Fixes #947.

@dgsb what do you reckon?

@Hexcles did you try my suggestion to only add the !appengine build constraint in the terminal_check_unix.go file ?
I would also like that you merge master in your branch so that you can benefit a full cross compilation for all target supported by go 1.12 compiler in travis.

@dgsb sorry this thread has been going to my personal email which I haven't been keeping close track of.
I tried your suggestion on both Linux and macOS, and it does work. Only terminal_check_unix.go needs to be modified. I thought terminal_check_bsd.go would also need to be modified when I deployed from macOS, but apparently that's not the case from my experiment. It seems like the Go AppEngine toolchain is more like a crossbuild setup targeting Unix/Linux.
I also rebased the change on top of the current master.

ping @dgsb


Fix docs so they render

Codecov Report

Merging #188 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #188      +/-   ##
==========================================
+ Coverage   95.18%   95.18%   +<.01%
==========================================
  Files          14       14
  Lines        2054     2056       +2
  Branches      358      358
==========================================
+ Hits         1955     1957       +2
  Misses         57       57
  Partials       42       42

Impacted Files
Coverage Δ

shed/simple.py
92.7% <100%> (+0.05%)
:arrow_up:

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 d51e7da...27932e9. Read the comment docs.

need to fix some of the docs (the keys don't match properly)


Arrangement and execution of the meeting (issue #34 related)

Describe arrangement and execution of the meeting

Meeting arranged and done by @MichauSzewczyk and @amvdek


Grep URLs escaped incorrectly

If a test suite has a name that contains a . it will be escaped as \. in the grep URL. For example test-suite.html becomes test-suite\.html which translates incorrectly into a link ...?grep=test-suite%5Chtml
In mocha v2.2.5 the URL is escaped like this:
return window.location.pathname + (search ? search + '&' : '?' ) + 'grep=' + encodeURIComponent(s);
But after commit a81e5558f086808b682b6d196b80893d2c8926f8 in v2.3.0 it has been escaped like this: return window.location.pathname + (search ? search + '&' : '?') + 'grep=' + encodeURIComponent(escapeRe(s));
Can't tell if this change has been done intentionally or not...

this needs to be confirmed.

At this point, many years later, we can assume it's the intended behavior.
If someone feels strongly that I'm wrong here, please file an issue with one of our new templates. We'd be happy to take a look!


Lost money through refund UnstoppableSwap

Expected Behavior
Hey there I desperately need some help. So I tried to make a swap on Unstoppable and it didn't work out so after 12 hours, it said "Bitcoin has been refunded" but when I went to look in my wallet, it was refunded for 30$ less than I had sent. I don't know what to do any help would be really appreciated.
Current Behavior

Steps to Reproduce

Possible Solution (Not obligatory)

Your Environment

Node version :
Operating System and version :

Bitcoin fees are quite high. There is nothing we can really do about it unfortunately. There are 3 transactions required in total (lock, cancel, refund) to refund.
I'd advise you to monitor the network and swap when fees are as low as possible.


Seting Status to Offline sets Database Status in CA to Error

When using Powershell to set the Content Database status and using the Offline value, CA shows the database status as ERROR.
Set the Status to Disabled to get Central Administration to show status of Stopped.

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

ID: 8939057b-2dcd-a5fd-1062-6cae12959bd2
Version Independent ID: eed7bfe2-6112-76b7-9fa6-513db28cfbff
Content: Set-SPContentDatabase (sharepoint-server)
Content Source: sharepoint/sharepoint-ps/sharepoint-server/Set-SPContentDatabase.md
Product: sharepoint-powershell
GitHub Login: @techwriter40
Microsoft Alias: kirks

@officedocsbot assign @yogkumgit

Hello @bjkline
I could repro in my lab. Will propose improving the article thru a pr

@MikePlumleyMSFT Please merge this PR #4227

@yogkumgit PowerShell PRs are handled through a different process. Check with @kenwith

@get-itips  Thank you very much for the contribution and updating the documentation with PR. @bjkline Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


[Service Bus] Client validation improvements for cross-language consistency

Adding in additional client-side validation and unit tests.
Fixes #17364

/azp run java - servicebus - tests

After talking with @hemanttanwar  I was able to run a sampling of the live tests on my machine so I'm calling this okay and I'm going to merge.


Add possibility to define an initContainer for the DaemonSet

If you want to prepare the node for automatic reboots e.g. by installing a specific script which is triggered by the reboot cmd, a custom initContainer could become handy.
This PR allows to specify an optional initContainer in the values.yaml like this:
initContainers:
  - command:
      - sh
      - -c
      - echo \"This could be an init container\"; sleep 10s;
    image: busybox
    imagePullPolicy: IfNotPresent
    name: init-test
    resources: {}
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File

@phoenix-bjoern Please also update the version of the chart here.

following semver the version has been raised to 4.3.0 (feature release). This PR should be merged after #29.


API rate limiting

Also, it's now OK to not use any API Key. You will just be rate-limited.

Coverage decreased (-0.04%) to 66.614% when pulling 4a243f8e025fc20d309e482827efe6b1e106a2a7 on feat/rate-limit into 9b35de4a102181060ad1979ba66a6674bcd0ac2a on master.


Make TreeItemHighlights API public

Ref https://github.com/Microsoft/vscode/issues/61313
This is the API that allows extension authors to highlight the labels

Well, there is no extra loop enforcement rule but lets make sure our excitement about this doesn't make use push something we haven't thought enough about

The references view has used this API for a long time. To verify, read the inline documentation for the API and make sure it makes sense: https://github.com/Microsoft/vscode/blob/01bbb81052086edf3398e599f218e189c44b0658/src/vs/vscode.d.ts#L8958-L8958


[enh] add random_state warning to SVM probability estimates

Description
Sklearn's SVM implementation depends on libsvm (https://github.com/cjlin1/libsvm) which uses an RNG only for cross-validation in the probability estimates.  The seed for the RNG is controlled as a parameter for sklearn, and is made available for sklearnex. As we use a CalibratedClassifierCV for generating the probability estimates, the ability to set the RNG seed is lost.  This loss of functionality should be made known to the user, as changing the seed will have no effect.  This adds a warning to the _fit_proba method if random_seed is not None (i.e. when the user tries to force a value).  This will only show for attributes of SVM which are influenced by the cross-validation (probabilities).
If/when probability estimates are implemented in oneDAL, then a RNG seed will likely need control, and this warning can be removed.
Fixes # - issue number(s) if exists

[ ] I have reviewed my changes thoroughly before submitting this pull request.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have updated the documentation to reflect the changes, if necessary (updated in # - add PR number)
[ ] The unit tests pass successfully.
[ ] I have run it locally and tested the changes extensively.
[ ] I have resolved any merge conflicts that might occur with the base branch.
[ ] Git commit message contains an appropriate signed-off-by string (see CONTRIBUTING.md for details)
[ ] I have added a respective label(s) to PR if I have a permission for that.

/intelci: run


Remove binaries from source tree

Greetings,
Why does the source tree contain the binary files?
Thanks,
coast

OK, i understand.


Unable to use XOR-URL as mp4 resource

While testing this safe-patter issue, I generated an XOR-URL, safe://hygducftyhxpnrtc3t8zoqdpn1tguyuitpabs8grgez1qqojphfqbqqauxb9o, for a 3.67MB mp4.
I'm unable to view it in browser, as already reported in safe_browser #489, however furthermore, I'm unable to use it as a src for a video tag at safe://xor.resources.

      <video controls>
          <source src="safe://hygducftyhxpnrtc3t8zoqdpn1tguyuitpabs8grgez1qqojphfqbqqauxb9o" type="video/mp4">
      </video>

This video element will remain blank.
I am able to, however, use an NFS file as a src and view the video at safe://home.resources, like so:

      <video controls>
          <source src="safe://home.resources/test_video5.mp4" type="video/mp4">
      </video>

I see multiple -301: File not found errors.
Probably a simple enhancement to fetching behavior, where it's currently solely looking for an NFS file resource instead of a raw buffer from an ImmutableData.
Although NFS files are not expected to have been ciphered, as ImmutableData is, so that does add a little more complexity to fetching.

@hunterlester I don't think this is a limitation in NFS file vs. XOR-URL/ImmD resource, we are already using XOR-URLs in src tags in Patter and WebID Mgr. app, so the problem is more related to this particular type of file.


Add builder for product attributes that have options

I've been running into an issue where I need to test product attributes that use options (not from a custom database source model). This PR adds the ability to add options to the database for a given attribute.

I'm getting a CodeClimate failure on the use of an else expression, never encountered that, and I pulled my code from an existing class.

I'm getting a CodeClimate failure on the use of an else expression, never encountered that, and I pulled my code from an existing class.

Great! Nevermind the CodeClimate issue, I've set it to "wontfix" now. Removing else will not make this code simpler IMHO

Great! Nevermind the CodeClimate issue, I've set it to "wontfix" now. Removing else will not make this code simpler IMHO


Price/billing period values

I have an In-app product subscription set up in the Google Play Console to bill on a monthly basis. As shown in the image below, it shows the price/billing period (22.99/5 min). I can't seem to find out where this billing period comes from and how I can change it. I'm using the getSubscriptions method and in the return response, I don't see anything about the billing period either.
Version of react-native-iap
4.0.8
Version of react-native
0.61.2
Platforms error
Android
Expected behavior
Price/Billing period to correctly show the subscription on a monthly basis.
Actual behavior

Tested environment (Emulator? Real Device?)
Emulator

It is expected when you are testing purchase in test environment.

@hyochan I see, thanks for the response. This issue can then be marked as closed.


Invalid transaction timestamp

Hi,
Sometimes when I send ARKs I get the following message:
Error: Invalid transaction timestamp
However, I can see the transaction in the transactions tab with 0 confirmations. Restarting the client doesn't remove it, it disappears only when I make a successful transaction.
For some reason I can't screenshot the ArkClient window, it captures the desktop like the window is transparent. I'm using Mac OS 10.11.6.

Error: Invalid transaction timestamp  - update your OS clock  http://www.macinstruct.com/node/92 and restart Ark client.
For screenshot you need to disable protection (its a security feature if someone would remotely login to your computer they couldn't see Ark client screen). To disable it click in the upper left menu - application - Disable screenshot protection (unsafe).
Make sure you have Ark client version 1.1.0.

Hi,
I use 1.1.0 and I believe my clock is pretty accurate, it's set to auto update from time.euro.apple.com. Could be a temporary issue, I'll let you know if this happens again.
Yeah, I forgot about the screenshot protection...


no rtst support

rtsp://<IP_ADDRESS>:554/PLTV/88888888/224/3221226087/10000100000000060000000001759104_0.smil
display "unknow error"

rtsp need to recompile  ijkplayer ,then replace  the so  file
https://www.jianshu.com/p/ded73b154356

add rtsp support


Submit Fail message for RAH

When an RAH has added content and tries to submit it to staff for review or approval if there is something blocking submission (ex. AUMs are over) that section is highlighted in pinky-red but there is no message that the submit failed -- please review highlighted section. RAH can mistakenly think submission was complete.


Indexes only work if NetworkX ids are integers

_create_node and _create_edge accept only integers as ids (nx_id, from_id, to_id). The ids could be, e.g., strings. Graphviz Python libraries create node ids that are integers. If ids are not integers it's impossible to generate valid Memgraph queries.
Take a look here (How to analyze Python, Cpp and Rust dependencies? PART 2) to see the details about the problem. The solution was to use gqlalchemy as a library and reuse some of the functions, but it's definitely possible to push all the required capabilities into gqlalchemy.

I see two ways to tackle this.

Add support for strings and escape the index when creating the cypher query with quotes.
Support all data types by hashing the ID with a function to an integer.

What do you think, is there a better way for approaching this?

Both options should be fine :smile: Option 1. seems a bit better to me because the same values are used directly (all types could be supported).

Yeah, I agree for strings, but what do you mean by "all types could be supported"? How would you support IDs of type "Person", for example? By using the hash approach that would be trivial.
Maybe we could support built-in types by escaping them so the representation stays the same, but if the type is unknown we could use the python built-in "id" function to get the id.

Thanks for reporting the issue, I agree with option one, this was overlooked in the initial implementation...

Here is a minimal example, example.py produces queries that can't be imported. Please rename the example files because .py and .dot can't be directly uploaded here :smile:
example_dot.txt
example_py.txt
requirements.txt


What's the best way to establish conversion for a custom "convention" storing data in .mat files in Matlab

The convention described at https://mvdmlab.host.dartmouth.edu/wiki2/doku.php?id=analysis:nsb2017:week2#introduction_to_neural_data_types . Primarily it is already spike sorted data (spike timings), LFP (continuous), events into .nwb files.  Should we code directly in pynwb? or matnwb?  or there is some help from neuroconv abstactions to somehow just "route" data sources and convert some metadata types readily?
Thank you for the guidance.

Hi,
In my opinion, Neuroconv doesn't offer an easy abstraction that would help you speed up your process. Let me explain.
Neuroconv works well for building interfaces that automatically extract data from common and stable formats. If the format or convention in MATLAB is stable and widely used, it makes sense to build an interface in Neuroconv so other users can benefit. A good example is the CellExplorer format by György Buzsáki, MD, PhD, which I describe in more detail below. However, this is not commonly the case in my experience. MATLAB conventions tend to be neither popular nor stable enough to justify the effort of writing an interface. In most of our conversions that involve interacting with MATLAB code, we write conversion-specific code to achieve this. Here's a recent example.
Regarding the choice between Python and MATLAB, I think it largely depends on who is doing the conversion. If the person is more proficient in MATLAB, then it might be a good choice to write the conversion code in MATLAB. Neuroconv is a Python library, and most of us have expertise in Python, so we do our conversions in Python. Another consideration is that Python support is generally better, so if all else is equal, I would opt for Python.
Those are the trade-offs I would consider.
To shed further light on what the effort with Neuroconv would look like, I can describe how the code to extract spike timings for the CellExplorer Buzsáki lab format works.
The Neuroconv way of doing this would be to create an interface to extract the data. You can see a good example in the CellExplorerInterface:
A sorting extractor in SpikeInterface reads the data from the MATLAB convention as a sorting extractor object.
The interface in Neuroconv uses the sorting object from SpikeInterface and also reads the metadata from the MATLAB code. They work together for extracting the data to NWB, and Neuroconv does have facilities to route the data to the correct types into NWB.
CellExplorerInterface code
SpikeInterface code
But you would need to build objects like this.
I hope this was useful in giving you a better idea of the effort involved in building an interface versus using custom code. Feel free to ask any more questions or reach out to me on Slack for a short discussion if you need

Thank you @h-mayorquin ! attn @manimoh @mvdm :point_up:


Updated default text color to #4f4f4f

@juujisai what happened here?

Closing, duplicate of https://github.com/mdbootstrap/TW-Elements/pull/1993


snapcraft.yaml: fix architectures key

The current architectures key worked with the old snapcraft, but this
is now interpreted as the snap being a multiarch snap.
Currently, if the snap is built it with a recent version of snapcraft it shows up as "edgexfoundry_..._multi.snap", which is wrong.

recheck


Raw queries with bindings do not work with data type conversion functions.

Laravel Version: 7.6.2
PHP Version: 7.2.19
Database Driver & Version: sqlsrv 15.0.2000.5

Description:
Raw queries with bindings do not work with data type conversion functions CAST() and CONVERT().
Steps To Reproduce:
//select count(*) from [tbl_rfaccount] where CONVERT(varchar, id) = 'test'
$count = DB::connection('sqlsrv_rf_user')->table('tbl_rfaccount')
  ->whereRaw("CONVERT(varchar, id) = ?", $request->input('id'))
  ->count();
//$count = 1

//select count(*) from [tbl_rfaccount] where id = CONVERT(binary(13), 'test')
$count = DB::connection('sqlsrv_rf_user')->table('tbl_rfaccount')
  ->whereRaw("id = CONVERT(binary(13), ?)", $request->input('id'))
  ->count();
//$count = 0

Both of those should return $count = 1 but only the top query does. When pasting those two queries directly into the database manager both return a count of 1.
I've used Laravel Telescope to see the queries being executed and the code outputs the query commented above it.
The same behavior happens with INSERT.

Hey there,
Can you first please try one of the support channels below? If you can actually identify this as a bug, feel free to report back and I'll gladly help you out and re-open this issue.

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

Thanks!

I've posted this issue to several support channels:

https://laracasts.com/discuss/channels/laravel/laravel-query-builder-whereraw-with-convert-to-datatype-returning-different-results
https://laravel.io/forum/raw-queries-with-bindings-not-working-with-data-type-convers
https://stackoverflow.com/questions/61312251
https://discordapp.com/channels/297040613688475649/486983156411400202/701764904138309735
https://larachat.slack.com/archives/C039F76DN/p1587384686348500

No luck so far.

I guess this is a problem with PDO and data types. If I use the sqlsrv driver without PDO everything works fine. I have no clue how to get around this while being able to use Larave's query builder so I'm just going to give up for now as this has wasted me over 20 hours.


fix calculation and usage of partitionDeltas

The calculation of the partitionDeltas for a geometry is now based
on the given resolution ot the mapview, to prevent an overload of
partitionpoints in edge cases.
Add listener to the event 'change:resolution' of map.getView() to
refresh the overlays on zoom interactions while drawing

Nothing to adapt in GeometryUtils.test.js?

Should be :)  The fixed/updated method was only tested within OlMeasurementHandler.test.js. This tests are updated. But moving the most part of the tests to GeometryUtils.test.js, would be better.

The slightly decreased test coverage made me think of this...

ok, i got it....the decreased test coverage is made by untested branch, resulted from a changed behavior ('update tooltips/overlays also on zooming')
...and fixed a newly introduced bug ('spamming overlays')


added confidences to neural networks output

addresses #2758

Wow welcome back ;)

@lisitsyn Thanks :)

Welcome :)

Could you please add confidences for binary classification as well?

@karlnapf Thanks :)
@lisitsyn Forgot about those :) added them now.

Thanks @khalednasr !


reenable parallel test runs in CI

it looks like after #633 it works smoothly
I've ran several CI rounds and there was no failures
cc @arssher @kelvich

Yeah, let's try again

We probably try to run the 'benchmarks' test suite in parallel, there's too much chance of tests interfering with each other. Also, it looks like we don't print the test results from the 'benchmarks' test anymore.

Also, it looks like we don't print the test results from the 'benchmarks' test anymore.

From all tests, I think, as pytest-xdist swallows stdout, see
https://github.com/pytest-dev/pytest-xdist/issues/402
https://stackoverflow.com/questions/36726461/how-to-print-output-when-using-pytest-with-xdist
Seems like we need to write only to stderr (which may be another reason to adopt logging, which I find useful anyway, e.g. to print timestamps) or invent something else.

From all tests, I think, as pytest-xdist swallows stdout,

Benchmark report is written using special hook see https://github.com/zenithdb/zenith/blob/main/test_runner/fixtures/benchmark_fixture.py#L165. So this shouldn't be a problem with stdout.
I'll look at this. One of the options is just disabling parallelization for performance tests

I mean, stdout currently is quite valuable for all tests to investigate problems, not only for performance tests -- we should keep the content.

Yeah, I agree, just to mention that this is not an issue in that particular case


Malicious security for top-level OPRF IPA protocol

Current status is that there are compact gate issues to debug with the DZKPs:
thread 'tokio-runtime-worker' panicked at /Users/Andy/Development/ipa/target/debug/build/ipa-core-5e42fe9f15b7d280/out/protocol_gate.rs:192137:17:
unexpected narrow for ProtocolGate(/ipa_prf/convert_fp25519) => ZeroKnowledgeProofValidateStep(d_z_k_p_malicious_protocol)
stack backtrace:
thread 'tokio-runtime-worker' panicked at /Users/Andy/Development/ipa/target/debug/build/ipa-core-5e42fe9f15b7d280/out/protocol_gate.rs:192137:17:
unexpected narrow for ProtocolGate(/ipa_prf/convert_fp25519) => ZeroKnowledgeProofValidateStep(d_z_k_p_malicious_protocol)
stack backtrace:
thread 'tokio-runtime-worker' panicked at /Users/Andy/Development/ipa/target/debug/build/ipa-core-5e42fe9f15b7d280/out/protocol_gate.rs:192137:17:
unexpected narrow for ProtocolGate(/ipa_prf/convert_fp25519) => ZeroKnowledgeProofValidateStep(d_z_k_p_malicious_protocol)

Test case is cargo test -p ipa-core --test compact_gate --no-default-features --features "cli web-app real-world-infra test-fixture compact-gate" -- compact_gate_cap_8_no_window_malicious

Rather than add a bunch more stuff to this PR, I updated the tests to avoid running malicious IPA with compact gate. I'll open a new one with the compact gate fixes.


Feature/add default meta

This PR adds two things:
A new --metas flag for the genkey commands, which can be used like this:
$ vegawallet genkey --name="bob" --metas="primary:true;name:Bob's fav key"

Which will generate a new key for bob, and add the following metadatas:

[1] primary = true
[2] name = Bob's fav key

This also create a default metada for all new key with no metadatas specified at creating time.
The new metatada key is name and the value will follow the following pattern: (WALLET_OWNER_NAME)'s key len(OWNER_KEYPAIRS), so if Bob is creating his fifth key, it'll be named: bob's key 5.
closes #10

I will merge, but @candida-d is going to add a change to the README in this branch before merging

Would love for someone else to review my readme changes @edd, or @campbellssource - thanks @jeremyletang for already reading.


Factor "X not available when isolation disabled" into common function

@christianpoveda added that same check half a dozen times or so. I think it would make sense to factor that into a small helper function that's called everywhere to avoid duplication.
The error message should also mention -Zmiri-disable-isolation so that people know how to make the error go away.

Should this go in src/helpers.rs as an standalone function? this doesn't need anything from ecx to be inside the extension trait

Well it needs to access the "are we in isolation" flag, right?

Oh yeah I was thinking in just factoring the error, not the isolation check. Time to work

Ah I see. I meant all the common code, including the check.


Enhancement: Show unit path when selected

I often send my units on long trips, and I tend to forget where I'm sending them to. I'd really love to see the planned path when I select a unit with existing orders, basically seeing the same as when I select a destination to begin with.

I've been considering something like this using the trade path overlay and maybe a map pin that pops up at the destination. IIRC I shelved the idea for later when I discovered how complex the unit flag system was

I do so miss the Civ5 Show Move mod. Then I read "trade path overlay" and started drooling.

Select unit with a move order (apply to queue)
Draw planned route to destination
Allow planting assumed enemy ZoC tiles to alter route
Allow manually redrawing route using control points

The route to destination alone would be awesome!

Allow planting assumed enemy ZoC tiles to alter route

@emperorfool Wondering, what do you mean by this?

Heck if it could just add a simple "which tile is this unit going to" highlight as an easy first step, that'd be a huge help.  The path can then be the next evolution.

@vttale For sure, never let perfection be the enemy of good enough. :)
@astog My ideas are for allowing you to alter a unit's path a la Civ4 with chained destinations but more intuitively. Way beyond this would let you placing markers where you think stationary enemies are located (encampments) so the path would automatically adjust to avoid them. It's very pie in the sky.
Here's a natural progression of complexity:

Show a marker at the destination.
Draw the path to the destination.
Color-code the path segments to denote where the unit will be at the end of each turn.
Fix the pathing so the unit actually follows that path!


0.69.1 tag is missing

Problem
While packaging Rust 1.68.2 for Homebrew at https://github.com/Homebrew/homebrew-core/pull/126876, I noticed that Rust 1.68.2 ships Cargo 0.69.1 (based on the info obtained from https://github.com/rust-lang/rust/pull/109644). However, Cargo 0.69.1 is not tagged in the GitHub repo at the moment, and 0.69.0 is still displayed as the latest version on crates.io (https://crates.io/crates/cargo). May I confirm if there should be a 0.69.1 tag for Cargo? Thanks!
Steps
No response
Possible Solution(s)
No response
Notes
No response
Version
No response

@pietroalbini could you take a look or delegate this to someone? Thanks!!

Pushed the tag and published on crates.io.

Thanks @pietroalbini and @weihanglo!


QKC/OP Devs Meeting #10 Agenda

Meeting Info

July 20, 2024, 10:00 UTC+8
Duration: 60 minutes
Meeting link
Anyone can comment on the agenda where they would like this to be discussed.

Agenda

Protocol/App/Research progress

make testnet explorer work for https together with @qzhodl
make testnet faucet work for https when uploaded to ES together with @qzhodl
created a PR to make inbox as contract optional , and a spec for it, to prepare for superchain.
created a PR to back port eth_blobBaseFee required by cast send
debug rpc parse error found by @iteyelmp , added more log
read some articles about based rollup and preconfs

EthStorage deployed and a simple guide
Bridge frontend deployed and tested
Nginx setup to support https

Read reth-bench code and will add more execution metrics.

Add test cases and fix bugs for _findExecTraceAncestor() and addLocalData() of multi-sec fault proof

https://github.com/ethstorage/optimism/pull/35
https://github.com/ethstorage/optimism/pull/36
https://github.com/ethstorage/optimism/pull/39


Spelling Error in Node Help

MyRandomNode
Author: GoodAI
Status: Working
[...]
MyRNGTask - Generate random numbers
This task will generate your rundom numbers.

Should be random instead of rundom.

BrainSimulator/Sources/Modules/BasicNodes/Module/Common/MyRandomNode.cs
Line 82
https://github.com/GoodAI/BrainSimulator/blob/e8d489bdf76a317db9ff9f26a98cc26676f2226a/Sources/Modules/BasicNodes/Module/Common/MyRandomNode.cs

For future spelling errors: How can I solve them myself without poking a contributor and without forking the whole thing?

Fixed, thanks!
(Hopefully, there will not be so many typos.-)


Remove migrated binaries

This commit removes the binaries that were migrated to their dedicated
git repos.
Fixes #1673
Fixes #1649
Fixes #1652
Fixes #1631
Fixes #1165
Fixes #1711
Fixes #1670
Fixes #1639
Signed-off-by: Dominik Schulz<EMAIL_ADDRESS>

Codecov Report

Merging #1712 (6bcbb74) into master (ddfe7bf) will increase coverage by 1.38%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1712      +/-   ##
==========================================
+ Coverage   57.23%   58.61%   +1.38%
==========================================
  Files         206      190      -16
  Lines        9847     9106     -741
==========================================
- Hits         5635     5337     -298
+ Misses       3546     3158     -388
+ Partials      666      611      -55

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 ddfe7bf...6bcbb74. Read the comment docs.

Codecov Report

Merging #1712 (6bcbb74) into master (ddfe7bf) will increase coverage by 1.38%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1712      +/-   ##
==========================================
+ Coverage   57.23%   58.61%   +1.38%
==========================================
  Files         206      190      -16
  Lines        9847     9106     -741
==========================================
- Hits         5635     5337     -298
+ Misses       3546     3158     -388
+ Partials      666      611      -55

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 ddfe7bf...6bcbb74. Read the comment docs.


Create README.md

@rokt33r has funded $10.00 to this issue. See it on IssueHunt

@rokt33r has submitted a pull request. See it on IssueHunt

@rokt33r has rewarded $7.00 to @rokt33r. See it on IssueHunt

:moneybag: Total deposit: $10.00
:tada: Repository reward(20%): $2.00
:wrench: Service fee(10%): $1.00


input html5 pattern support

When I use for html5 form input it's not work parallel with input regex pattern. I hope you can add this spec.

Indeed I needed this kind of functionality as well since for my date inputs I usually don't use type="date" as browser support is not perfect but type="text" with some JS datepicker and add some validation via "pattern" attribute.
I hacked it up together simply by changing the getRandomDataForField method to be this way:
getRandomDataForField(field, element) {
    const pattern = element.getAttribute('pattern') || null;

    if (pattern) {
      return new RandExp(pattern).gen();
    }

    // rest of the function
}

The issue comes in the "rest of the function" part - I'm not sure completely bypassing everything else to force our way through in case a pattern is specified is the optimal solution here.
I'd also like to specify my own usage of the extension: I don't need the data to make sense, I'm just trying to quickly test a form. I don't mind it not making any sense, so anything regex generated would be okay in my case. I'm not sure that's the case for other users as well though, reason why I'm asking here.


Prevent LOH allocations when constructing Razor source documents

Today we Create our Razor documents one way. We should inspect the size of the stream we're reading and buffer it incrementally to avoid LOH allocations. This is similar to what Roslyn does: https://github.com/dotnet/roslyn/blob/4799250ab7adf1e8ca39d79961fcd4cbcb96fa1f/src/Compilers/Core/Portable/Text/SourceText.cs#L127-L131

Fixed by dee8d86. Thanks again @Yves57


⚠ Bofrost.be has degraded performance

In 262da6e, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2065 ms

Resolved: Bofrost.be performance has improved in ddc76b4.


remove the VERSION_NEGOTIATION_ERROR

Splitting this off from #2252.

Codecov Report

Merging #2254 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #2254      +/-   ##
==========================================
- Coverage   86.52%   86.52%   -<.01%
==========================================
  Files         106      106
  Lines        7873     7871       -2
==========================================
- Hits         6812     6810       -2
  Misses        797      797
  Partials      264      264

Impacted Files
Coverage Δ

internal/qerr/error_codes.go
100% <ø> (ø)
:arrow_up:

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 d869b76...02acf81. Read the comment docs.


Apply branch-0.2 documentation updates to gh-pages

Signed-off-by: Sameer Raheja<EMAIL_ADDRESS>
Please write a description in this text box of the changes that are being
made.

Apply changes from branch-0.2 commit b89d9bd5bf9a9f30490d33d64cbd5bc0101a1a38 to gh-pages.  Related PR #422

Please ensure that you have written units tests for the changes made/features
added.

Tested locally with docker run --rm -it  --volume="$PWD:/srv/jekyll" -p 4000:4000 sameerz/jekyll:0.1 jekyll serve.  Note that in my testing, links with filename.md#anchor do not work, but they appear to work correctly on gh-pages.  Related: PR #419 .

build

@sameerz this is kind of a side question.  What are we supposed to do about the build for documentation changes.  This branch has no jenkins scripts for premerge so the "build" will always fail. I also don't know what if anything triggers "Page Build" and "github/pages"

I've turned off the two CI checks on this branch until we have something setup to satisfy them.

@revans2 I am not yet familiar with the way the gh-page builder works, or how it reports results.  It is something I need to look into.

@sameerz this is kind of a side question. What are we supposed to do about the build for documentation changes. This branch has no jenkins scripts for premerge so the "build" will always fail. I also don't know what if anything triggers "Page Build" and "github/pages"


no phone even if phone is in inventory

hi i get this message when i use f1 or /phone with npwd even if i have a phone in my inventory. not sure why, the code is super basic but i cant get it working. thanks in advance!

did you read the readme.md?
and what ESX version are you using?

Yes I did.
I'm using esx legacy. But if it was the esx version it would show an error.

hmm okay add me on discord then i can help you better: Sander#2211

Same problem on esx legacy...

I'm currently using ESX_Legacy and have been able to fix this:
I've submitted a PR for you >> https://github.com/Sander2222/phone_export/pull/2


Remove SHUTDOWN_PORT

It is actually not used at all.

Ok, funny: This is the same issue I opened 2 years ago: #10


IPC Mechanisms

Is there an documentation available for public sw interface in Apollo to
a.	   Feed in raw sensor data (e.g. camera image, radar data)
b.	   Receive vehicle control information (steering, acceleration, braking etc.)
What IPC is used for sending data as input and for receiving the output from Apollo (e.g. ROS, TCP/IP sockets etc.)?

Apollo communicates based on the Cyber RT framework. You can pass messages through writer/reader in Cyber. There are some examples in CyberRT_API_for_Developers.

Seems to be resolved, we will close this issue. If the problem persists, pls feel free to reopen it or create a new one and refer to it.


use component namespaces for light, mimic and say

needs https://github.com/ipa320/cob_command_tools/pull/98
needs https://github.com/ipa320/cob_driver/pull/223
includes https://github.com/ipa320/cob_robots/pull/285

tested on cob4-2: OK

Visual Review: OK


Add right-click menu for inputs

This should include the classic options like:

[ ] Cut (Ctrl-X)
[ ] Copy (Ctrl-C)
[ ] Paste (Ctrl-V)
[x] Select all (Ctrl-A)

Requires https://github.com/blueburncz/Forms/issues/3

"Select All" implemented in 8c3674733895b45dc3a89d8f373ade9c9474c202. The rest should be easy :)

Implemented cut, copy and paste in 98f56fe2b05007e51c0afb54527de338787904fe


Refactor Graph routines and classes into a new module

The graph stuff is getting big, need to make this a new package.  Base it on GraphBLAS where applicable, but more like igraph if a choice has to be made.

Module being moved to Chingon starting with https://github.com/buddha314/chingon/issues/1


disqus

does this theme support disqus, ever since I migrated my blog, (which included moving hosts and updating the theme) my disqus hasn't worked. As far as I can tell I've done all the migration steps on disqus, but it's still not showing up.
https://xenoterracide.com
https://github.com/xenoterracide/blog

it was my baseurl

Thanks for using the theme. 😊
If you're interested in v2 version of the theme please check dev branch, or preview it at https://blog.amzrk2.cc
Note that v2 is still under development, there may be major changes.


update Jupyter tests

Update jupyter backend tests to use a pattern that can move the asyncio loop forward until it sees certain message types. This also helps highlight a problem in test_reconnection where we sometimes miss status messages while we're disconnecting / reconnecting a socket. That will be fixed in the next PR.

Current dependencies on/for this PR:

main

PR #51   👈

PR #52

PR #53

This comment was auto-generated by Graphite.

Codecov Report

Merging #51 (69268c9) into main (71313c8) will decrease coverage by 0.20%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #51      +/-   ##
==========================================
- Coverage   94.58%   94.38%   -0.21%
==========================================
  Files           8        8
  Lines         499      499
==========================================
- Hits          472      471       -1
- Misses         27       28       +1

Impacted Files
Coverage Δ

sending/backends/jupyter.py
96.51% <0.00%> (-1.17%)
:arrow_down:

Continue to review full report at Codecov.

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


Inheritance creating duplicate foreign keys and indexes

I have a TPH that looks like this:
    [Table("Entity")]
    public class BaseEntity
    {
        [Key]
        public Guid Guid { get; set; }

        public string Value { get; set; }
    }

    [Table("Entity")]
    public class ChildEntityOne : BaseEntity
    {
        public string ValueOne { get; set; }

        [ForeignKey(nameof(OtherEntityId))]
        public OtherEntity OtherEntity { get; set; }

        [Column(nameof(OtherEntityId))]
        public Guid? OtherEntityId { get; set; }
    }

    [Table("Entity")]
    public class ChildEntityTwo : BaseEntity
    {
        public string ValueTwo { get; set; }

        [ForeignKey(nameof(OtherEntityId))]
        public OtherEntity OtherEntity { get; set; }

        [Column(nameof(OtherEntityId))]
        public Guid? OtherEntityId { get; set; }
    }

    [Table("Entity")]
    public class ChildEntityThree : BaseEntity
    {
        public string ValueThree { get; set; }
    }

    [Table(nameof(OtherEntity))]
    public class OtherEntity
    {
        [Key]
        public Guid Guid { get; set; }

        public int SomeData { get; set; }
    }

Both ChildEntityOne and two have a foreign key to OtherEntity and I want them to share the same table column. The Issue is that in Sql Server, it generates the same foreign key multiple times.

I have a project that displays the Issue here, just change the connection string. It happens in EF Core 2.2.
Is there a workaround for this issue in the meantime?

Also experiencing the same problem with a similar setup after upgrade to 2.2.0. This problem persists on any machine that seems to have installed the SDK, even after downgrading the solution packages to 2.1.4

Duplicate of #12963


Angular attribute support

HTML for Angular apps can have boolean attributes like "_ngcontent-c24" and "_nghost-pmm-5"
These currently can't be used as custom attributes because all underscores in the attribute keys get converted to dashes. This change will skip a leading underscore when converting the attribute key so that these attributes get processed successfully.
There's a performance hit but it's very tiny, about 0.1 seconds per 100k key conversions.
Adding support for attributes with leading underscores would allow you to do some useful things for angular apps. One example would be the angular components here:
https://material.angular.io/components/select/overview
When one of these select controls is clicked, the custom element that contains the select options shows up outside of the element for the select control. But the ngcontent attribute from the select control could be used to directly locate the container element for the select options as well the options themselves.
I spent some time looking at how custom attributes are getting implemented. There may be a few other cases where a leading underscore is used (other than angular.) I couldn't find any case where a leading dash was used (apparently that's way too nutty for anyone out there.) But this change would support both of those cases. Because of how they'd have to specify these sorts of attributes it seems unlikely that anyone would do it by accident.
@titusfortner

My first thought was that we should add it to [WatirAngular](https://github.com/titusfortner/watir_angular/ instead?) instead of here, but this is a very minimal change, so that seems overkill. @jkotests / @p0deje any objections?

I don't see anything in the spec that forbids to start attribute names from underscore, so let's merge.

I think that adding this makes sense. There have been cases where the conversion from underscores to dashes was problematic. For example, one person had a attribute of data-card_id. Adding this would be a step towards addressing the larger issue.
However, I'm not convinced that the regexp, in gsub(/(?<=[a-z,0-9])_/, '-'), is correct. A key of "data_tesT_a" will be converted to "data-tesT_a" when before it would be "data-tesT-a".

Yeah, I'd actually prefer that (just pass through without modifying if it's a string.) I can make that change if everyone's happy with that.

Until 11/2017 we forced attributes to be valid, so this idea would just be a minor addition to it.
@p0deje I can't load that page on the wifi I'm on (keeps crashing my browser), but I thought that custom attributes per spec needed to be prepended with data-, so all of these things would technically be outside the spec.

@titusfortner You are actually right and the only custom attributes allowed are data-*, though there are discussions about changing that. Keeping this in mind, I think we should just pass strings unmodified so that anyone can use any kind of custom attributes without changing Watir code.
@jfitisoff Can you fix indentation (it should be 2 spaces)? Once it's done, you can either squash commits or we'll do that when merging PR.

@p0deje yeah, sorry about that, was cutting and pasting between two editors and missed that part. indentation is hard. :-)

@p0deje that conversation was way too long to follow. If I get to go to TPAC in October maybe I'll check in on it. :)
Also, I'm working on a fix for the specs so we don't have everything showing up as failing. I think I have the right fix, expect it soon.


auth-utils: add support in the native image

Related Content Pull Request
Related PR: link to the PR at demisto/content
Related Issues
Related: https://jira-hq.paloaltonetworks.local/browse/CIAC-861
Related PRs
Related: https://github.com/demisto/dockerfiles/pull/19547
Description
after the new image auth-utils will be merged in this PR
this PR will update the native image to support the new auth-utils image

just left is my comment regarding pydantic, otherwise lgtm


Memcached requests are failing

When testing with a modified version of a docker image:
version info:
# docker run -it --rm -P dyno
[2015-12-22 15:45:39.902] dn_print_run:204 dynomite-0.5.6 built for Linux 3.19.7 x86_64 started on pid 12

tested with (similar results for get/put):
# (printf "quit\r\n"; sleep 3) | nc localhost 8102

log snippet:
[2015-12-22 15:47:38.732] event_wait:263 epoll 0001 triggered on conn 0x13bbcd0
[2015-12-22 15:47:38.733] core_core:397 event 00FF on PROXY 7
[2015-12-22 15:47:38.734] _dn_alloc:253 malloc(88) at 0x13c4310 @ dyn_dict.c:176
[2015-12-22 15:47:38.734] client_ref:100 ref conn 0x13c4140 owner 0x13b22a0 into pool 'dyn_o_mite'
[2015-12-22 15:47:38.735] conn_get:380 get conn 0x13c4140 CLIENT
[2015-12-22 15:47:38.735] stats_pool_to_metric:1519 metric 'client_connections' in pool 0
[2015-12-22 15:47:38.735] _stats_pool_incr:1538 incr field 'client_connections' to 0
[2015-12-22 15:47:38.736] event_add_conn:206 adding conn 0x13c4140(CLIENT) to active
[2015-12-22 15:47:38.736] proxy_accept:355 accepted CLIENT 10 on PROXY 7 from '<IP_ADDRESS>:37055'
[2015-12-22 15:47:38.736] proxy_accept:297 accept on PROXY 7 not ready - eagain
[2015-12-22 15:47:38.737] stats_swap:1436 skip swap of current 0x13b2130 shadow 0x13b41a0 as aggregator is busy
[2015-12-22 15:47:38.737] core_process_messages:504 length of C2G_OutQ : 0
[2015-12-22 15:47:38.737] event_wait:263 epoll 0004 triggered on conn 0x13c4140
[2015-12-22 15:47:38.737] core_core:397 event FF00 on CLIENT 10
[2015-12-22 15:47:38.738] event_del_out:180 removing conn 0x13c4140(CLIENT) from active
[2015-12-22 15:47:38.738] stats_swap:1436 skip swap of current 0x13b2130 shadow 0x13b41a0 as aggregator is busy
[2015-12-22 15:47:38.738] core_process_messages:504 length of C2G_OutQ : 0
[2015-12-22 15:47:38.740] event_wait:263 epoll 0001 triggered on conn 0x13c4140
[2015-12-22 15:47:38.740] core_core:397 event 00FF on CLIENT 10
[2015-12-22 15:47:38.740] _msg_get:250 allocated #msgs 0 hit max allowable limit
[2015-12-22 15:47:38.740] core_close_log:290 close CLIENT 10 '<IP_ADDRESS>:37055' on event 00FF eof 0 done 0 rb 0 sb 0: Resource temporarily unavailable
[2015-12-22 15:47:38.740] event_del_conn:229 removing conn 0x13c4140(CLIENT) from active
[2015-12-22 15:47:38.741] stats_pool_to_metric:1519 metric 'client_connections' in pool 0
[2015-12-22 15:47:38.741] _stats_pool_decr:1556 decr field 'client_connections' to -1
[2015-12-22 15:47:38.741] stats_pool_to_metric:1519 metric 'client_err' in pool 0
[2015-12-22 15:47:38.741] _stats_pool_incr:1538 incr field 'client_err' to 2
[2015-12-22 15:47:38.741] _dn_free:299 free(0x13c4310) @ dyn_dict.c:483
[2015-12-22 15:47:38.741] client_unref_internal_try_put:119 unref conn 0x13c4140 owner 0x13b22a0 from pool 'dyn_o_mite'
[2015-12-22 15:47:38.741] conn_put:482 put conn 0x13c4140
[2015-12-22 15:47:38.741] stats_swap:1436 skip swap of current 0x13b2130 shadow 0x13b41a0 as aggregator is busy
[2015-12-22 15:47:38.742] core_process_messages:504 length of C2G_OutQ : 0

Another error log (with get) looks like:
The gist:
[2015-12-22 16:12:37.012] memcache_parse_req:717 parsed req 7 res 4 type 1 state 3 rpos 8 of 8
00000000  67 65 74 20 66 6f 6f 0a                            |get foo.|
[2015-12-22 16:12:37.013] req_recv_next:378 eof c 11 discarding incomplete req 7 len 8

Whole thing:
[2015-12-22 16:12:37.001] event_wait:263 epoll 0001 triggered on conn 0x22ebcd0
[2015-12-22 16:12:37.004] core_core:397 event 00FF on PROXY 7
[2015-12-22 16:12:37.006] _dn_alloc:253 malloc(88) at 0x230be30 @ dyn_dict.c:176
[2015-12-22 16:12:37.010] client_ref:100 ref conn 0x22f45b0 owner 0x22e22a0 into pool 'dyn_o_mite'
[2015-12-22 16:12:37.010] conn_get:380 get conn 0x22f45b0 CLIENT
[2015-12-22 16:12:37.010] stats_pool_to_metric:1519 metric 'client_connections' in pool 0
[2015-12-22 16:12:37.011] _stats_pool_incr:1538 incr field 'client_connections' to 0
[2015-12-22 16:12:37.011] event_add_conn:206 adding conn 0x22f45b0(CLIENT) to active
[2015-12-22 16:12:37.011] proxy_accept:355 accepted CLIENT 11 on PROXY 7 from '<IP_ADDRESS>:37322'
[2015-12-22 16:12:37.011] proxy_accept:297 accept on PROXY 7 not ready - eagain
[2015-12-22 16:12:37.011] stats_swap:1436 skip swap of current 0x22e2130 shadow 0x22e41a0 as aggregator is busy
[2015-12-22 16:12:37.011] core_process_messages:504 length of C2G_OutQ : 0
[2015-12-22 16:12:37.011] event_wait:263 epoll 0004 triggered on conn 0x22f45b0
[2015-12-22 16:12:37.011] core_core:397 event FF00 on CLIENT 11
[2015-12-22 16:12:37.011] event_del_out:180 removing conn 0x22f45b0(CLIENT) from active
[2015-12-22 16:12:37.011] stats_swap:1436 skip swap of current 0x22e2130 shadow 0x22e41a0 as aggregator is busy
[2015-12-22 16:12:37.011] core_process_messages:504 length of C2G_OutQ : 0
[2015-12-22 16:12:37.011] event_wait:263 epoll 0001 triggered on conn 0x22f45b0
[2015-12-22 16:12:37.011] core_core:397 event 00FF on CLIENT 11
[2015-12-22 16:12:37.012] msg_get:408 get msg 0x22f4370 id 7 request 1 owner sd 11
[2015-12-22 16:12:37.012] mbuf_get:113 get mbuf 0x230bd70
[2015-12-22 16:12:37.012] mbuf_insert:214 insert mbuf 0x230bd70 len 0
[2015-12-22 16:12:37.012] conn_recv_data:522 recv on sd 11 8 of 16320
[2015-12-22 16:12:37.012] memcache_parse_req:717 parsed req 7 res 4 type 1 state 3 rpos 8 of 8
00000000  67 65 74 20 66 6f 6f 0a                            |get foo.|
[2015-12-22 16:12:37.012] stats_swap:1436 skip swap of current 0x22e2130 shadow 0x22e41a0 as aggregator is busy
[2015-12-22 16:12:37.012] core_process_messages:504 length of C2G_OutQ : 0
[2015-12-22 16:12:37.012] event_wait:263 epoll 0001 triggered on conn 0x22f45b0
[2015-12-22 16:12:37.012] core_core:397 event 00FF on CLIENT 11
[2015-12-22 16:12:37.012] conn_recv_data:522 recv on sd 11 0 of 16312
[2015-12-22 16:12:37.012] conn_recv_data:538 recv on sd 11 eof rb 8 sb 0
[2015-12-22 16:12:37.012] memcache_parse_req:717 parsed req 7 res 4 type 1 state 3 rpos 8 of 8
00000000  67 65 74 20 66 6f 6f 0a                            |get foo.|
[2015-12-22 16:12:37.013] req_recv_next:378 eof c 11 discarding incomplete req 7 len 8
[2015-12-22 16:12:37.013] mbuf_remove:237 remove mbuf 0x230bd70 len 8
[2015-12-22 16:12:37.013] mbuf_put:153 put mbuf 0x230bd70 len 8
[2015-12-22 16:12:37.013] client_active:166 c 11 is inactive
[2015-12-22 16:12:37.013] req_recv_next:392 c 11 is done
[2015-12-22 16:12:37.013] core_close_log:290 close CLIENT 11 '<IP_ADDRESS>:37322' on event 00FF eof 1 done 1 rb 8 sb 0
[2015-12-22 16:12:37.013] event_del_conn:229 removing conn 0x22f45b0(CLIENT) from active
[2015-12-22 16:12:37.013] stats_pool_to_metric:1519 metric 'client_connections' in pool 0
[2015-12-22 16:12:37.013] _stats_pool_decr:1556 decr field 'client_connections' to -1
[2015-12-22 16:12:37.013] stats_pool_to_metric:1519 metric 'client_eof' in pool 0
[2015-12-22 16:12:37.013] _stats_pool_incr:1538 incr field 'client_eof' to 2
[2015-12-22 16:12:37.013] _dn_free:299 free(0x230be30) @ dyn_dict.c:483
[2015-12-22 16:12:37.013] client_unref_internal_try_put:119 unref conn 0x22f45b0 owner 0x22e22a0 from pool 'dyn_o_mite'
[2015-12-22 16:12:37.013] conn_put:482 put conn 0x22f45b0
[2015-12-22 16:12:37.014] stats_swap:1436 skip swap of current 0x22e2130 shadow 0x22e41a0 as aggregator is busy
[2015-12-22 16:12:37.014] core_process_messages:504 length of C2G_OutQ : 0

@proger for the first can you set the flag "-M 200000" in Dynomite and see what happens? Then for both, can you use this branch and let me know if it works for you?

This is a fairly old issue that does not benefit to keep it open. There have been many advancements in Dynomite and there are related issues and a project that is open.


Support persist message to postgres?

Hello. Sorry to ask question here. I just wondering, does vernemq able persist any messages on some topics to database like postgres? Thank you.

Persisting offline messages to postgresql is currently not supported - persisting offline messages in SQL or NoSQL stores is something that will eventually be supported, without being able to say concretely when that will happen.


setState() called after dispose()

flutter: ══╡ EXCEPTION CAUGHT BY FLUTTER FRAMEWORK ╞═════════════════════════════════════════════════════════
flutter: The following assertion was thrown:
flutter: setState() called after dispose(): _ScrollingFabAnimatedState#ac8f4(lifecycle state: defunct, not
flutter: mounted)
flutter: This error happens if you call setState() on a State object for a widget that no longer appears in
flutter: the widget tree (e.g., whose parent widget no longer includes the widget in its build). This error
flutter: can occur when code calls setState() from a timer or an animation callback.
flutter: The preferred solution is to cancel the timer or stop listening to the animation in the dispose()
flutter: callback. Another solution is to check the "mounted" property of this object before calling
flutter: setState() to ensure the object is still in the tree.
flutter: This error might indicate a memory leak if setState() is being called because another object is
flutter: retaining a reference to this State object after it has been removed from the tree. To avoid memory
flutter: leaks, consider breaking the reference to this object during dispose().

I get this exception in a widget with a RefreshIndicator. If the user do some consecutive pull refresh, the exception arises.

A new version was release with your fix @luis901101


Traceur doesn't have any options to support trailing commas for function args

Could we implement this proposal for Traceur?

Yes. This is ripe for an implementation.


Docker container does not update settings properly

I've been having issues updating settings for sites. I'm using the 0.31 container and these are the things I've noticed

minutes_between_check Settings are only applied when restarting container even though I'm using the webpage to update them and I can see the url-watches.json file being updated. Personally not a problem for me, but I didn't see it in the documentation and think it could be helpful to know.
Some sites share the same individual settings. changing one specific one changes the other.

@RABijl thanks for the report!
About point 2, does it also affect the site history?

I do not see sites sharing diffs in the dashboard. I realize my explanation of point 2 is rather vague. So I'll try to explain it more clearly. These are the steps I take to reproduce the problem.

I add a new site
restart the container.
In the gui, I change the minutes_between_check of a specific site to 1 minute.
all other sites not paused check for changes
I change the timer of the specific site to 120m and all sites now check every 120m.

I also noticed that the specific site I mentioned in step 3 is the first entry in url-watches.json that isn't paused. maybe it's related to the issue.
p.s: besides this bug, I'm really enjoying the project. keep up the good work.

I've actually run into this bug.  Same steps although I did not restart the container after adding a new site as the first entry and changing the timers.  Restarting the container after creation seemed to fix it and now it checks on the predefined schedule.  Pausing and unpausing the stuck site did not appear to kick in the scheduler nor did rechecking manually.

Thanks again.. so I tried..

fresh new instance
add a site, immediately change its check time to 1 minute
hit [edit] on the default sites that come with it, i see they are all set to the default

seems fine.. unable to reproduce just yet
any other clues? I tried deleting all, adding 2 new, edit the first one's minutes setting to 1 minute, i can see the last one is still the correct default time

Yes that is also what i experience when looking the settings of the other sites. However, when I change the time of one specific site to one minute, all other sites will also start checking every minute while their settings show default times.

Ok, think I have it, should be available in :latest on dockerhub when https://github.com/dgtlmoon/changedetection.io/actions/runs/932238266 is complete

let me know if it resolves the issue for you!

Hi finally got to trying it out, it works now, ty!


How to georeference Cartographer output

Hi,
Is it possible to add geo location data such as projection and datum to .ply pointcloud generated by Cartographer?
Or should I sort of work backwards by adding Landmarks to Cartographer to use as Ground Control Points?
Any other suggestions please?
Ta,
Ben

Hi Ben,
as it seems google isn`t supporting it anymore. Here is my way of "georefrencing" the map. if you increase the weight of the fixed frame pose, you can achieve a georeferenced map (the starting point is printed on the console and form there everything is metric system).
But the problem there is that the pointcloud matching does not have a high influence...maybe we can work out something together.
Best,
Sven

This PLY annotation is not supported, and it also sounds like a special use case that might be more suitable to be addressed in a fork. We do support GPS input though, but this is probably not what you mean.


[$1000] emojis are accepted in card name, debit card form field.

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Go to settings  -> payments -> add debit card
Enter name with emojis on card name form field.
for eg : " John :heart::smile::smile:" .
Notice it doesn't throw any error.

Expected Result:
inconsistecny in "Legal Name" and "Card Name" form field.
i.e in legal name emojis and special characters aren't allowed. whereas card name form field doesn't check emojis.
Actual Result:
Emojis are allowed in card name field.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.30-0
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

https://github.com/Expensify/App/assets/43996225/3d01a5e5-328a-4283-a9b7-5c6a0bf9d5ec
https://github.com/Expensify/App/assets/43996225/4746dd73-b7e5-4140-bb16-957ef8bd9dd7
Expensify/Expensify Issue URL:
Issue reported by: @ashimsharma10
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686827026457399
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~016b95ce0b884de115
Upwork Job ID:<PHONE_NUMBER>122483200
Last Price Increase: 2023-06-22

Proposal
Please re-state the problem that we are trying to solve in this issue.
Emojis are accepted for card name.
What is the root cause of that problem?
We have two different functions for validating legal name and card name.
https://github.com/Expensify/App/blob/9e8a151b908447f3d79261ddb0f62d10c19b5c6e/src/libs/ValidationUtils.js#L148-L151
https://github.com/Expensify/App/blob/9e8a151b908447f3d79261ddb0f62d10c19b5c6e/src/libs/ValidationUtils.js#L376-L379
What changes do you think we should make in order to solve the problem?
We should remove one of the functions and use the other function in both places.
What alternative solutions did you explore? (Optional)
NA

I will be OOO until July 5, so assigning another team member. SO for reference.

Proposal of @Nikhil-Vats looks good to me https://github.com/Expensify/App/issues/21255#issuecomment-1601634117
We should have same restriction for legal name and debit card name - and makes sense to have one regexp which will work in both areas
🎀 👀 🎀 C+ reviewed

@trjExpensify I'm leaving on Sabbatical and assigned as the second person while Isa (Original BZ) is ooo until July 5.
CURRENT STATUS:

BZ assignee: @isabelastisser will be back on July 5 and will take this back for managing
Issue reported by: @ashimsharma10
C assigned to fix:  @Nikhil-Vats (just yesterday Jun 28)
C+ to Review: @narefyev91

Waiting on PR from nikhil-vats for narefev91 to review.

Not overdue, bump @narefyev91 @trjExpensify @isabelastisser

👋 @narefyev91

The PR that introduced the bug has been identified. Link to the PR: https://github.com/Expensify/App/pull/21880
The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment - no comments were addressed

That wasn't the PR that introduced the bug was it? 😕

@narefyev91 @trjExpensify this is the PR that introduced the bug.

Yup already linked that https://github.com/Expensify/App/pull/6845

Okay cool, and did you comment on the PR for the benefit of its authors to close the feedback loop?

A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion - no discussions

On this one, I actually wonder if there's something we could be doing better to ensure emojis don't slip through the net on fields that have input restrictions. Did you consider that, such that we can potentially limit this type of bug report in the future perhaps?

Determine if we should create a regression test for this bug - we are good with QA steps in current issue

As for this, I think we can modify the existing test script to accommodate a check for the name field in addition. I've gone ahead and created an issue for Applause for that edit.

Error tests and add second debit card

Navigate to the add debit card page
Without entering any data, click on the save button
Verify all the required fields show an error informing the user of the required information
Verify all errors are related to the missing info
On the Name field - enter an invalid name (e.g John 😄 ❤ )
Verify there's an error indicating that the name can only include latin letters and numbers.
On the Expiration date - enter a invalid date (e.g 1111)
Verify there's an error indicating the user to enter a valid date
Fill each field with random valid data
Verify the errors are removed after entering valid data on each field
Verify the error above the "Save" button is removed after fixing each field
Add a secondary debit card - For the debit card number, use any from this list Sandbox Cards

Offers sent in Upwork to @Nikhil-Vats and @ashimsharma10, please accept it and I will send the payment.
@narefyev91 I can't find you in Upwork, what's your profile?

@isabelastisser offer accepted.

The payments are processed in Upwork, we should be all set!


A question about cost savings

As an additional benefit, microservices can scale out independently. Instead of having a single monolithic application that you must scale out as a unit, you can instead scale out specific microservices. That way, you can scale just the functional area that needs more processing power or network bandwidth to support demand, rather than scaling out other areas of the application that don't need to be scaled. That means cost savings because you need less hardware.

Could somebody explain this to me? I don't see cost savings by this explanation.
Let's say I have a monolith that is similar to Google Stadia. It allows users to play Witcher and Counter-strike. So monolith incorporates both games on the same computing machine. Every time when there is a big demand, I can spin more instances of the same monolith.
But what if I had 2 microservices for Witcher and Counter-strike? I can scale them independently, that's for sure. But how do I save money from this? I honestly don't get it.
If monolith can run both games but there is a big demand only in one game, it means that the computational time of the monolith will be spent mostly on one game (=same with microservices). So where are cost savings then?

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

ID: 44e1c0ee-21c8-7d9b-989d-1ed55aad927d
Version Independent ID: 24abab2c-e46a-bc88-26ba-8ff44b915be6
Content: Microservices architecture
Content Source: docs/architecture/microservices/architect-microservice-container-applications/microservices-architecture.md
Product: dotnet
Technology: dotnet-ebooks
GitHub Login: @nishanil
Microsoft Alias: nanil

I venture to say you may not understand what microservices are. Microservices perform a small independent unit of work (e.g. a single responsibility principle).
A gaming monolith is in fact consists of many components, such as a registration service and its database, a session management service, queuing service, a download service, blob storages etc.
When a new game or an update is released, there could be a high demand on a registration and a download services and their databases - they could be scaled out to accommodate the load. Down the track these could be scalled down because there would be less demand to register or download, but other services such as session management or queuing services would need to be scaled up to accommodate gamers.
Each of these services could be serviced by smaller processing units and scalled up or out when/if necessary. Spinning a large processing unit unnecessarily may result in high costs.
I hope this provides some clarity to your original question.

Thanks for the answer. May I ask you one more detail? I still can't wrap my mind about this.
In a way, I deliberately chose an example of a monolith with just two games without any fancy stuff like registration/chat/customer service features to show that if you have a monolith that can run two processes of two games and there is a high demand in one game, than monolith just spends more time running that one game. I can scale monolith up to two and have two computers that run game-number-one.
For my perspective, I don't see how having two microservices that can run two games independently can help cost savings. You still need memory and cpu to run games. For me, it doesn't matter is it going to be on two machines that can run two games or is it going to be on two machines that can run only a game-number-one or a game-number-two.

Running two (or more) independent processes (i.e. two different game servers) in the same container is a very poor architectural decision as it goes against single responsibility principle.
What if one game server process crashes and brings the whole container down? What if one process requires 32G of RAM and 4CPUs and another process requires only 16G of RAM and 2 CPUs? What if... what if... what if...
The whole idea of microservices and containers - you can scale them up and/or out and back in real time responding to your immediate business needs. Scaling out monoliths doesn't work this way.

No offense, you are trying to argue with a straw man. I didn't say anything against microservices or any other detail of microservices except cost savings and at this point I feel like I mislead this conversation a little.
I honestly don't understand how come having two instances of microservices that can run two games independently is more cost-efficient than having two instances of a monolith that can run any of both games. If anybody could give me a simple theoretical explanation, I would be happy.
Again, I am not saying something against microservices or argue about this architectural style. I just don't understand an idea of cost-efficiency.
Here is an extreme example:
A simples crud monolith that has got N endpoints and has M1 replicas. How is it cost-efficient from having N microservices with 1 endpoint respectively with a replica factor of M2 each?

Hi @mikhail-putilov, thanks for your feedback, that's a really nice question.
I'm not familiar with the gaming infrastructure, so I'll use an example related to something more like eShopOnContainers.
This is mostly an issue of scale, if you have a 2X problem, that is, one or two machines, then you'll have the situation you mentioned.
Now things are different if you have an e-commerce application that has some millions of customers over several countries.
To serve your customers with a response time as small as possible, it'd be good to have several instances of your app close to them, say per country, an also to scale your capacity to follow demand, as close as possible, say for weekends or special holidays.
The key point here is that demand can be have an orders-of-magnitude change in a very short time and a microservices architecture, that splits functionality in a very granular way, can respond to that change much faster and just for the features required.
For example, something that might look as trivial as the catalog microservice, you can have hundreds or thousands of catalog query microservices and just tens of catalog update microservices.
If you had to keep all that capacity centralized in a single place with a clustered machine, it'd would cost you more just because bigger machines with a cluster capable OS and infrastructure is a very complex tech and cost proportionally more. Also you'd need a centralized high network bandwidth to handle the load.
Monoliths tend to be large applications that are usually designed to run by themselves in a machine, and are not designed to share the infrastructure with other apps, so they need something more like a VM.
Spinning up a configured VM si something that can take in the order of 15-30 minutes. So that limits your ability to respond to demand.
Microservices, OTOH, run in simple containers, that spin up in seconds and are designed from the ground up to work in shared ephemeral environments, so adapting to demand is much faster because you create instances only for the services that you need, in a matter of seconds, with simple infrastructure.
So, you might then think that this microservices thing is not for everybody, and you'd be absolutely right, because it brings with it some other complexities that also cost money. There's no silver bullet here.
Money should just be one of the aspects to consider. I consider much more important the ability to adjust capacity to serve your customers and adapt to demand faster, as well as handling large development teams so they can work as independently as possible.
Just to have an idea of scales, I've seen monoliths handle 1_000 - 10_000 users without too much trouble, using clustered databases and application servers. but more that that it's a bit steep.
As usual that depends on the application, but if you're talking about millions of users then microservices are almost for sure the way to go.
Hope this helps.

Closing this issue now but feel free to comment, will reopen if needed.


bug - api -Transactions typo

@unclemantis: Thank you for pointing this out! The description needs an update in the openapi.yaml at https://github.com/hirosystems/stacks-blockchain-api/blob/299d45bc4d5259c9f1ebd6c05e435619bee7f92b/docs/openapi.yaml#L2152.
@LakshmiLavanyaKasturi: A quick fix whenever it is convenient for you.

@unclemantis Thanks for the find. We got a fix for it. https://github.com/hirosystems/stacks-blockchain-api/pull/1415

Closing this issue as the PR: https://github.com/hirosystems/stacks-blockchain-api/pull/1415 is merged.


STAT v2 - Migrate MDCA Module

Migrate MDCA/MCAS Module to Azure Functions

[x] Lookup investigation score
[x] Lookup investigation score history
[ ] Auto discovery of URL
[x] Comments support
[x] Comments disable toggle
[x] Tasks Support
[x] Tasks disable toggle
[ ] Error handling - Permissions
[ ] Error handling - Unexpected error

The module will fail if there are no URLs instead of doing best effort.

+improvement https://github.com/briandelmsft/STAT-Function/pull/45


Support file rotation option on file sink

use data.Decoder on file sink and file source
support file rotation option on file sink, using lumberjack which has already used on server/log.

Thanks!!


Make Account API return only one account per user/organization

We used to have a /search API for Account which returned a list of accounts for a given user/organization.
Since Account have a unique constraint on user_id/organization_id, it makes more sense to use a /lookup which return a single account or 404. It greatly simplifies the reasoning in the UI.
Preliminary work for #1807.

Nice work on this @frankie567 🔥


Merge tiles with overlap handling

Merging tile directories and dealing with overlap. The unit test is also provided.

Would appreciate a little look from @jamesgardnergeovation if you have a moment too!

Looks good to me