Add Redis-compatible cursors for SCAN commands

Hello everyone, I have completed this PR and below is my explanation of the changes made.
We have added the following steps to the processing of the SCAN, ZSCAN, SSCAN, HSCAN commands:

Before processing the command, convert the numeric cursor sent by the client back to the keyname cursor.
After processing the command, convert the keyname cursor back to a numeric cursor and return it to the client, And store the conversion dictionary in the Server#cursor_dict_.

Since those steps is non-intrusive to the internal implementation of the SCAN command, we can ensure that the behavior of commands such as ZSCAN, SSCAN, and HSCAN is consistent with that of the SCAN command.
In the following, I will only use the SCAN command as an example to describe the new design.
Cursor design
We call the new cursor the numeric cursor and the old one the keyname cursor.
The numeric cursor is composed of 3 parts:

1-16 bit is counter，and the first bit always 1
17-32 bit is timestamp
33-64 bit is hash of keyname

The counter is a 16-bit unsigned integer that is incremented by 1 every time. When the counter overflows, it returns to 0 because it is an unsigned number. Since our cursor_dict_size is a power of 2, the counter is continuous mod cursor_dict_size.
timestap is a 16-bit timestamp in seconds, which can store up to 9 hours.
hash is a 32-bit hash value of the keyname.
Cursor dictionary(Server#cursor_dict_)
The cursor dictionary is an array with a length of 16384(1024*16), which is determined at compile time, and occupies about 640KB of memory. Including the length of the referenced keyname strings, its size is about 1-2M.
During convert the keyname cursor back to a numeric cursor, a new cursor is generated based on the above rules, and the index for storing the dictionary is determined based on the counter value (index = counter % DICT_SIZE).
During convert the numeric cursor back to a keyname cursor , we get the counter from the cursor, and calculate the index of the cursor in the cursor_dict_ based on the counter. We only need to compare the cursor value of the item at that index with the input cursor value to determine if they are the same.
Other information about the cursor
This design guarantees the validity of the latest 16384(1024*16) cursors, while cursors that are older or not generated in our system are considered invalid cursors. For invalid cursors, we treat them as a 0 cursor, which means we will start iterating over the collection from the beginning.
Our cursor is globally visible, and we store index information in the cursor. As long as the cursor remains valid, using the same cursor in different connections will produce the same results.
We prevent other users from guessing the data traversed by adjacent cursors by adding the hash value of the keyname to the cursor. If a user tries to obtain adjacent cursor information by traversing the hash, the cursor will become an invalid cursor before the traversal is complete because the size of the 32-bit space is much larger than the length of the cursor_dict_.
We add a timestamp to the cursor to ensure that the same cursor does not appear within a short period of time before and after a restart.
Other behaviors are consistent with the original SCAN implementation.
Configuration file
Added redis-cursor-compatible configuration item.
If enabled, the cursor will be an unsigned 64-bit integer.
If disabled, the cursor will be a string.
Test file
Added tests for redis-cli --bigkey and redis-cli --memkeys commands. We only need to ensure that these commands run correctly, because their correctness is guaranteed by redis-cli on the premise that we ensure the correctness of the scan command.
Modified the scan command test to test for the cases where redis-cursor-compatible is set to yes or no.
Other changes:
Fixed a bug where the cursor did not return 0 when SCAN commands return less than number elements.
fixed #1402
fixed #877

Hi @jihuayu, Thanks for your great efforts.
Can you explain a bit about the cursor number design and what if we use the wrong cursor for the hash/set/zset scan?

Thanks for your contribution!
Several points after a short glance:

seems the ring buffer is shared between all connections, so just be curious that, will the functionality of SCAN get break if we have lots of client connections simultaneously? And could we make it duplicate per connections or able to adjust the buffer size dynamically?
if some keys are deleted while the SCAN operation is executed, will the key properties of SCAN be preserved? (refer to "Scan guarantees" in https://redis.io/commands/scan/#scan guarantees)
self-increase cursor may cause informantion leaks: one client can retrieve some informantion of the current executed commands from another client (partially same as the first point)
seems the mutex can be replaced by rwlock or atomic variables

cc @mapleFU @torwig

seems the ring buffer is shared between all connections, so just be curious that, will the functionality of SCAN get break if we have lots of client connections simultaneously? And could we make it duplicate per connections or able to adjust the buffer size dynamically?

@PragmaTwice It cannot be per connection since we need to allow using the cursor in different connections. That's to say, the connection A got the cursor should can be visible to connection B from the client side.

I will redesign the cursor.
I'm very busy these days, so I will come back in a few days. Wait for me.

seems the ring buffer is shared between all connections, so just be curious that, will the functionality of SCAN get break if we have lots of client connections simultaneously? And could we make it duplicate per connections or able to adjust the buffer size dynamically?

@PragmaTwice It cannot be per connection since we need to allow using the cursor in different connections. That's to say, the connection A got the cursor should can be visible to connection B from the client side.

Is this property used by some client libraries?
Actually I cannot find how and when these cursors become invalid (e.g. Will different connections lead to invalid cursor? Will adding and deleting elements lead to invalid cursor?) in the official document, which seems they just do not give any guarentee about this. It is sad.
But I find such a statement.

Multiple parallel iterations
It is possible for an infinite number of clients to iterate the same collection at the same time, as the full state of the iterator is in the cursor, that is obtained and returned to the client at every call. No server side state is taken at all.

It may make the implementation of redis cursor more harder, if we need to follow it.

Is this property used by some client libraries?

Most libraries should use the same connection to scan, but the cursor needs to be still valid if the connection was reconnected. And as the scan command is a long-time operation, it'd be better to allow reconnecting behavior.
Yes, agreed that it's impossible to follow the Redis exactly since the underlying storage is different. What we can do is to keep compatible as possible.

@PragmaTwice  @git-hulk  If the user uses redis-cli scan 0 and redis-cli scan 10 to scan, the two scan will be in different connections. I think this usage may be common, so it is necessary to ensure that the cursor is available in different connection .
We can make a promise to how long or how many recent cursors are guaranteed to be valid. For example, cursors created within the last hour or the last 100 cursors.
In redis doc:

A full iteration always retrieves all the elements that were present in the collection from the start to the end of a full iteration. This means that if a given element is inside the collection when an iteration is started, and is still there when an iteration terminates, then at some point SCAN returned it to the user.
A full iteration never returns any element that was NOT present in the collection from the start to the end of a full iteration. So if an element was removed before the start of an iteration, and is never added back to the collection for all the time an iteration lasts, SCAN ensures that this element will never be returned.

I think this is necessary, while the others are optional. Our current implementation can ensure these two points.

Yes, agreed that it's impossible to follow the Redis exactly since the underlying storage is different. What we can do is to keep compatible as possible.

I agree as well. We just need to follow redis in common behavior.

Thanks, @jihuayu.
Keeping the recent N cursors solution is good for me since those cursors won't occupy too much memory. To see if @PragmaTwice has any comments.

@git-hulk We may need to know how the N value is determined in actual project groups. If N=1024 and the average key name length is 40, the memory usage would be 1024*(40+40)=80KB.

@git-hulk We may need to know how the N value is determined in actual project groups. If N=1024 and the average key name length is 40, the memory usage would be 1024*(40+40)=80KB.

It's hard to determine which value is suitable, but I think we can give a relatively large one like 10240 or even more. It's fine since the usage of memory is a fixed number.

It's hard to determine which value is suitable, but I think we can give a relatively large one like 10240 or even more. It's fine since the usage of memory is a fixed number.

Do we need to provide a configuration option for this value?

It's hard to determine which value is suitable, but I think we can give a relatively large one like 10240 or even more. It's fine since the usage of memory is a fixed number.

Do we need to provide a configuration option for this value?

No, from my side since users cannot understand how it works.

@git-hulk @PragmaTwice
Hello, this PR is ready for review. I have change top comment for explanation of the changes . Thanks

@jihuayu Overall looks good to me. Adding scope for the cursor mapping would be better, then we can check if it's the right type to use the cursor's key name.
For example, we can store the scope = hash in the cursor element, it cannot use this cursor's key if the operation is not HSCAN, and vice versa.

@mapleFU We add hash to avoid informantion leaks

We prevent other users from guessing the data traversed by adjacent cursors by adding the hash value of the keyname to the cursor. If a user tries to obtain adjacent cursor information by traversing the hash, the cursor will become an invalid cursor before the traversal is complete because the size of the 32-bit space is much larger than the length of the cursor_dict_.

I modified the format of the cursor.

Placed the counter in the lowest bit
set the highest bit of the hash to 1.
Modified the content of the static_assert from static_assert(CURSOR_DICT_SIZE < (1 << 15),...); to static_assert(CURSOR_DICT_SIZE <= (1 << 15),...);
@infdahai @mapleFU

So after that the hashing is 31bits?

So after that the hashing is 31bits?

Seems right, and with my idea, hash can be 27bit.

So after that the hashing is 31bits?

@mapleFU
Yes, now hashing is 31bits.

Could this also be encoded to the cursor? Seems we can take about 4 bit out of 32bit hash for it.

If we encoded cursor_type to the cursor, hash will only have 27 bits left.
Poor hash, it's being squeezed for space by everyone.

If we encoded cursor_type to the cursor, hash will only have 27 bits left.

But I think the hash value here is not an important thing, it is just used as check digits, and actually the command type can also be regarded as check digits.

This will not cause errors. Firstly, the assignment operation is atomic, so there will be no problem with the correspondence between the cursor and the key name.

Assume that scan1 allocate at slot 1000, and there are 214 scans in-flight, scan 214+1 will also allocate 1000. But I guess that's not problem

Assume that scan1 allocate at slot 1000, and there are 2^14 scans in-flight, scan 2^14 will also allocate 1000. But I guess that's not problem

I also thinks it is not problem.

This PR generally looks good to me, to see if others have further comments.

Thanks for the review. Does anyone have any other suggestions?

@torwig @PragmaTwice Can you take a look again while you're free.

Thanks all, merging...

very neat design !


Juste question for potential feature - Send mqtt every x min

Hello,
Your QuickApp is very interresting and I use it since several week/month to load in Influxdb some data.
But I've some device without lot of update, like Internet box, where power is very stable, or some other device when they are off... and if understand, no new mqtt message if no update.
But when I try to have grap (grafana), without data, it's complicated to have correct interface.
I would like to know if it's possible to have process to have regulare message, without wait update of device. I see 2 solutions, but not sure if I've capacity to implemente them :

Have process to rescan and sent mqtt message every x min
QA subcribe to topic mqtt, an when message is recieved, new scan is done

What to you think of this feature ?
Thanks

Hi @adetauriac!
Yes it is possible to do.
Let me recap how I understood you, and you tell me if this is correct:

QuickApp is started, doing initial HC3 device scan, then publish device state/values to MQTT
QuickApp is constantly monitoring HC3 events to see if any device got their state/values changed, and then publishes it to MQTT
If no device state/value changes detected - nothing is published to Home Assistant via MQTT... and then you tell Grafana has issues to render charts properly?

Few questions:

Does the same kind of Grafana issue occur for native Home Assistant devices, which are not sourced from HC3 via MQTT? If Grafana struggles to deal with lack of device state/values updates - then maybe the proper approach would be to do rescans for all Home Asisstant devices, not only those sourced by HC3 via MQTT, right? Plus worth contacting Grafana developers to do if they can improve the implementation for pretty normal situations when devices have no state/value changes
If this is only relevant HC3/MQTT... then what about implementing HC3 scene that "restarts" QuickApp, let's say every midnight? HC3 has a nice UI to schedule timers, and restarting QuickApp is absolutely normal process that will trigger rescan and sending all the device state/values to MQTT. Such approach looks a bit more user-friendly, and let you decide how often to do the rescan, without reimplementing the existing scheduler functionality.

Would it work for you?
Thank you,
Alexander
P.S.: apologies for late reply as I only finished my accommodation in Berlin

Closing the issue as no further inputs provided, and because there an alternative solution ;-) with an architectural design that looks cleaner by not making scheduler logic reimplemented within the QuickApp, and already available at Fibaro HC3


Vision Bonnet I2C issues

I wanting to stack a servo bonnet along with a motor bonnet underneath the vision bonnet. The servo and motor bonnets connect via i2c. Once I connect all 3 together, the PI starts however the vision bonnet is unable to be used. I made sure there aren't any address conflicts between the 3 however I am still unable to use the vision bonnet once powered on. Are there reasons why the vision bonnet can't be used with other i2c devices? I was under the impression that the vision bonnet uses the SPI bus?

Please see https://aiyprojects.withgoogle.com/vision/#makers-guide--gpio-header-pinout to get the details of which pins are being used by the vision bonnet.
Highlighted pins here are in use.


Create E2E test harness for extension

From previous attempts: cypress and playwright have trouble.
Puppeteer could work

https://github.com/buberdds/oasis-wallet-web/commit/d4a784a9e73df9412ec415541e98fdddd2ba91a2
https://github.com/oasisprotocol/oasis-wallet-web/commit/ef7bc2a12b277f1976f8ff97b76e980b99b82f0b

Ideally these tests would validate extension specific features

extension successfully loads JS chunks (detect issues like https://github.com/oasisprotocol/oasis-wallet-web/pull/904)
state syncing between background-page and popup (detect webext-redux issues in https://github.com/oasisprotocol/oasis-wallet-web/pull/1044)
extension's CSP
(detect Ledger issues https://github.com/oasisprotocol/oasis-wallet-web/issues/1045) - probably not possible
(popup layout changes) - this is probably easier in normal Jest tests
future: transaction completed notifications
future: dapp communication
future: ensure JS chunks are <4MB for https://github.com/oasisprotocol/oasis-wallet-web/issues/1036

https://modern-web.dev/docs/test-runner/browser-launchers/puppeteer/ would look nicer, but seems to not support e2e :(

Playwright actually seems fine https://github.com/oasisprotocol/oasis-wallet-web/pull/1119
cc @buberdds


[Task]: Update the Choreo samples with Ballerina 2201.0.1

Connector Name
connectors/samples (Connector Samples/Templates)
Task Description

Update github workflows to use Ballerina 2201.0.1
Do a minor version bump to samples.
Regenerate Dependencies.toml files with Ballerina 2201.0.1

Closing since this is done


How to create combo chart with Dual Y-Axis

Expected Behaviour

Can we make  Combo Chart with Dual Y-Axis like above screenshot in frappe chart?

#366 is being reviewed to add this.


Fix typo when checking schema and catalog in MetadataUtil

These two error messages should exchange.

Merged, thanks!


Unable to render any blog pages because of some error

🐞 Bug report
With a fresh project, upon adding the blog support and creating a post, I'm unable to get it to work with the commands mentioned in the docs.
Description
The problem seems to be only on my machine. **It doesn't work on my machine 🤷♂ ** is something you rarely hear. Lol.
Here's my repository:
https://github.com/ahsanayaz/ngJam
🔬 Minimal Reproduction
I'm not sure if you can reproduce this, but...

Clone the repository
npm i
npm run build && npm run scully
check http://localhost:1668/blog/ahsan-ayaz

This is what I get:

💻Your Environment
Angular Version:

Angular CLI: 9.0.5
Node: 12.13.1
OS: darwin x64

Angular: 9.0.5
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.900.5
@angular-devkit/build-angular     0.900.5
@angular-devkit/build-optimizer   0.900.5
@angular-devkit/build-webpack     0.900.5
@angular-devkit/core              9.0.5
@angular-devkit/schematics        9.0.5
@ngtools/webpack                  9.0.5
@schematics/angular               9.0.5
@schematics/update                0.900.5
rxjs                              6.5.4
typescript                        3.7.5
webpack                           4.41.2

Scully Version:

"@scullyio/scully": {
      "version": "0.0.79",
}
"@scullyio/init": {
      "version": "0.0.23",
}
"@scullyio/ng-lib": {
      "version": "0.0.20",
}

🔥 Exception or Error

Pull in data to create additional routes.
Finding files in folder "/Users/ahsanayaz/Experiments/ngJam/blog"
Route list created in files:
  "/Users/ahsanayaz/Experiments/ngJam/src/assets/scully-routes.json",
  "/Users/ahsanayaz/Experiments/ngJam/dist/static/assets/scully-routes.json",
  "/Users/ahsanayaz/Experiments/ngJam/dist/ngJam/assets/scully-routes.json"

Route "/" rendered into file: "/Users/ahsanayaz/Experiments/ngJam/dist/static/index.html"
Route "/blog" rendered into file: "/Users/ahsanayaz/Experiments/ngJam/dist/static/blog/index.html"
Error, probably missing "" for /Users/ahsanayaz/Experiments/ngJam/blog/ahsan-ayaz.md
TypeError: Cannot read property 'split' of undefined
    at contentRenderPlugin (/Users/ahsanayaz/Experiments/ngJam/node_modules/@scullyio/scully/renderPlugins/contentRenderPlugin.js:21:13)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async wrap (/Users/ahsanayaz/Experiments/ngJam/node_modules/@scullyio/scully/pluginManagement/pluginRepository.js:63:18)
    at async /Users/ahsanayaz/Experiments/ngJam/node_modules/@scullyio/scully/renderPlugins/routeContentRenderer.js:16:24
Route "/blog/ahsan-ayaz" rendered into file: "/Users/ahsanayaz/Experiments/ngJam/dist/static/blog/ahsan-ayaz/index.html"
Error during file write TypeError: Cannot read property 'includes' of undefined
send reload

Generating took 27.49 seconds for 3 pages:
  That is 0.11 pages per second,
  or 9164 milliseconds for each page.

  Finding routes in the angular app took 2 milliseconds
  Pulling in route-data took 16 milliseconds
  Rendering the pages took 25.77 seconds

The server is available on "http://localhost:1668/"

@AhsanAyaz
I clone your project and build fine for me in windows and mac
@SanderElias clone and test in ubuntu and work fine to!
Can you create another project and check all again? we can not reproduce the error!

When I open the link after building without issue:

I'm sorry, but I don't have any idea what this can be, it seems something on your computer.
What you can try is:
rm -fr node_dist
npm i
rm -fr dist
npm run build && npm run scully

Or perhaps power-cycle your computer?
Can you let us know the progress on that?

hey @AhsanAyaz I will close this, if you need more help or you're still with the same issue, you can reopen this one or create a new issue

Sure. Thanks @jorgeucano


Add new smoke test that actually executes the buildHealth task

The current smoke test only applies the plugin, which finds configuration issues, but since it does not execute it, it missed a runtime issue.

Done with version 0.21.1.


ARROW-15067: [C++] Add tracing spans to the scanner

This adds spans to the scanner, one per fragment and one per batch per fragment, that are enabled based on #ifdefs.

TODO:

[ ] Confirm that we can link these spans to another parent span
I originally added a parameter to ScanOptions but this won't work since it would expose OpenTelemetry symbols in the public API.
[ ] AddressSanitizer reports some leaks, either we need to add a suppression and report upstream or work out why we're getting failures.

Example of output:

$ env ARROW_TRACING_BACKEND=ostream ./debug/arrow-dataset-file-ipc-test --gtest_filter='TestScan/*.ScanRecordBatchReader/0AsyncThreaded16b1024r'
Running main() from /home/lidavidm/Code/upstream/arrow-15067/build/googletest_ep-prefix/src/googletest_ep/googletest/src/gtest_main.cc
Note: Google Test filter = TestScan/*.ScanRecordBatchReader/0AsyncThreaded16b1024r
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from TestScan/TestIpcFileFormatScan
[ RUN      ] TestScan/TestIpcFileFormatScan.ScanRecordBatchReader/0AsyncThreaded16b1024r
[       OK ] TestScan/TestIpcFileFormatScan.ScanRecordBatchReader/0AsyncThreaded16b1024r (418 ms)
[----------] 1 test from TestScan/TestIpcFileFormatScan (418 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (418 ms total)
[  PASSED  ] 1 test.
{
  name          : arrow::dataset::IpcFileFormat::OpenReaderAsync
  trace_id      : 483084a5464d0ef6278da1cc982f9dd9
  span_id       : beb598d1dcb93984
  tracestate    :
  parent_span_id: b8ec67d5f5fbc11d
  start         :<PHONE_NUMBER>854068113
  duration      : 2869368
  description   :
  span kind     : Internal
  status        : Ok
  attributes    :
	thread_id:<PHONE_NUMBER>28928
  events        :
  links         :
  resources     :
	service.name: unknown_service
	telemetry.sdk.version: 1.1.0
	telemetry.sdk.name: opentelemetry
	telemetry.sdk.language: cpp
  instr-lib     : arrow
}
{
  name          : arrow::dataset::IpcFileFormat::ScanBatchesAsync::Next
  trace_id      : 483084a5464d0ef6278da1cc982f9dd9
  span_id       : 6462f59e9d0532df
  tracestate    :
  parent_span_id: b8ec67d5f5fbc11d
  start         :<PHONE_NUMBER>864180748
  duration      : 3811981
  description   :
  span kind     : Internal
  status        : Ok
  attributes    :
	thread_id:<PHONE_NUMBER>28928
  events        :
  links         :
  resources     :
	service.name: unknown_service
	telemetry.sdk.version: 1.1.0
	telemetry.sdk.name: opentelemetry
	telemetry.sdk.language: cpp
  instr-lib     : arrow
}
(snip)
{
  name          : arrow::dataset::FragmentToBatches
  trace_id      : 483084a5464d0ef6278da1cc982f9dd9
  span_id       : b8ec67d5f5fbc11d
  tracestate    :
  parent_span_id:<PHONE_NUMBER>000000
  start         :<PHONE_NUMBER>853521954
  duration      : 169164805
  description   :
  span kind     : Internal
  status        : Ok
  attributes    :
	thread_id:<PHONE_NUMBER>05184
	arrow.dataset.fragment.type_name: ipc
	arrow.dataset.fragment.last: 1
	arrow.dataset.fragment.index: 0
	arrow.dataset.fragment: <Buffer>
  events        :
  links         :
  resources     :
	service.name: unknown_service
	telemetry.sdk.version: 1.1.0
	telemetry.sdk.name: opentelemetry
	telemetry.sdk.language: cpp
  instr-lib     : arrow
}

CC @westonpace. You will need ARROW-15044/#11925 to actually see the spans (or a local OTLP collector instance).
I will circle back and try to isolate the issue with ASan later. That said, I think impact is minimal; it shouldn't affect CI and we can disable ASan or use the suppressions for local development, and it also wouldn't be enabled for things like Conbench.
I haven't quantified the performance impact here, either (do we have a benchmark that would stress these paths? I can run locally and report)

Rebased with ARROW-15044.

#12100 would help with the ifdef proliferation, if we want to build on that.

Continued in #12328.


routing: track amt ranges in mission control

Build on #3556
Previously we tracked the last result for a node connection only. This could lead to the situation where a meaningful observation would be overwritten by a far less meaningful one. For example: a failure for 100.000 sats is overwritten by a success for 100 sats.
Probing with minimal amounts in particular will likely wipe out useful history for more representative amounts.
This PR changes mission control to track both that the success and the last failure. This creates three amount ranges for which probabilities are calculated differently:

0 - successAmt: return a high probability (default 0.95)
successAmt - failAmt: in this range, we don't have much information. Return the a priori (default 0.6)
failAmt+: penalize the connection and decay over time back to the a priori

Can be rebased now that the dependent PR is merged.


Relax some eslint rules for Fiori TypeScript projects

Relax some  overly strict eslint rules for Fiori TypeScript type checking for projects

@devinea can you explain why they are required? Are these errors by default?


Search for values

Hey Philipp,
great work!
I think an extension of the search, allowing to search for values as well, would be a good feature. So if you now that there is this one topic, you can find out how it was set, through a parameter, an argument, as a default value of either or through a remap.
Thanks
Max

Good idea, will keep this in mind for a next update.


fix: updated unit-tests to test round-trip serialization.

Description

Adds a new unit-test proving a model can be round-tripped ✔
Fixes any bugs encountered ✔

Related Issue
Fixes #1832
Checklist

[ ] The code follows the project's coding standards and is properly linted (npm run lint).
[ ] Tests have been added or updated to cover the changes.
[ ] Documentation has been updated to reflect the changes.
[ ] All tests pass successfully locally.(npm run test).

Additional Notes

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

-1 of 8 (87.5%)  changed or added relevant lines in 1 file are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.03%) to 92.283%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/generators/csharp/presets/JsonSerializerPreset.ts
7
8
87.5%

Files with Coverage Reduction
New Missed Lines
%

src/processors/OpenAPIInputProcessor.ts
2
92.23%

Totals

Change from base Build<PHONE_NUMBER>:
-0.03%

Covered Lines:
5998

Relevant Lines:
6330

💛  - Coveralls

Gonna take a look after some lunch :v:


[Feature request] Search text button

A button for search text in the document is a necessary feature for a pdf reader, at least for me.
Anyway thank you for your work, this is a very useful app!

Duplicate of #143 and #9


rustc-hex -> hex

Switch from rustc-hex to hex (https://github.com/tomusdrw/rust-web3/pull/418)

Closed #128


Thread-safe

Please, provide a way, to make this API thread-safe..
This link could help: https://developers.google.com/api-client-library/python/guide/thread_safety
I am sure, the problem is in the httplib2

I thought, this project is dead;)
Since it is alive - I could send a PR for this issue;)

@maxkoryukov I would be thankful for such PR!

Sorry... I have read the source code, and now I know, that mstranslator utilizes the requests lib. And everybody knows: requests is thread-safe


face detection script

please check

The readme in still conflicting, please compare it with the latest repository.

please check

resolved


Small improvements to MPPatch

Fix multiple Java versions causing MPPatch to silently die on launch. Now limits itself to the widespread JRE8
Better registry check for Civ5 installation directory.

Through past experience with Civ5 mapscript installs and the like, this registry key has worked for iirc everyone.
The normal key fails for 1/5 people or so.

Please merge this, 3 of my friend all have this issue and need this fix!

I'll take a proper look at this soon. My release engineering toolchain on this stuff is long-broken and needs updating. u.u;

I'll probably rewrite this to use the Uninstall registry key at some point, but the code's going to have to change due to #74. That part is less important though, because the primary means MPPatch uses to find Civ V is reading Steam's library information file (libraryfolders.vdf) and the registry is a backup method. Removing the primary method is probably not a good idea.
The launch4j issue is going to be fixed in 0.2.0 on account of me using native-image to replace it entirely.
Will consider the changes here in one form or another, but the code is changing too much to merge.


Automatic build doesn't run after changing git repo location

Our documentation used to be at https://github.com/autofac/Autofac.git but we moved it to https://github.com/autofac/Documentation.git for easier maintenance.
After updating the repo URL in the ReadTheDocs admin dashboard, I was able to force a build, but since then the build fails to automatically build after changes to the repo.
Is there something I need to do to signal the system to stop watching the old repo and watch the new one?

We use GitHub post commit hooks in order to know when you changed something in your repository. When you move the docs from one repo into another then you need to setup the hooks in the new repository. Therefore go into the admin panel on GitHub for your project and look for "Webhooks & services". See this document for more information: https://docs.readthedocs.org/en/latest/webhooks.html
You can also find the URL that you need to use in GitHub on your Read the docs project homepage in the bottom right corner.

Yup, that did it. Thanks!


Adding name in Contributors list

Pull Request Description
This pull request closes #
Acceptance Test

[x] Building the code with mvn clean install -Dintegration.tests still works.
[x] Running mvn spring-boot:run in the strongbox-web-core still starts up the application correctly.
[x] Building the code and running the strongbox-distribution from a zip or tar.gz still works.
[x] The tests in the strongbox-web-integration-tests still run properly.

Questions

Does this pull request break backward compatibility?

[ ] Yes
[x] No

Does this pull request require other pull requests to be merged first?

[ ] Yes, please see #...
[x] No

Does this require an update of the documentation?

[ ] Yes, please see strongbox/strongbox-docs#{PR_NUMBER}
[x] No

This has been a long overdue pull request! Thanks for all your hard work on our project! :)

Congrats @anki2189! :tada:


[Question]: How to update the ragflow to the latest version?

Describe your problem
How to update the ragflow to the latest version?

If you are using docker compose up -d to start, use following command.

docker pull infiniflow/ragflow:latest
docker compose up ragflow -d

If you are using docker compose up -f docker-compose-CN.yml -d to start, use following command.

docker pull swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow:latest
docker compose up ragflow -d

为什么我运行这些代码后我的C盘就满了？
Have you set the docker disk image location to C:\ drive by default? I suggest you change it to another drive.
For example, set that in E:

First Step:stop all containers
Second Step: Set a new image location
Third Step: copy old files to new location

No, I have done this before. The location is E:\Appdata\DockerDesktopWSL.


ModelNet40 Sample points crashes.

🐛 Bug
There are some models in ModelNet40 which give problems when sampling a point cloud from their surface. The function SamplePoints (sample_points.py)  has the line
 area = (pos[face[1]] - pos[face[0]]).cross(pos[face[2]] - pos[face[0]])
I have done some digging, and some files have really really large dimensions. Meaning the pos[] has things of the order of
tensor([[ 3.5578e+09, -6.4410e+10, -5.4855e+11],
[-7.3821e+08, -6.7892e+10, -5.5279e+11],
[ 7.1078e+08, -6.6997e+10, -5.6201e+11],
...,
[-8.2806e+09,  6.2464e+11,  2.9970e+10],
[-8.2806e+09,  6.2318e+11,  2.9970e+10],
[-7.6240e+09,  6.2464e+11,  3.3878e+10]])
... which is big. Especially since taking the cross product in the next line, and then squariong in the line after gives even bigger results.
This leads to areas of
tensor([       inf,        inf,        inf,  ..., 3.3477e+18, 2.8870e+18,
2.8870e+18])
, which then leads to invalid probabilities when sampling from torch.multinomial.
A quick fix is simply adding
pos = pos / pos.max()
the line after the second assert.
To Reproduce
Steps to reproduce the behavior:

Expected behavior
I expect this not to crash. But it does

Environment

OS: Ubuntu 16.04
Python version: 3.5
PyTorch version: 1.0
CUDA/cuDNN version: 10.1
GCC version:
Any other relevant information:

Additional context

I think  my fix works, it doesn't crash anymore. If you also believe that it is still correct, then i will add a pull request.

Thank you. I didn't know that. The only concern I'm having is that we are changing the models position this way (which is not what the user might expect).

what about scaling all the sampled poitns back up by saving pos.max()
pos_max = pos.max()
pos = pos / pos_max
...#get samples
point_cloud *= pos_max

Yes, we should definitely do this. Thank you. Waiting for your PR.

Hi, I have used the Sample_points.py code in master, however, there still an error exists when sampling 2048 points from the Training dataset in ModelNet40(Test dataset is ok). As you have met, the error is 'RuntimeError: invalid argument 2: invalid multinomial distribution (encountering probability entry < 0)'. I'm wondering if some negative Numbers caused this error when calculate area = (pos[face[1]] - pos[face[0]]).cross(pos[face[2]] - pos[face[0]])?

Interesting. In theory, area can not be negative due to the norm in line 29. I added an abs call to the area computation. Can you verify that this fixes your problem?

Unfortunately, this was not resolved, but I found this error occurred when sampling the 3559th training dataset in ModelNet40. I'm going to take a closer look at what's so special about this graph.
BTW, the transformation operation does not seem to work in ModelNet. For example, when I use the following code, there is no sampling and the data obtained is not transformed.
modelnet40_trainset=ModelNet(root='XXX',name='40',transform=SamplePoints(2048)) modelnet40_testset=ModelNet(root='XXX',name='40',train=False,transform=SamplePoints(2048))
Am I making a mistake?
So now for sampling purposes, my code is written like this.
modelnet40_trainset=ModelNet(root='XXXX',name='40') modelnet40_testset=ModelNet(root='XXXX',name='40',train=False) samler=SamplePoints(2048) modelnet40_testset=[samler(d) for d in modelnet40_testset] modelnet40_trainset=[samler(d) for d in modelnet40_trainset[0:3559]] train_loader = DataLoader(train_dataset, batch_size=batch_size, shuffle=True) test_loader = DataLoader(test_dataset, batch_size=batch_size, shuffle=True)

Are you sure? There is no reason ModelNet40 would not call transform upon access.

Are you sure? There is no reason ModelNet40 would not call transform upon access.

Yeah, if I use the code modelnet40_trainset=ModelNet(root='XXX',name='40'), then I will get modelnet40_trainset=ModelNet40(9843), modelnet40_trainset.data=Data(face=[3,177419739],pos=[178128692,3],y=[9843]), moedelnet40_trainset.transform=None.
However, if I use the code modelnet40_trainset=ModelNet(root='XXX',name='40',transform=SamplePoints(2048)), then I will get modelnet40_trainset=ModelNet40(9843), modelnet40_trainset.data=Data(face=[3,177419739],pos=[178128692,3],y=[9843]), moedelnet40_trainset.transform=SamplePoints(2048).
The PyG I'm using is 1.2.0

Hi, I understand. transform gets called when accessing specific dataset examples (equivalent to torchvision datasets), e.g.:
modelnet40_trainset[0]

It does not get called when accessing the internal data storage dataset.data (which you should access neither).

Hi, I understand. transform gets called when accessing specific dataset examples (equivalent to torchvision datasets), e.g.:
modelnet40_trainset[0]

It does not get called when accessing the internal data storage dataset.data (which you should access neither).

Oh, I see. THX!


⚠ Bofrost.be has degraded performance

In 6884e01, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2647 ms

Resolved: Bofrost.be performance has improved in 850c455.


⚠ Bofrost.at has degraded performance

In ae94473, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2766 ms

Resolved: Bofrost.at performance has improved in 7d9c99b.


Add an Arg<>() function.

This is intended to capture arguments in functions like Map, rather than using canBeExternal profusely.
This allows things like:
Map(["a", "b", "c"], (Arg<String>() + "def"))
It also allows behavior like this for user-defined functions, which cannot use canBeExternal.
@viroulep I'm curious for your thoughts on this! I'm thinking of getting rid of canBeExternal from every other function and just using this instead, since it's more explicit and clearer. See https://github.com/cubingusa/nats-scripts/blob/main/2024/staff_teams.cs#L23 for an example of Arg<>() in action (note also that this is the only way to use a user-defined function like CanScramble in a loop).
I think canBeExternal is one of the most confusing and poorly-named features of compscript, and this might help.

On reflection I think it would be overkill to get rid of canBeExternal from all other functions, but I'll be using this more in the future.

I love it, I think it's basically what I was looking for here.
I agree keeping canBeExternal is just fine, but being able to capture the argument in user defined functions can really make the code less awkward/duplicated (for instance this looks so much better than the Nats2023 one :D).


[Fix] Nightly test failed: RuntimeError: Cannot import pyspark unwrap_udt function

issue: https://github.com/NVIDIA/spark-rapids-ml/issues/578
This PR avoid benchmarking sparse logisticregression when pyspark version is < 3.4.0

build


PWA-378 Remove currency from locale. Use shop config to get currency …

…fo filters

Pull Request Test Coverage Report for Build 1457

2 of 3 (66.67%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.03%) to 38.096%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

components/FilterBar/mock.js
0
1
0.0%

Totals

Change from base Build 1440:
-0.03%

Covered Lines:
1373

Relevant Lines:
3575

💛  - Coveralls


Fix link to Google Web Fonts

Link without www. prefix 404s, if www is added it 302s to https://www.google.com/fonts

Thank you!


if things are expensive, they should look expensive

Right now, the package makes heavy use of Python's @property decorator. For example, loading data is as "easy" as writing
model.patient_data = some_pandas_table

This looks like I am only storing the table inside the model object. But actually, it is computing the diagnose matrix which is rather expensive. So, making this a function instead of a property would give it the look and feel of something potentially resource-intensive:
model.load_patient_data(some_pandas_table)

A lot has happened with the new 1.0 API. In particular, setting new parameters does not immediately trigger a recomputation of expensive stuff like the transition matrix.
Thus, in keeping with this issue, it would make sense to replace model.transition_matrx with model.transition_matrix() to hint at the user that this might be expensive (although it often is not due to caching).


[FIX] Prevent header injection with MIME4J DOM

Is it really necessary, to pull in a new dependency (assert4j) to do stuff, that JUnit does as well? I suggest, that you remove assert4j.

Hi!
Thanks for the feedback.
As it only is a test dependency, library users are non impacted.
I pulled the dependency in mime4j core for 3 reason:

asserting exceptions with junit alone is painful
we are using already assertj in mime4j dom
and this library is used everywhere in james code base as well.
As such using it in this context seems reasonbable to me.

This should be CVE-2024-21742

Hi,
I'm questioning if this fix is actually complete.  In this PR you've added you've added validation code the the RawField public constructor.  And while the public constructor does invoke the default constructor there is no validation in that constructor.  So any code that directly invokes the default constructor could still experience the problem this PR addresses.
Here is an example stack demonstrating my point:
java.lang.Throwable
    at org.apache.james.mime4j.stream.RawField.<init>(RawField.java:47)
    at org.apache.james.mime4j.stream.RawFieldParser.parseField(RawFieldParser.java:71)
    at org.apache.james.mime4j.stream.DefaultFieldBuilder.build(DefaultFieldBuilder.java:95)
    at org.apache.james.mime4j.stream.MimeEntity.nextField(MimeEntity.java:276)
    at org.apache.james.mime4j.stream.MimeEntity.advance(MimeEntity.java:312)
    at org.apache.james.mime4j.stream.MimeTokenStream.next(MimeTokenStream.java:375)
    at org.apache.james.mime4j.parser.MimeStreamParser.parse(MimeStreamParser.java:177)

Thanks for raising the point.

And while the public constructor does invoke the default constructor there is no validation in that constructor.

I protected the constructors called by the DOM builders.
The others are called by the parsers that would naturally consider newlines as new header.
I must confess I did not do fuzzing on this and only wrote simple unit tests. If you happen to find one faulty value please provide (ideally to<EMAIL_ADDRESS>a reproduction unit test (and a fix?)
I've been voluntarily limiting the scope of the change in order to avoid a regression on "mime4j core" as well.


Review RWTH Aachen analysis of 388 open source energy projects and identify potential overlap

https://www.eenewseurope.com/en/study-shows-388-open-source-energy-projects/

This is our first citation and it comes from by home town. :partying_face:
We can learn from this publication a lot:

The references they used.
They extended the method we used in some ways.
We have to check their database and see if they are having projects we are missing.

We can also see here that it is relatively easy to derive peer-reviewed publications through our work. We should also try to do this in the future.


Database always gets instantiated with correct settings

As part of the development on a new database project, we realized that setting the on_initialized parameter for a factory resulted in the other (database-related) settings being ignored.
This pull request addresses this issue. It is also related to https://github.com/tk0miya/testing.postgresql/pull/18
If you have any comment or remark, we'll be happy to address those as part of this PR.
Thank you.

We haven't heard back from you. Do you think this could be merged?

Sorry for very very very late response. merged.
Thanks!


SILGen: Skip emitting distributed thunks for skipped functions.

Follow up to https://github.com/apple/swift/pull/68760 to fix a failed assertion when building the swift-distributed-actors project.

@swift-ci please smoke test

@swift-ci please test source compatibility debug


Solar power soft lock fix is not functioning?

Hello again i hope you are not getting sick of me posting more work for you. Haha :)
Thank you for the solar power tweak for trenches, however there still seems to be an issue. I have placed 550 solar panels which is 600W x 550panels = 330KW
My one and only chemical plant has 3 x efficiency module mk3
Which reduces its power usage to between 7KW to 42KW. And it still says no power :-/

Version 1.18.4

Thanks for the report. I will add a molten salt reactor for the trench.

I sorta forgot that its always night in the trench.

Well i am excited to see what you come up with 😀

Woohoo!!!

I am having issues unlocking it. I mine a chimney vent and it won't unlock :/


Question: Is ivory ready for other microcontrollers?

Forgive my naivety, from the description at http://ivorylang.org/ivory-libs.html it seems that writing to registers in ivory only works for the STM32F4?

Memory bounds are defined statically in Ivory.HW.STM32F4 according to the STM32F4 microcontroller memory map

I'd like to use ivory for a project with the teensy++ (AT90USB1286). What work needs to be done before this is a possibility?

I've been using Ivory on Nordic nRF51 (ARM Cortex-M0) since January or February. I've had to write C wrapper functions for some of the hardware-specific stuff and Nordic-specific APIs; that's about it.

Cool, thanks - @Hodapp87, is your project open source? I've done FFI before but I'm not quite sure where to start with ivory (besides the tutorial).

@schell https://github.com/GaloisInc/ivory/tree/master/ivory-examples/examples is where I started from.
My project is not open source, unfortunately, though I may try to open-source certain parts of it. However, you can find me in the Freenode channel #haskell-embedded if you want to ask questions... I'm not one of the Galois experts, just a user, but I have been using Ivory day-to-day in a fairly large build.

Great! Thank you :) :+1:

Welcome! We're glad to see more people interested in using Ivory. The short answer is, yes, you can use Ivory on any microcontroller that a reasonably complete C99 compiler exists for.
The long answer: unfortunately, much of the documentation at ivorylang.org has become out of date. That particular comment refers to some static checking we used to do in the ivory-hw library to ensure that memory mapped IO reads and writes were always performed on valid addresses for that particular chip family. However, we never found a satisfying way to make this check modular (allow users could select their own safety check for whatever chip they were using), and in a year or more of developing code with the check in place it had never caught any programmer errors. So, we got rid of the check entirely, and presently the ivory-hw primitives will allow you to write to any memory address. The only assumption it makes about your system is that pointers are 32 bits.
So, to get started with Ivory on an AT90 or any other microcontroller, you can write Ivory programs to link against existing C that takes care of low level drivers, or you can optionally write your drivers in Ivory as well, using ivory-hw as a wrapper around read/write operations to memory-mapped IO. Examples of the latter are found in ivory-tower-stm32.
(as a fun side note, most of the ivory-hw library and related bitdata infastructure, as well as lots of the STM32 BSP, was written by James Bielman, who was previously at Synapse. Small world!)
As far as more support goes - I wasn't aware of #haskell-embedded but none of us at Galois tend to hang out on IRC, sorry. We are definitely happy to take questions and feedback from you (and all users) in github issues or via email!

Thanks for the explanation, I appreciate it.


Reset "text color" and "text background color"

"text color" and "text background color" can be set using the two upper left tools of the toolbar. I did not find a way to reset "text color" and "text background color", so that no "text color" and no "text background color" is selected.

There's the RemoveFormatCommand.
In the toolbar you (probably) mentioned it's in the last line on the right side left to the redo command.

There's the RemoveFormatCommand.
In the toolbar you (probably) mentioned it's in the last line on the right side left to the redo command.

Tapping on the tool you probably mentioned (red circle) seems to be completely ignored. It definitely does not reset "text color" and "text background color"

Tapping on the tool you probably mentioned (red circle) seems to be completely ignored. It definitely does not reset "text color" and "text background color"

Yes you are right.
As i just figured out: you have to select some text - the one that should not be formatted - and then press the command in the red circle.
Didn't find a better workaround for this, sorry.

Yes you are right.
As i just figured out: you have to select some text - the one that should not be formatted - and then press the command in the red circle.
Didn't find a better workaround for this, sorry.


[now-node] Fix sharp test using lock file

There's an issue with sharp in the last few hours causing CI to fail. In particular, it looks like minipass is the culprit.
The workaround is to pin the transitive dependencies using a lock file.
I also bumped to latest sharp version.

Codecov Report

Merging #3064 into canary will increase coverage by 1.86%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           canary    #3064      +/-   ##
==========================================
+ Coverage    11.6%   13.47%   +1.86%
==========================================
  Files         267      267
  Lines       10069    10301     +232
  Branches     1299     1212      -87
==========================================
+ Hits         1169     1388     +219
- Misses       8809     8851      +42
+ Partials       91       62      -29

Impacted Files
Coverage Δ

src/util/metrics.ts
68.18% <0%> (-2.41%)
:arrow_down:

src/util/projects/get-project-by-id-or-name.ts
28.57% <0%> (+3.57%)
:arrow_up:

src/util/get-files.ts
91.66% <0%> (+3.88%)
:arrow_up:

src/util/dev/router.ts
82.69% <0%> (+4.12%)
:arrow_up:

src/util/dev/builder.ts
76.92% <0%> (+4.4%)
:arrow_up:

src/util/dev/yarn-installer.ts
90.74% <0%> (+5.02%)
:arrow_up:

src/util/dev/server.ts
66.43% <0%> (+5.41%)
:arrow_up:

src/util/prefer-v2-deployment.ts
61.9% <0%> (+5.65%)
:arrow_up:

src/util/output/create-output.ts
43.58% <0%> (+12.33%)
: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 9217c5e...7e5cfd4. Read the comment docs.


Add the line return.

See https://github.com/mbarkhau/pretty-traceback/issues/3

I just want to add that I don't see the error  message at all without this

@mbarkhau

Great library btw! really cool work.

Merged separately, due to my inability to deal with git.

that's great, thanks.
On Fri, Apr 29, 2022 at 5:01 PM mbarkhau @.***> wrote:

Merged separately, due to my inability to deal with git.
—
Reply to this email directly, view it on GitHub
https://github.com/mbarkhau/pretty-traceback/pull/4#issuecomment-1113726577,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAYU34OG77LZR2OMUKRZVXDVHRE25ANCNFSM5UTWVAYA
.
You are receiving this because you authored the thread.Message ID:
@.***>


ngClassPristine has changed after it was checked when using ion-searchbar

I have the following template
 <ion-content>     <ion-searchbar [(ngModel)]="searchQuery" (input)="search($event)"></ion-searchbar> </ion-content>
when creating this component, this error is reported:
EXCEPTION: Expression 'ngClassPristine in TuteeMain@8:4' has changed after it was checked. Previous value: 'true'. Current value: 'false' in [ngClassPristine in TuteeMain@8:4]
what does this mean? how to solve this

Running into the same issue here.
our system information:

Cordova CLI: Not installed
Ionic Version: 2.0.0-alpha.51
Ionic CLI Version: 2.0.0-beta.17
Ionic App Lib Version: 2.0.0-beta.8
OS: Distributor ID:     Ubuntu Description:     Ubuntu 14.04.2 LTS
Node Version: v4.1.1

******************************************************
 Dependency warning - for the CLI to run correctly,
 it is highly suggested to install/upgrade the following:

 Please install your Cordova CLI to version  >=4.2.0 `npm install -g cordova`

******************************************************

Don't mind the big fat warning, I'm not compiling in this environment and this particular bug happens just when running in the lab.

Same error here, here's a bigger console excerpt.
EXCEPTION: Expression 'ngClassPristine in SearchPage@10:1' has changed after it was checked. Previous value: 'true'. Current value: 'false' in [ngClassPristine in SearchPage@10:1]
app.bundle.js:32162 EXCEPTION: Expression 'ngClassPristine in SearchPage@10:1' has changed after it was checked. Previous value: 'true'.  Previous value: 'true'.  Previous value: 'true'. Current value: 'false'
    at ExpressionChangedAfterItHasBeenCheckedException.BaseException [as constructor] (app.bundle.js:7713)
    at new ExpressionChangedAfterItHasBeenCheckedException (app.bundle.js:12505)
    at AbstractChangeDetector.throwOnChangeError (app.bundle.js:14229)
    at AbstractChangeDetector.ChangeDetector_SearchPage_0.detectChangesInRecordsInternal (viewFactory_SearchPage:203)
    at AbstractChangeDetector.detectChangesInRecords (app.bundle.js:14031)
    at AbstractChangeDetector.runDetectChanges (app.bundle.js:14008)
    at AbstractChangeDetector._detectChangesInViewChildren (app.bundle.js:14115)
    at AbstractChangeDetector.runDetectChanges (app.bundle.js:14012)
    at AbstractChangeDetector._detectChangesContentChildren (app.bundle.js:14108)
    at AbstractChangeDetector.runDetectChanges (app.bundle.js:14009)

Here's my env info:
Your system information:

Cordova CLI: Not installed
Ionic Version: 2.0.0-alpha.54
Ionic CLI Version: 2.0.0-beta.17
Ionic App Lib Version: 2.0.0-beta.8
OS: Distributor ID:     Ubuntu Description:     Ubuntu 14.04.2 LTS
Node Version: v4.1.1

and finally, the code in question:
 <ion-searchbar [(ngModel)]="searchInput"></ion-searchbar>
 {{searchInput}}

I solved my problem by assigning this.searchInput = "" in the constructor of the component. In typescript, the declared field does not exist until you assign to it. That might be what the error message mean?

@russli1993 Do you mind sharing your .html and .ts code?  I have the same issue.  Thanks!

Hello!Thanks for submitting an issue with us! Since this is more of a question you will get a better answer over at our forum (https://forum.ionicframework.com/) or on our slack channel (http://ionicworldwide.herokuapp.com/). Thanks again!

https://ionic-worldwide.slack.com/archives/technical-questions/p1461122759000744

In case someone find's that on google, you might also follow this issue: https://github.com/driftyco/ionic/issues/6177
There actually seems to be a bug for which this.searchInput = "" is just the workaround. If you don't do that in the constructor ion-searchbar seems to try to change the value which changes the pristine value. And somehow any changes within ion-searchbar (except user input or in the assignments in the constructor) seem to trigger this error.
just try
setTimeout(() => {
    this.searchQuery = 'Test';
}, 2000);


Show the text surrounded the search text in the description

It will be great option if we can show the text (few lines before and after) surrounded the searched keyword from the html page. Currently its showing the starting text of the searched page DOM.

Thanks. This will be coming in the next release.

Thank you. I will check too If I can modify it something like that. Will update you if get a luck ;)


Built in webpack modes have no effect

While default bundles are auto minified by webpack --mode=production. Files generated by this are not.
Also webpack --mode=development have no effect on output

Ummm I haven't tried that

Just trying to triage and see if the bug is on us

Actually even running just webpack defaults to production mode right?
I don't think its a thing with flag or config its just childCompiler is skipping something

@ev1stensberg I tried adding
 childCompiler.options.plugins.push(new UglifyJsPlugin());

after: https://github.com/prateekbh/babel-esm-plugin/blob/master/src/index.js#L18
still doesn't minify... any idea why?

Apparently this was due to the effect that I changed extension from .just to .mjs
Fixed it by keeping default file names as blah.es6.js


New Install Optimize Error

Successfully installed a brand new copy of the application using the instructions provided here: https://laravelcrm.com/docs/quickstart.html#installation. Immediately following installation, I ran the command:
php artisan optimize
Returned the following error:
INFO  Caching the framework bootstrap files.
config ........................................................................................................... 8ms FAIL
ErrorException
Cannot declare class App\User, because the name is already in use
at ..\laravel-crm\vendor\venturedrake\laravel-crm\src\LaravelCrmServiceProvider.php:207
203▕     {
204▕         Paginator::useBootstrap();
205▕
206▕         if ((app()->version() >= 8 && class_exists('App\Models\User')) || (class_exists('App\Models\User') && ! class_exists('App\User'))) {
➜ 207▕             class_alias(config("auth.providers.users.model"), 'App\User');
208▕             if (class_exists('App\Models\Team')) {
209▕                 class_alias('App\Models\Team', 'App\Team');
210▕             }
211▕         }
1   ...\laravel-crm\vendor\venturedrake\laravel-crm\src\LaravelCrmServiceProvider.php:207
class_alias()
2   ..\laravel-crm\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:36
VentureDrake\LaravelCrm\LaravelCrmServiceProvider::boot()
Windows 11
Apache 2.4
PHP 8.2

I recommend dropping support for  installations that place Models outside the models folder. I started using a separate folder for models with 5.8 (I think). It's their home and they need a home. Free range models are a problem.
Chances are that if someone is using an older version with models stored under App, they've run into similar issues elsewhere, probably multiple times.

Yes I agree they should be in the Models folder, however unfortunately there will be many projects that have models in  the App folder, as it was the default setup. This can also mean that legacy projects that have been upgraded may still retain that structure. I have worked on several projects where that is the case, some are on Laravel 11 now. The work involved in moving models to the models folder is not worth the time.

Great point Andrew.


More effective workaround for pnpm failures on Docker for Mac?? 🤷

https://chat.zulip.org/#narrow/stream/2-general/topic/pnpm/near/1529915

Merged, thanks for working on this @andersk!


question ModelessConnect & WiFiServer

hi.
(sorry. poor english.)
I am testing the ModelessConnect example.
In addition, an FTP server (using WiFiServer) is used together.
ModelessConnect cannot connect to the router after rebooting after configuring the router in the portal.
Can't I use it with WifiServer(FTP server)?
Please help.

device: ESP32

IDE : platformIO/Arduino

simple example

void setup()
{
	Serial.begin(115200);
	Serial.flush();
	delay(50);

	setupModelessConnect();  // ESPAsync_WiFiManager
	setupFTPServer();  // using WifiServer
}

void loop()
{
	loopModelessConnect();
	loopFTPServer();
}

Hi @freemanzwin
With your minimal code, I have no idea what and where it's not working and what you're actually doing.
I suggest you start by running all the examples, then pick the example closely-fit to your purpose, then modify according to your use case, step by step, to see where it's broken.
Selecting the Modeless example is possibly not the best, as it's trying to run more demanding STA+AP mode, unless you have the good reason to use.
Also remember the library is using ESPAsyncWebServer, so the FTP server have to be also Async type to avoid possible conflict. The loopFTPServer() in loop() shows that you're not using the Async version.
I don't see any issue of running the correct FTP server if you write the code correctly.
Sorry I can't help any further.


XFAIL Vapor due to SR-7233.

@swift-ci Please test

@shahmishal Can you merge this? It XFAILs Vapor, which no longer compiles due to a safety fix I did. However, my compatibility test run fails due to a pre-existing problem in the suite, which I believe @davidungar is looking into.

I am going to merge this to unblock CI, @clackary is going to contact @tanner0101 by email to update the Vapor project.


OR functionality

@JoeRoddy Do you have any idea when you'll be shipping OR functionality?
Thank you so much for creating this by the way! Total godsend!

Thanks for the kind words @nicbyron !
I haven't really done active development on this project in a while since I haven't been using firebase as much recently and there hasn't been much demand for this app as I expected.
If you have the time / motivation, you can take a look at the querying engine thingie here and see if you'd like to add a PR:
https://github.com/JoeRoddy/firebase-sql


Nbgrp_onlelogin_saml.yaml and .env variables

Hello,
I have found a problem with the config file of this library.
The "binding" parameters don't seems to allow environnement variables.
Example :
nbgrp_onelogin_saml:
  use_proxy_vars: true
  onelogin_settings:
    default:
      # Basic settings
      idp:
        entityId: "%env(SAML_IDP_ENTITY_ID)%"
        singleSignOnService:
          url: "%env(SAML_SINGLE_SIGN_ON_SERVICE_URL)%"
          binding: "%env(SAML_SINGLE_SIGN_ON_SERVICE_BINDING)%"

The error we encounter :
Invalid configuration for path "nbgrp_onelogin_saml.onelogin_settings.default.idp.singleSignOnService.binding": invalid value.
How i fixed this error :
binding: "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
This behavior is managed in src/DependencyInjection/Configuration.php :
->scalarNode('binding')
    ->validate()
        ->ifTrue(static fn ($value): bool => !str_starts_with($value, 'urn:oasis:names:tc:SAML:2.0:bindings:'))
        ->thenInvalid('invalid value.')
    ->end()
->end()

It seems like this value " %env()%" is not replaced before the call of validate() method.
Is it really mandatory to have this verification or is there another way to achieve the desired result ?
Thanks.

Configuration :
Php : 8.1.8
Symfony :  6.2
Nbgrp_login_saml : 1.3.2

Hi @Amenessisse
The validation seems as necessary, and it doesn't support env values (as I know). But as binding parameter should starts with urn:oasis:names:tc:SAML:2.0:bindings: any way, you can customize its value using environment variable (if you really need it). It will looks something like this: binding: "urn:oasis:names:tc:SAML:2.0:bindings:%env(SAML_SINGLE_SIGN_ON_SERVICE_BINDING_SUFFIX)%".


Move frontend to yew framework

@maxjoehnk Check it out!
I've added the "frontend" folder.

You can npm install -> npm run start:dev for a dev server... /api routes are proxied to port 8080, so you can run the program in the background with an active API and get live reloading and all that fun stuff on the frontend.
npm run build will automatically publish all files to embed/static and get embedded into the program when you build it.

So now the program only serves those static files, wasm and the /api endpoints. I've also made sure that all requests that aren't / get served index.html so the whole single page app thing works nicely.
Everything is working except for table sorting and toast notification, but this shouldn't be too hard. I haven't applied any of your styling yet... css is my enemy so if you want to take a stab, that'd be great!

There is definitely a resource leak going on, I believe it's related to the Router. When the route is changed and a new component is rendered, the old component isn't being destroyed properly, I suspect. There is an issue for this on Yew that I am tracking, hopefully it's fixed soon.
Relates to these warnings in console when you change routes
WARN:yew::agent -- The Id of the handler: 0, while present in the slab, is not associated with a callback.
WARN:yew::virtual_dom::vtag -- Node not found to remove VTag

I've applied your styling! All classes have been associated correctly and your style.css is being used.
I still need to do sorting and toasts. I'll work on creating a toast container in yew that I can send messages to from each page once fetch operations are completed.
For sorting, since we are doing pagination and searching against the server, I'll have a new sort parameter added to the api request, which will be set by clicking on the sortable column headers in the table.

I haven't really looked into the code yet, but is there a reason why you're including the compiled output in the repository?
If you don't wanna depend on frontend tooling (e.g. webpack) we can maybe look for something else. There are multiple bundlers written in rust, not sure whether there is a wasm compatible one yet though.

https://packem.github.io/
https://pax.js.org/

Or maybe we could just skip a bundler all together:
https://rustwasm.github.io/docs/wasm-bindgen/examples/without-a-bundler.html

Yeah I was thinking about this briefly, but I don't really know what's best practice currently. I'd imagine just including a build.rs or something could work fine.
My web dev experience is super minimal, but I've used webpack previously and yew had a template for working with it. I definitely liked having it there at minimum for development.
But I agree, I shouldn't be including the compiled wasm / bundled js in the repository, I'll need to find a good way to have it build with everything else. Thanks for the suggestions!

The more I think about it, the more I don't want those dependencies on frontend tooling.
At first I was just using cargo-web and it mostly worked. The one issue being it doesn't support serving index.html on 404s with it's dev server. But I can deal with that by just refreshing the page to '/'.

@maxjoehnk I've got everything where I want it, so I am going to go ahead and merge this. I've updated the styling a little bit so there are some breakpoints / padding on wider screens.
I'm still using webpack, but I've updated the azure pipelines CI to build the frontend prior to building the program, so I was able to remove the compiled frontend from the repo. Thanks for your help!


VB user-defined function examples

Hi Vadim,
I added VB.NET variants of user defined fuctions. I used the same functions as you have for C# so that they can be compared. I also put VB and C# examples into separate directories.
I hope you find it useful.
Best wishes,
Tomaz

Thanks, Tomaz.


write blog: [Keynote] PyMC: Past, Present, and Future

write summary blog:
video:  [Keynote] PyMC: Past, Present, and Future (Chris Fonnesbeck)
https://www.youtube.com/watch?v=RXODDVK7B-g
The timestamps are in the video description.
Goal of this summary:

How would one explain the history of PyMC to a newcomer?
What is the roadmap from the beginning to current?
etc.

cc:  @rowangayleschaefer

@reshamas sure, will send them to you on Slack

We can also update the history page while we are at it: https://www.pymc.io/about/history.html

I currently have this as a draft in Notion but also accessible via this webpage https://www.notion.so/PyMC-Past-Present-and-Future-6f417921f92d463e895251459ef1d487
Would love to get some feedback on level of detail and general direction!

Hello, I work on the summarization.

@BhaswatiRoy We do have a half-written blog.
Will submit a PR or share otherwise so we do not duplicate the work.

@BhaswatiRoy We do have a half-written blog. Will submit a PR or share otherwise so we do not duplicate the work.

Okay thanks for informing


96 - Introduce method to select http vs https

fixes #96

Current coverage is 97.13% (diff: 91.66%)

Merging #97 into master will decrease coverage by 0.14%

@@             master        #97   diff @@
==========================================
  Files            25         25
  Lines           954        976    +22
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            928        948    +20
- Misses           26         28     +2
  Partials          0          0

Powered by Codecov. Last update db6ce39...aa7bd23


Store results of optimization in system not in Substrate

At least that's what we decided for the Adhesion potentials in Adhesion.
Example:
https://github.com/ContactEngineering/ContactMechanics/blob/47c100be6eef46711db70bcd6d15c1abba672277/ContactMechanics/Systems.py#L863
@pastewka what do you think ?

Sounds good - I think this should go into system

I think this is already the case and the line is a bug. substrate.force should contain just the force contribution from the substrate, self.force should contain the sum of substrate plus interaction.

I disagree. when I call system.force I expect to get the physical value I am interested in (either the substrate force or the interaction force), not the residual of the optimization problem.
Happy to create a variable called residual_force

I want to additionally point out that:

we made the code-style decision not to store internal states in the interaction potentials, and for consistency I we should not store any force in the substrate.
If we change our mind and want to store a force in the substrate, this line is not a bug. In the context of dual minimization without adhesion, result.x is exactly the force applied on the substrate.


Is functions are const funtctions in port.h

All the "Is" functions should be const functions (like several other like IsDone).

@googlebot I fixed it.

@googlebot I fixed it.

Thanks for reporting this. Fixed in our internal code base upstream, and will be pushed to GitHub in the next release.

Merged in https://github.com/google/mediapipe/commit/6abec128edd6d037e1a988605a59957c22f1e967.


[VL] Get avaliable off-heap memory for split buffer calculation everytime split() is called

Rely on https://github.com/oap-project/gluten/pull/2982
Without the PR, we pass available off-heap memory size to shuffle writer when it's created. The problem is sometimes the shuffle writer is created before operators allocating large block memory like hash agg. Then the split buffer is preallocated according to whole off-heap memory instead of available memory when shuffle writer really works.
The PR pass the available memory to shuffle write with each batches, so we can recalculate the buffer size on each batch.

@zhztheplayer  pr2982 is merged. Can you rebase this one?


chore(build): FPVM targets

Description
Renames the build targets and docker images to the specific FPVM targets.
Fixes #814

📚 $\text{Stack Overview}$
Pulls submitted in this stack:

#845 👈
main

This comment was automatically generated by st.

Closing for now - not a priority


added test cases

Codecov Report

Merging #6 into develop will decrease coverage by 4.56%.
The diff coverage is 100%.

@@              Coverage Diff              @@
##             develop       #6      +/-   ##
=============================================
- Coverage      91.37%   86.81%   -4.57%
- Complexity       218      318     +100
=============================================
  Files             32       48      +16
  Lines            661     1107     +446
  Branches          54      106      +52
=============================================
+ Hits             604      961     +357
- Misses            37      102      +65
- Partials          20       44      +24

Impacted Files
Coverage Δ
Complexity Δ

...eign/cloud/methodhandler/HystrixMethodHandler.java
86.48% <100%> (ø)
8 <1> (?)

.../reactivefeign/jetty/utils/ProxyPostProcessor.java
85.71% <0%> (ø)
4% <0%> (?)

...vefeign/cloud/publisher/RibbonPublisherClient.java
82.6% <0%> (ø)
6% <0%> (?)

...methodhandler/Rx2PublisherClientMethodHandler.java
33.33% <0%> (ø)
2% <0%> (?)

...efeign/jetty/client/JettyReactiveHttpResponse.java
84.21% <0%> (ø)
16% <0%> (?)

...2/src/main/java/reactivefeign/rx2/Rx2Contract.java
93.33% <0%> (ø)
7% <0%> (?)

...gn/jetty/client/JettyReactiveResponseListener.java
81.57% <0%> (ø)
11% <0%> (?)

...client/statushandler/Rx2ReactiveStatusHandler.java
100% <0%> (ø)
3% <0%> (?)

...ivefeign/jetty/client/JettyReactiveHttpClient.java
83.54% <0%> (ø)
27% <0%> (?)

... and 7 more

Continue to review full report at Codecov.

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


Install python crmod lib

FRom osrm-car (stable) logs
==> NOTE: You are downloading one or more large file(s), which would
run significantly faster if you enabled sliced object downloads. This
feature is enabled by default but requires that compiled crcmod be installed (see "gsutil help crcmod").

Thank you for this contribution! I'm going to merge it to a branch to test before merging to master.


video file

I did not find my recording video in real mobile emulator, could you please help me?

I have solve my issue in version 11 file does not show but when we give permission to access android data file it shows everything


Added Node.js to List of Projects

Added Node.js to the list of projects in README.md, #36

@mtrussell thanks for contributing.


Create an API to add LinkedIn profile link

Is your feature request related to a problem? Please describe.
We need an API to add the user LinkedIn profile link.
Describe the solution you'd like
Create an API to add the user LinkedIn profile link.
Are you working on it?
Yes

@anjula-sack, could you please assign me for this issue?


Initial comments: Additional topics

Just throwing a few topics out for discussion.

dependency management? (ie should we include things like packrat?
data management: data being an important part of project management?
documentation: I know many of the framework packages address workflow documentation, but I'd argue management of functions can be an important part. So things like roxygen2, pkgdown maybe even rmarkdown in it's own right, could be included?
archiving?

The frameworks effectively offer higher level approaches to some of the elements mentioned above. I guess the question is how much of the task view, if any, should address the elements?

@annakrystalli Thanks for the suggestions!

dependency management? (ie should we include things like packrat?

I agree this is an important topic, and I had originally included it in my initial draft. But because it is such a big topic in its own right, and @nuest has already started a Task View dedicated to this topic (Computational Environments and Reproducibility), I decided to provide a link to his Task View instead (commit).

data management: data being an important part of project management?

Definitely. Could you suggest some example packages to consider?

documentation: I know many of the framework packages address workflow documentation, but I'd argue management of functions can be an important part. So things like roxygen2, pkgdown

For these packages we'll need to make a decision on the scope of the Task View. To me, these are all packages that assist with R package development. My initial reaction is to not include these for the following two reasons:

Package development packages (devtools, roxygen2, testthat, pkdown, etc.) are already widely known and well documented (e.g. r-pkgs book). They are also well-supported in RStudio. So basically, is it worth the effort of expanding the scope of the Task to include them?
A data analysis project may or may not include creating an R package. Many of the frameworks in this Task View are essentially trying to provide the structure and tooling to support a typical data analysis project that an R package already has. In essence, I see a fundamental difference between writing code to analyze data, and writing a reusable toolbox of functions (though of course the lines can get blurred).

Also see here for my previous thoughts on package development packages: https://github.com/jdblischak/r-project-workflows/issues/2#issuecomment-422080619

maybe even rmarkdown in it's own right, could be included?

Literate programming is already covered in the existing Task View ReproducibleResearch, which is included in the section Related Links.

archiving?

Definitely. Do you mean packages like archivist? Maybe this could be combined with data management?

Since our task view was merged with the ReproducibleResearch Task View, the workflow packages are now included with packages on dependency management and archiving, so that worked out well.


[Issue-1605] - makes SSL cert common name an editable field

fixes #1605

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR/713/
Test PASSed.


upgrade rainbowkit + support walletconnect 2

Description
WalletConnect recently shut down support for v1. To function with WalletConnect v2 we need to upgrade Rainbowkit and related dependencies

hm Build Next.js App job failing, error due to WalletConnect v2 project id not defined. it's an env var and it's configured in vercel so would expect it to work. maybe need to change something in next.config.js?


Please add support for filled-in contour plots

I want to create in Gadfly something similar to imagesc/contourf in Winston or Matlab, but using Geom.rectbin seems to me incomplete and cannot to some full extent handle this functionality. Please find several inconsistencies provided in the plot (alike white

regions). Please consider the following snippet of my code:
using MAT
vars = matread(joinpath("..", "data","ripley.mat"))
X = vars["X"]'
y = vars["Y"]

range1 = linspace(-1.5,1.5,200)
range2 = linspace(-0.5,1.5,200)
Xtest = meshgrid(range1,range2)'
diff1 = range1[2] - range1[1]
diff2 = range2[2] - range2[1]

yhat = ... #do predictions for points
yplot = ...#do predictions for plot
yplot = yplot - minimum(yplot)
yplot = 2*(yplot ./ maximum(yplot)) - 1

using DataFrames
df = DataFrame()
df[:Xmin] = Xtest[1,:][:]
df[:Ymin] = Xtest[2,:][:]
df[:Xmax] = Xtest[1,:][:] + diff1
df[:Ymax] = Xtest[2,:][:] + diff2
df[:class] = yplot[:]

using Gadfly
set_default_plot_size(20cm, 20cm)
plot(layer(x=X[1,yhat.>0], y=X[2,yhat.>0], Geom.point, Theme(default_color=color("orange"))),
	 layer(x=X[1,yhat.<0], y=X[2,yhat.<0], Geom.point, Theme(default_color=color("black"))),
	 layer(df, x_min="Xmin", x_max="Xmax", y_min="Ymin", y_max="Ymax", color="class", Geom.rectbin))

plot(z=reshape(yplot,200,200), Geom.contour, xmin=[-1.5], xmax=[1.5], ymin=[-.5], ymax=[1.5]) is giving something else too

Geom.contour indexes the z matrix as [xcoord, ycoord].  So you should get the correct contour if you transpose z:
x = linspace(-1.5, 1.5, 200)
y = linspace(-0.5, 1.5, 200)
plot(z=reshape(yplot,200,200)', x=coords, y=coords, Geom.contour)

Do you mind trying (separately)

remove the layers with points
transpose your yplot
shift x and y

to help narrow down the source of the problem?

Hi, thanks for the suggestion.. By using this indexing I can get:

But in reality I'm more interested in getting filled-in contour plot, like the one I could with Geom.rectbin

@jumutc Is the main issue you have with Geom.rectbin the white lines that you're seeing?
There's an SVG trick I used that aligns the rectangles to the nearest pixel, but it seems that can cause issues in a dense grid like in your plot, which explains the white lines. If that's fixed, would it otherwise be sufficient for your needs?

Hi, @dcjones.
That would be perfect for me. But there is also an issue with completely blank regions (outside of y_max, x_max etc) which sometimes appear on the figure. If the latter can be fixed quickly I would be very pleased. Thanks in advance!

+1, contour plots filled in with color would be very helpful. (probably a wrapper around rectbin).


Added uuids library

Please resolve conflicts if you can.

Conflict resolved. I've also added another library (isaac) to the list.

Thanks!


Remove-PnPNavigationNode -Location QuickLaunch -All doesn't work, my work around...

"removing all nodes" example number 5 doesn't seem to work for me, as it want the ids of the navigation items
i ran something like this and it works for my needs
$navNodes = Get-PnPNavigationNode -Location TopNavigationBar $navNodes | ForEach-Object {write-host $.id; Remove-PnPNavigationNode -Identity $.id -force}
ty

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

ID: 53df4ad8-9006-4d5c-8829-a1c481dac939
Version Independent ID: 15dfc257-8c5f-63d6-ffe7-f7a7163c25bf
Content: Remove-PnPNavigationNode (sharepoint-pnp)
Content Source: sharepoint/sharepoint-ps/sharepoint-pnp/Remove-PnPNavigationNode.md
GitHub Login: @techwriter40
Microsoft Alias: kirks

@officedocsbot assign @yogkumgit

Hello @tristian2 thanks for your feedback.
I reviewed and checked on my lab what you are saying and created a PR to improve the cmdlet's documentation.
Thank you

@get-itips  Thank you very much for the contribution and updating the documentation with PR. @tristian2 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.

@officedocsbot close


Unable to convert BigInteger to Decimal in spark 2.1.1

There is an issue with the 1.2.0 version of hadoopcryptoledger on spark 2.1.1. It works ok on spark 2.2.1
/ /  ___ / /
\ / _ / _ `/ __/  '/
/ / ._/_,// //_\   version 2.1.1
//
Using Python version 3.5.4 (default, Dec  4 2017 16:30:40)
SparkSession available as 'spark'.

df = sqlContext.read.format('org.zuinnote.spark.ethereum.block').options(enrich='false').load('/home/skattoju/project/skattoju/ethereum-test-data')
df.show()
18/03/17 09:44:54 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
java.lang.IllegalArgumentException: requirement failed: BigInteger<PHONE_NUMBER>0000000000 too large for decimal
//stacktrace excluded

This is a limitation of Spark SQL and cannot be fixed:
see https://issues.apache.org/jira/browse/SPARK-20341
I just documented this in the readme
https://github.com/ZuInnoTe/spark-hadoopcryptoledger-ds/blob/master/README.md
I propose to upgrade to Spark 2.3 which seems to be more reliable.
Please close if you agree.

Another alternative is to work with the hadoopcryptoledger library in Spark directly, this works with any Spark version:
https://github.com/ZuInnoTe/hadoopcryptoledger/wiki/Use-Spark-to-count-the-number-of-transactions-from-files-containing-Ethereum-Blockchain-data

agreed.


[ServiceBus] Optimize body eager copying

I was following up on a new idea to save allocations when receiving messages and had a fresh look at the eager copying code for the ServiceBusReceivedMessage body management and this is the result of it

This benchmark used is
https://github.com/danielmarbach/MicroBenchmarks/commit/93d216e6d1489bfa5fde82fde8be6d317eedf3f4
The same tricks can be applied for EventHubs :tada: which I'm happy to do once the discussions and nits have settled here ;)
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

@jsquire
https://github.com/Azure/azure-sdk-for-net/pull/31322

/azp run net - servicebus - tests

/azp run net - servicebus - tests

/azp run net - servicebus - tests


Add some more comments and descriptions for HelmRelease CR fields

[x] I have taken backward compatibility into consideration.

It looks good to me.
waiting for Jake comments FYI @jc-berger


Better node count for tests

Currently we rely on the output of skuba to know the number of
masters and workers. This is a very flimsy way of getting those
numbers as the output can change and its not really ready for
batch processing.
Instead, lets use kubectl to get those, which gives us a more
stable way of doing so thanks to selectors and the possibility
of getting the exact output we want.
This patch moves from using skuba output to guess the number of
masters to using kubectl to get the exact number of masters. The
new function can be used to get the workers as well.
Why is this PR needed?
Does it fix an issue? addresses a business case?
add a description and link to the issue if one exists.
Fixes #
Reminder: Add the "fixes bsc#XXXX" to the title of the commit so that it will
appear in the changelog.
What does this PR do?
please include a brief "management" technical overview (details are in the code)
Anything else a reviewer needs to know?
Special test cases, manual steps, links to resources or anything else that could be helpful to the reviewer.
Info for QA
This is info for QA so that they can validate this. This is mandatory if this PR fixes a bug.
If this is a new feature, a good description in "What does this PR do" may be enough.
Related info
Info that can be relevant for QA:

link to other PRs that should be merged together
link to packages that should be released together
upstream issues

Status BEFORE applying the patch
How can we reproduce the issue? How can we see this issue? Please provide the steps and the prove
this issue is not fixed.
Status AFTER applying the patch
How can we validate this issue is fixed? Please provide the steps and the prove this issue is fixed.
Docs
If docs need to be updated, please add a link to a PR to https://github.com/SUSE/doc-caasp.
At the time of creating the issue, this PR can be work in progress (set its title to [WIP]),
but the documentation needs to be finalized before the PR can be merged.
Merge restrictions
(Please do not edit this)
We are in v4-maintenance phase, so we will restrict what can be merged to prevent unexpected surprises:
What can be merged (merge criteria):
    2 approvals:
        1 developer: code is fine
        1 QA: QA is fine
    there is a PR for updating documentation (or a statement that this is not needed)

This seems to solve the stability issues I have found with the test_remove_master test which seems to fail due to wrongly getting the master numbers

In the context of this test, it makes sense to introduce this change. However, it leaves unsolved the root cause of the problem.
One possibility is that at the moment the test is executed, not all masters have joined the cluster. May it be possible the test is executed after bootstrapping the cluster but before the join-nodes is execute?

May it be possible the test is executed after bootstrapping the cluster but before the join-nodes is execute?

join-nodes runs before executing any e2e tests so it not should be possible for that to happen.
Unfortunately the e2e tests output is useless as its dumping all the json responses from k8s into the output its really difficult to be able to read anything in the logs.

I'm in favor of approving this PR and open an issue regarding  skuba.num_of_nodes("master") not returning the correct number of nodes.
Regarding the verbosity of the output, this is due to the way the status of the pods is checked in some tests: instead of retrieving only the status, the whole pod in retrieved. This could be improved and use a similar approach than used in check_nodes_ready

@pablochacin I created the following card for this issues: https://github.com/SUSE/avant-garde/issues/1349 can you re-review?


ModuleNotFoundError: No module named 'IPython' on import shap

I'm using the shap package outside a Jupyter Notebook.
On package import I already receive an ModuleNotFoundError: No module named 'IPython'
shap==0.38.1
python==3.6.9
>>> import shap
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/share/virtualenvs/my-env-rJwChpKj/lib/python3.6/site-packages/shap/__init__.py", line 38, in <module>
    from .plots._beeswarm import summary_legacy as summary_plot
  File "/home/virtualenvs/my-env-rJwChpKj/lib/python3.6/site-packages/shap/plots/__init__.py", line 8, in <module>
    from ._image import image, image_to_text
  File "/home/virtualenvs/my-venv-rJwChpKj/lib/python3.6/site-packages/shap/plots/_image.py", line 15, in <module>
    from IPython.core.display import display, HTML
ModuleNotFoundError: No module named 'IPython'

With the version shap==0.38.1 this was not ocurring

This is the same issue as #1757
I opened a pull request today to resolve it #1779

This is the same issue as #1757
I opened a pull request today to resolve it #1779

being handled in #1749

being handled in #1749


Cleanup reg ping remnants

Feature or Problem
wash reg ping was removed in https://github.com/wasmcloud/wasmcloud/commit/e6ee3de780ec5bc6a6cc0ec3a15457278978bca6 as part of https://github.com/wasmCloud/wasmCloud/pull/1649, but this code was left over from that.
Related Issues

Release Information

Consumer Impact

Testing

Unit Test(s)

Acceptance or Integration

Manual Verification

Would you mind changing the commit message for wash-lib to include the breaking !? Just since we removed the public struct in wash-lib it's technically a breaking change. LGTM thank you for cleaning this up

no problem, done!


Adding walkers to the background scenario

Description
We  add walkers to the background scenario. Basically
if the model contains walker it will be spawned with the autopilot option.
Where has this been tested?

Platform(s): ...
Python version(s):  3
Unreal Engine version(s): ...
CARLA version: latest pedestrian PR

Possible Drawbacks

This change is

Outdated. Will close this PR for now.


Checksum test failed

I get this error when I try to connect my wallet, while being in the ATOM/USDT market.
If I go to a different market, connect the wallet and go back to ATOM/USDT I can trade normally.

This should be resolved now after the latest injective-exchange has been deployed (it has to do with Chronos not being able to parse the ibc denoms properly).

Continues to happen.

This is an issue on the injective-exchange, stored MongoDB markets were malformed for some reason so the guys manually updated them.


enhance(build): return build on CreateBuild and UpdateBuild

Part of the effort for https://github.com/go-vela/community/issues/613. It would be helpful to not have to make two calls to the database during our webhook process. This can be remedied by returning the created build object when it's saved to the database.

closing because this has become a mess. Will just use a new branch


Smooth Scrolling Everywhere

Mod name
Smooth Scrolling Everywhere
Curseforge link
https://www.curseforge.com/minecraft/mc-mods/smooth-scrolling-everywhere-fabric
Other links
https://github.com/shedaniel/SmoothScrollingEverywhere
What it does
Smooth Scrolling
Why should it be in the modpack
Coz it was here by some reason.
Why shouldn't it be in the modpack
idk
Categories
Graphics optimization
Additional details
Seems to be updated and release to CF soon.
You can build it from source for now, as I do.
SmoothScrollingEverywhere-3.0.3-unstable-mc1.17.1.zip

LGTM.

Не понимаю правда зачем тебе нужен этот мод, не особо то и приятно с ним менюшки ощущаются.

it here its now updated but unstable
https://www.curseforge.com/minecraft/mc-mods/smooth-scrolling-everywhere-fabric/download/3453127

Thanks for letting me know!
The reason why this was included in the first place was to increase perception of smoothness. But now that I compare it with and without the mod, I think I will not add it back because it doesn't seem to improve the experience that much. Feel free to comment on this.

Personally the main difference for me is that there is a fluid overscroll animation. I like having an overscroll animation as it is intuitive, and "flows better". I do admit that it is fairly minor, though.

@Madis0 sorry for off-topic, but Google translate? I've think you know Russian (And this is what your site say)

@RozeFound Haha, good observation 😄
Well, I could understand most of your sentence, but I used machine translation out of habit and to "fill in the gaps" (translate the words I forgot).

Decided against this:

Mod was updated very late and by a contributor, does not give confidence in future updates
There are very few scrollable views overall where this is visible
It does not necessarily increase the perception of speed


update word wrapping

This updates word wrapping so it works with block comments in ___doc__

Codecov Report

Merging #3 (b8cf8dc) into main (8639f45) will increase coverage by 0.84%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main       #3      +/-   ##
==========================================
+ Coverage   93.23%   94.07%   +0.84%
==========================================
  Files           7        9       +2
  Lines         133      152      +19
==========================================
+ Hits          124      143      +19
  Misses          9        9

Impacted Files
Coverage Δ

src/cryo_et_sample_data/_data_set.py
91.89% <100.00%> (ø)

src/cryo_et_sample_data/_tests/test_utils.py
100.00% <100.00%> (ø)

src/cryo_et_sample_data/utils.py
100.00% <100.00%> (ø)

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


Run tasklist with local db met an error

I had tried to run tasklist e2e test case with local db opened:
cd src && poetry run chainlit run ../cypress/e2e/tasklist/main.py -h -c --db local

Then met an error:
a bytes-like object is required, not 'str'

Here's the compleed logs:
$ poetry run chainlit run ../cypress/e2e/tasklist/main.py -h -c --db local
2023-07-25 21:14:23 - Loaded .env file
2023-07-25 21:14:23 - Running in CI mode
2023-07-25 21:14:24 - Your app is available at http://localhost:8000
2023-07-25 21:14:24 - HTTP Request: GET http://localhost:62814/status "HTTP/1.1 200 OK"
2023-07-25 21:15:08 - HTTP Request: POST http://localhost:62814/ "HTTP/1.1 200 OK"
2023-07-25 21:15:08 - a bytes-like object is required, not 'str'
Traceback (most recent call last):
  File "D:\projects\deepexi\chainlit\src\chainlit\utils.py", line 36, in wrapper
    return await user_function(**params_values)
  File "D:\projects\deepexi\chainlit\src\../cypress/e2e/tasklist/main.py", line 32, in main
    await task_list.send()
  File "D:\projects\deepexi\chainlit\src\chainlit\element.py", line 115, in send
    element = await self.persist(self.emitter.db_client)
  File "D:\projects\deepexi\chainlit\src\chainlit\element.py", line 86, in persist
    self.url = await client.upload_element(content=self.content, mime=mime)
  File "D:\projects\deepexi\chainlit\src\chainlit\client\local.py", line 284, in upload_element
    await out.write(content)
  File "D:\projects\chainlit\.venv\lib\site-packages\aiofiles\threadpool\utils.py", line 45, in method
    return (yield from self._loop.run_in_executor(self._executor, cb))
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python310\lib\asyncio\futures.py", line 285, in __await__
    yield self  # This tells Task to wait for completion.
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python310\lib\asyncio\tasks.py", line 304, in __wakeup
    future.result()
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python310\lib\asyncio\futures.py", line 201, in result
    raise self._exception.with_traceback(self._exception_tb)
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python310\lib\concurrent\futures\thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
TypeError: a bytes-like object is required, not 'str'
2023-07-25 21:15:08 - HTTP Request: POST http://localhost:62814/ "HTTP/1.1 200 OK"

My src/.env file:
LOCAL_DB_PATH=file:../../../.chainlit/chat.db

#287


fix(Demo): Prefer SimpleTextDisplayer on iOS

Fixes https://github.com/shaka-project/shaka-player/issues/7568

@joeyparrish @tykus160 Another posibility is change the condition of https://github.com/shaka-project/shaka-player/blob/main/lib/player.js#L6515
from
if (this.videoContainer_) {
to
if (this.videoContainer_ && document.fullscreenEnabled) {


added display id, fw ver, batt %, mem % on BTN1 in cliock, commented out reset to SuperE mode in gpsservice

Nice - thanks!

Nice - thanks!


Add a delay option to add latency to the response

Context
One of the common benefits of using a mock server is its ability to add latency to its responses in order to simulate network issues. However, that option is not available yet on Killgrave, so it's a really simple but very worthy feature to implement.
Proposed implementation
A new field delay under the response section (within imposter) can be created and taken into account when returning a response.
The initial implementation can be as simple as posible, for example, assuming the configuration value is always defined in a predefined unit (let's say milliseconds -ms-).
Then, that implementation can be improved in order to allow the user define the value unit (ns, ms, s...) with a predefined format (i.e. 500ms).
For those interested on doing it directly that "best way", please let us know (here on the issue) what's your proposal (the one mentioned above -500ms- or some other) to define the delay value and unit.

Maybe delay should be an interval? So, delay will be more non-deterministic value. But I don't know will it be useful in actual testing or not.

Maybe delay should be an interval? So, delay will be more non-deterministic value. But I don't know will it be useful in actual testing or not.

Yes, of course. It does make make a lot of sense. Let's do it that way.