Update SCHOTT and SUMITA sources

The link for SCHOTT has changed slightly, as well as the checksums for both SCHOTT and SUMITA.

Codecov Report

Merging #278 (fd0a47b) into main (9787980) will increase coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #278      +/-   ##
==========================================
+ Coverage   53.96%   54.02%   +0.05%
==========================================
  Files          78       78
  Lines        7056     7045      -11
==========================================
- Hits         3808     3806       -2
+ Misses       3248     3239       -9

Impacted Files
Coverage Δ

src/GlassCat/sources.jl
90.90% <0.00%> (-3.04%)
:arrow_down:

src/Vis/Visualization.jl
9.01% <0.00%> (+0.14%)
:arrow_up:

src/Geometry/CSG/CSG.jl
83.52% <0.00%> (+0.31%)
:arrow_up:

src/RepeatingStructures/HexagonalLattice.jl
47.14% <0.00%> (+0.66%)
:arrow_up:

src/RepeatingStructures/Lattice.jl
76.92% <0.00%> (+5.49%)
: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 9787980...fd0a47b. Read the comment docs.

@BrianGun could you review/approve this one asap pls. The SCHOTT update is causing core tests/examples to fail.


Added ability for .json() to accept kwargs. model.json() can now crea…

…te a pretty string with .json(indent=4)

Description
The current implementation of serialize does not accept generic kwargs, so we loose the basic ability to modify serialized output, like pretty printing a json string with model.json(indent=4). I'm implemented serialize to be slightly more generic so we maintain functionality described in the pydantic docs
Changelog description
Added ability for .json() to accept kwargs. model.json() can now create a pretty string with .json(indent=4)
Status

[x ] Code base linted
[ x] Ready to go

Tagging @loriab and @bennybp for a review. Thanks guys! The CI format and build are failing for reasons unrelated to my PR.


BAU: Separate scripts into Auth and IPV for simplified testing

Add auth and ipv individual build/start scripts for testing so that it doesn't require both to be running.

Is there ever a need to build all the stubs ? A build script for all ?

They all need to be build for tests and deployment, unless we decide to deploy them separately for which gets changed but that will likely be a later change and I didn't want to make a big change as it would mean editing the gha


Docs onboarding: Sanity check packages before updating versions

Today: Validate that package installs
Future: Use containerized build when available

This is solved by some of our smoke tests and other things.


Adding common token operations to lib-std.

Adds mint, burn, transfer_to_output and force_transfer functions.
I don't like the name of transfer_to_output personally.
Still WIP.

I'm blocked on this by the following error:

The tests for this are passing locally. They will fail CI here until https://github.com/FuelLabs/sway-lib-std/pull/4 is merged.

Closing, as this has been replaced by a cluster of smaller, more focused PRs.
See: #679, #697


issue-#3121, monitor-switching-issue-solution

What issue is this addressing?
Closes #3121
What type of issue is this addressing?
bug fix
What this PR does | solves
This PR will handle the case when the user moves the game window in the external monitor on macOS. Then while moving application crashes because the window size becomes zero while moving and the code panics. I have handled it by adding some value to width and height such that while moving code doesn't panic and the window moves smoothly to an external monitor.

Creating an image without size doesn't make sense.


Weapon durability modifications?

Hello, I don't know how to set the durability of a particular item

<item:minecraft:diamond_axe>.maxDamage = 5;

Github issues are not for development questions, please join the discord. https://discord.blamejared.com


prevent calling trim when compileCommandsfile == null

I have been having an annoying time using Atom on OS X since every time a file is saved the linter-gcc is executed and my 'settings.compileCommandsFile' is not defined causing an exception in the linter-gcc.
This PR fixes the issue for me.
TypeError: Cannot read property 'trim' of undefined     at Object.buildCommand (/Users/tmclane/.atom/packages/linter-gcc/lib/utility.js:136:37)     at Object.lint (/Users/tmclane/.atom/packages/linter-gcc/lib/main.js:110:36)     at lintOnSave (/Users/tmclane/.atom/packages/linter-gcc/lib/main.js:191:22)     at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)     at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:129:28)     at TextBuffer.module.exports.TextBuffer.saveAs (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1144:27)     at TextBuffer.module.exports.TextBuffer.save (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1114:19)     at TextEditor.module.exports.TextEditor.save (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:904:26)     at Pane.module.exports.Pane.saveItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:738:18)     at Pane.saveItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:3:59)     at Pane.module.exports.Pane.saveActiveItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:721:19)     at Workspace.module.exports.Workspace.saveActivePaneItem (/Applications/Atom.app/Contents/Resources/app.asar/src/workspace.js:693:35)     at atom-workspace.core:save (/Applications/Atom.app/Contents/Resources/app.asar/src/register-default-commands.js:225:32)     at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:259:29)     at /Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:3:59     at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:587:16)     at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:382:22)     at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (/Applications/Atom.app/Contents/Resources/app.asar/src/window-event-handler.js:106:36)     at HTMLDocument.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/window-event-handler.js:3:59)

This issue has been fixed in linter-gcc v0.7.1. Please update to get the fix, and please remember to restart Atom after updating linter-gcc.


Create issuelabeler.md

Add a bot to the list of apps - Issue Labeler. The bot tries to automatically assign labels to new issues based on the title and/or body of the issue.

Hey @riyadhalnur, thanks for the pull request. The app looks great!
It looks like there are a few test failures related to this PR:
  5) Failure:
lint test::_apps/issuelabeler.md#test_0017_does not use banned words [test/lint_test.rb:50]:
`automatically` should not be used in description

  6) Failure:
lint test::_apps/issuelabeler.md#test_0018_host returns 200 [test/lint_test.rb:58]:
Expected 200 response from https://1th3h69bkc.execute-api.ap-southeast-1.amazonaws.com/production/probot/stats.
Expected: "200"
  Actual: "403"

For the second one, what do I need to configure in order to let the call through?

I don't actually know what your deployment looks like, but you need to allow GET /probot/stats and GET /ping.

The tests related to this bot are resolved now 😃 @bkeepers

Thanks!


Adjust SAFE_URL_PATTERN regex for use with test method of regexes.

Follow-up PR of #33136 for Bootstrap 4.
This also removes the global modifier from the SAFE_URL_PATTERN regex, see the other PR for details why.
Since Bootstrap V4 uses a different unit testing strategy than V5, based on the dist files, the sanitizer is not directly accessible since the file is inlined into tooltip.js. Therefore, the unit test for the sanitation has been added to the tooltip unit tests and simply adds two tooltips with the same HTML template to the test fixture. Then it checks that the tooltips contents are correct, using the same logic as the unit test in V5.
I verified that the test works by first running it with the global modifier on the regex, where it fails, then removing the global modifier and it passes.

@nikonthethird thank you for the backport!


Target debugging is no longer supported with the legacy driver

Hello I get flowing message "Target debugging is no longer supported with the legacy driver"
The command is: Command + Shift + P ==> CMAKE:Debug
Operating System: MacOs Catalina 10.15.4
CMake Version: cmake version 3.17.0 {CMake suite maintained and supported by Kitware (kitware.com/cmake)}
VSCode Version: Version: 1.43.2 { Electron: 7.1.11 }
CMake Tools Extension Version:  1.3.1
Compiler/Toolchain: CLang 11.0.0

Can you check your settings and see what is set for cmake.cmakeCommunicationMode?  You shouldn't be on the legacy driver by default if you have a version of CMake greater than 3.7.
It's also possible that the extension didn't find your CMake binary?  We have a setting cmake.cmakePath where you can point us to the binary if it's not being auto-detected.

I uninstall Cmake tools 1.5.2 It doesn't give any error but It freezes without stoping on any breakpoint.
[build] Build finished with exit code 0
[proc] Executing command: /usr/bin/lldb-mi --version
[proc] Executing command: /usr/bin/gdb --version
[proc] Executing command: /usr/bin/lldb --version
[proc] Executing command: /usr/bin/lldb --version
I don't have lldb-mi on macOS system

The extension is looking for binaries, but this is unrelated to the problem you're having.  Could you take a look at my comment above and answer the questions I asked?


Incorrect Link Redirecting to Wrong Section on Website Apple Ecommerce.

The link on the top is redirecting to the wrong section , watch link is taking to macbook pro section , while airpods is taking to watch section.

2)

This watch link is taking to mac book pro section instead of watch section.

I would like to work on this issue.


Avoid possible nil pointer dereferences in consumergroup scheduling (#3775)

fix: avoiding some possible nil pointer dereferences in consumergroup scheduling

Signed-off-by: Calum Murray<EMAIL_ADDRESS>
fixed unit tests

Signed-off-by: Calum Murray<EMAIL_ADDRESS>
ignore no scheduler found error on finaliztion

Signed-off-by: Calum Murray<EMAIL_ADDRESS>
address review comments

Signed-off-by: Calum Murray<EMAIL_ADDRESS>
Signed-off-by: Calum Murray<EMAIL_ADDRESS>

OCF Webhook is merging this PR


Bug: Unicode characters have the backslash cut off, so they don't work

[Assassin](red, hover_text=<[Assassin](red)

[\u2764Health ](red) [- 20](white)

[3x](gray)>)

["", {"text": "Assassin", "color": "red", "hoverEvent": {"action": "show_text", "contents": ["", {"text": "Assassin", "color": "red"}, {"text": "\n\n"}, {"text": "u2764Health ", "color": "red"}, {"text": " "}, {"text": "- 20", "color": "white"}, {"text": "\n\n"}, {"text": "3x", "color": "gray"}]}}]

(Note the "u2764Health")
For now, I'd use a placeholder for the \ and then find replace it in your code. For instance, I use & and replace &u with \u

Fixed in 1.3.0


temporary: no cache in ci

This is an extension of #863 disabling the build cache to see if that resolves the failures

@dignifiedquire It seems like this sledgehammer-fix resolves the macos issue, but I think the no-std failure is real. I get it locally as well. Does futures-core/alloc require std?

Got it back working without introducing a feature, so closing this https://github.com/async-rs/async-std/pull/863


Fix Sonar Analysis due to new conditions set by SonarQube

Describe the bug
SonarQube has introduced some new tests that gives more bugs and vulnerabilities in our analysis. This gives us an E grade in bugs section and a C grade in vulnerabilities section.
Expected behavior
We should address all bugs and vulnerabilities.
Additional context
https://sonarcloud.io/dashboard?id=com.asanka.tutor%3Aopen-learnr

This is done :smile:


Refactor serialization to converter.

This follows the patterns of the Go and Java SDKs and allows
interoperability between Ruby and the other SDKs by converting arguments
to/from payloads in the same way.
Serialisation of protobufs has been left as-is because it is not
affected by interoperability issues.

After cherry-picking it from Rob's branch, I've diffed his branch, then this branch, and diffed the diffs to make sure everything was in place. Even though some things are a bit different, changes are all correctly applied.

@robholland Can you check 8eb4a755c258ea347b50ee2e8d60bc273d7fefa9? It was still using the old to_proto and I've followed the same pattern, but 🤷.

Just check https://github.com/opus-grove/temporal-ruby/blob/opus-main/lib/temporal/client/serializer/continue_as_new.rb

Cool! Just a different require and that's it. Ready for review!


fix(deprecation): Use query.parse to avoid deprecation warning

See https://github.com/neovim/neovim/pull/22761
Couldn't run the tests. Getting an error about plenary:
E492: Not an editor command: PlenaryBustedDirectory tests/ {minimal_init = 'tests/init.vim'}

Thanks for the PR! :smile:


error when removing item from shopping cart

the following error occurs when removing an item from the shopping cart, i assume if the session has expired (user has been on page for a long time)
A PHP Error was encountered
Severity: Warning
Message: array_unique() expects parameter 1 to be array, null given
Filename: libraries/ShoppingCart.php
Line Number: 66
Backtrace:
File: C:\wamp\www\codeignitershop\application\libraries\ShoppingCart.php
Line: 66
Function: array_unique
File: C:\wamp\www\codeignitershop\application\core\MY_Controller.php
Line: 27
Function: getCartItems
File: C:\wamp\www\codeignitershop\application\controllers\Checkout.php
Line: 53
Function: render
File: C:\wamp\www\codeignitershop\index.php
Line: 292
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: current() expects parameter 1 to be array, null given
Filename: models/Public_model.php
Line Number: 265
Backtrace:
File: C:\wamp\www\codeignitershop\application\models\Public_model.php
Line: 265
Function: current
File: C:\wamp\www\codeignitershop\application\libraries\ShoppingCart.php
Line: 66
Function: getShopItems
File: C:\wamp\www\codeignitershop\application\core\MY_Controller.php
Line: 27
Function: getCartItems
File: C:\wamp\www\codeignitershop\application\controllers\Checkout.php
Line: 53
Function: render
File: C:\wamp\www\codeignitershop\index.php
Line: 292
Function: require_once

hmm, its strange. I think that is right check - https://github.com/kirilkirkov/Shopping-Cart-Solution-CodeIgniter/commit/cceb024ae62e5e80854c2ae33ba75567ab1425f0


feat: add mapError api

I added a mapErr() api that allows to change the failure result as following rust-style map_err.
In the current API, I have to use .onElseMyResult() to convert the error to another type of error, but it didn't seem convenient. So I add a pull request to add mapErr()

At any rate, can you fix the Sonatype warning that is reported above?

Updated the documentation!


plot fracdiff and raw at same chart

at ["Fixed Window Fractional Differencing Function (CPU)"], include the raw data, to easily see the difference between both charts =)
great work, congrats!
Plot
plt.figure(figsize=figsize)
plt.subplot(2,1,1)
plt.plot(df_raw_fd)
plt.subplot(2,1,2)
plt.plot(df_raw)
plt.show()

This would be a nice comparison chart. I'll add it in. Thanks!

i forgot to sync X axis

sharex=true, at subplot


Time aware aggregations for temporal streams?

Howdy,
I'm trying to use Trill to cluster together discrete events into groups.
I want to group together events that occur within 2 mins of each other
For example if i have these event times
1:00:23PM
1:01:15PM
1:01:20PM
1:25:11PM
1:25:30PM
1:29:55PM

I need to group them into these groups.
Group 1
1:00:23PM
1:01:15PM
1:01:20PM

Group 2
1:25:11PM
1:25:30PM

Group 3
1:29:55PM

Once they are grouped then i need to aggregate them into 3 final events.
Now i've been trying to work with SessionTimeoutWindow which does the first step, but then I noticed the grouping or aggregate APIs don't seem to offer time-aware implementations, so i can't operate with time as first class data.
I realize i could use ToStreamEventObservable and then use normal linq to group and aggregate, but I was under the impression that i should operate on Streamables as much as possible first to take advantage of Trill's engine.
Is there a way to implement event lifetime aware groupings in Trill?

Hi @AlgorithmsAreCool,
IAggregate does support timestamp aware aggregations by passing the timestamp of the current event to the Accumulate/Deaccumulate methods, but when used after a windowing operator such as TumblingWindow, this timestamp may be modified to the window time, not the original timestamp. So if you'd like to persist the original timestamp or duration, you could embed those values as part of the payload, e.g.:
inputStream
    .Select((payload, originalTime) => ValueTuple.Create(payload, originalTime))
    .TumblingWindowLifetime(100)
    .Aggregate(...);

or simply include the timestamps as part of the payload during ingress. This would then allow you to access the original timestamp in your IAggregate class implementation.

Hmm, i must have missed this.
But this is just the starting edge time, the duration/end time isn't flowed through this API correct?

Well, yes and no.
It is absolutely correct that the end time/duration is not directly part of the API. However, with one important exception, it is actually there, hidden in the interface.
The IAggregate<T, S, O> interface has two methods, Accumulate and Deaccumulate, that accept a time argument.

For Accumulate, the time argument marks the time at which an element enters consideration for the aggregate. This is almost certainly the same as the "start time" for an element.
For Deaccumulate, the time argument marks the time at which an element leaves consideration for the aggregate. This is almost certainly the same as the "end time" for an element.

However, in the particular case you have, the Deaccumulate method won't be much help. That's because of how SessionWindow does timelines. Consider the case of your first group. After the session operation, you will get data that looks like the following:

Start edge for 1:00:23PM at 1:00:23PM
Start edge for 1:01:15PM at 1:01:15PM
Start edge for 1:01:20PM at 1:01:20PM
End edges for all three of the above simultaneously at 1:03:20PM, two minutes past the last point (two minutes being your session window timeout.

The main question I have for you in return is this: how do you want to have the final edge handled in the result? Should it be considered to have the time weight of the session timeout, so two minutes?
Here's roughly what I would do in your situation:
`
public sealed class SessionTimeWeightedAverage : IAggregate<T, Dictionary<long, T>, U>
{
private long sessionWindowTimeout { get; }
public SessionTimeWeightedAverage(long timeout) => this.sessionWindowTimeout = timeout;

public Expression<Func<Dictionary<long, T>> InitialState() => () => new Dictionary<long, T>();

public Expression<Func<Dictionary<long, T>, long, T, Dictionary<long, T>>> Accumulate() => (state, time, element) => NewState(state, time, element);

private Dictionary<long, T> NewState(Dictionary<long, T> oldState, long time, T element)
{
    oldState.Add(time, element);
    return oldState;
}

// Implementations of deaccumulate and difference following the above pattern
public Expression<Func<Dictionary<long, T>, U>> ComputeResult() => (state) => YourResultComputation()

}
`
The state manipulation is actually easier depending on the computation you're trying to do. For instance, instead of maintaining a full dictionary, you may be able to instead just keep around the last time value and compute the deltas on each Accumulate call (making the "NewState" method above slightly more complicated but the state simpler). Your method YourResultComputation above would then need to know the session timeout window to be able to determine how the last data element would contribute.
I hope this helps - please let us know if we can be of more help.

hmm, i need to play around with this some.
Thank you for your help!

Gonna close this until i can get back around to it


Exit vote removal if democracy property couldn't be found

In which conditions are we in this state? It looks like this is the code that removes the vote once the referendum is over. I didn't check if it is still necessary to remove votes in gov2.

Actually this piece of code never worked. api.tx.democracy is gov 1, and now that kusama has removed gov1, it no longer exists. It has nothing to do with a specific referendum.
I replaced api.tx.democracy with api.tx.convictionVoting which appears to be the gov2 library to call in this case. I found that it needed 2 arguments, so I went to polkadot js ui and had a look at the removeVote extrinsic. The first parameter is called "class" and second is the vote index.
I ran locally and found that setting class to 0 was working and the votes were successfully removed.
Prior to this, no gov2 referendum was ever cleared by this script. There is now a large backlog of referenda to clear.


Signature with import functions

Example Sq::Parser
The current approach with importing doesn't work. When i write.
use Sq;
use Sq::Parser;
use Sq::Sig::Parser;

then this does not work as expected. Sq::Sig::Parser adds type-checks to the function in Sq::Parser but the type-checking is added after the functions was imported in the current package. So the function in the current package don't have any Signatures.

Maybe i write the Exporter in a way that you can specify.
use Sq::Parser sig => 1
and then it loads the signature before exporting.

I have something like this in mind.
use Sq;
use Sq::Parser -sig => 1;

this will load the default signature that was defined in Sq::Parser itself. You also can do.
use Sq;
use Sq::Parser -sig => 'Sig::SomeDifferent';

this then loads another signature by default.

I also consider those option:
use SomeModule
    -as => 'WhereverYouWant',
    -var => $var,
    -prefix => 'tp';

i don't know if var is possible without rethinking modules completely.

-var => $var is possible.
When this parameter is passed i just could return a Hash. This Hash than contains all functions of the symbol-table in that
package, and put's it in the hash. Then it is returned.
The problem with that is, not every function makes sense to be exported this way, becaus some may be methods on object. But the user could supply a list that is ok to be exported this way. So someone could still call all constructors or
static functions on it.
For example it could be.
use Sq::Type -var => $t;

then a user could do:
$t->{t_or}->();

but this is less practical. But i could return a blessed Hash with AUTOLOAD that automatically dispatches a method call on it to a hash-key. Also the names then could be different. For example the t_ could be removed. So someone then could finally write.
$t->or();

but. What's the difference to just import the functions with a namespace?
t_or();

It's basically the same. Still shorter. And is definetely a lot faster! All this blessed Hash exporting and AUTOLOAD will make it slower. With basically no advantage. It would just replace an underscore with -> and you need to add $. So actually this
seems completely pointless.

It would just replace an underscore with -> and you need to add $. So actually this seems completely pointless.

 The other is just procedural crap, right?

Procedural? It just looks on the surface.


Test that we are only removing txs from the block at the max square size

ideally we should only be hitting this if we're at the max squaresize. that might be something we want to add a test for in the future
Originally posted by @evan-forbes in https://github.com/celestiaorg/celestia-app/pull/1089#discussion_r1042916298
this test could be as simple adding an additional check to an existing test that creates square not the max square size, and ensure that each transaction is getting included in the block.

Closing this as I believe it has been solved through this test: https://github.com/celestiaorg/celestia-app/blob/c121c285005c0b5d47542fd955fc5be688905e1a/pkg/square/builder_test.go#L86


Datadog plugin to record api route

I'm running Kong 0.9.1 and looking at the Datadog plugin. It appears that Kong only uses the api name for the metric rather than the method and full route of the request. For instance, if I register the Datadog plugin at /foo, I don't get reporting at /foo/bar or even if I'm doing a POST or GET.
Is there a way to get more details in the metric? Having plugins apply to all child routes is really handy, but clumping together the results of a deep REST API is not.

@kepheusikarius did you try Galilleo Plugin? If not i would advise to give it a try. Its a powerful tool for API analytics.
https://getkong.org/plugins/galileo/
Regarding Datadog, metrics are based of statsd format and has limited flexibility regarding the amount of data that can be saved.  More API info can be added through Tags but that does not seem practical.

I agree that tags are impractical, which is why I suggested the metric name. And while I grant that Galileo does record the data I'm looking for, I find it somewhat telling that your initial response is to promote your own product.

@kepheusikarius I do not see any other way to put more details about API without using Tags. You can also try Syslog plugin which logs request/response detail to a specified Syslog server.


Ordianl numbers

First, second, third, etc.

One proposition is to add "O" before the number:
r:{
    id: a_role;
    syn: 3833065;
    qnt: O1;
r:}

First novel


Create BMI Calculator.py

Added a new Python project namely BMI calculator.py Hope you like it 🙂

good work


RFE: Allow specifying the desired size of a vms root disk

/kind enhancement
What happened:
Currently it is not possible to specify the size of a virtual machines root disk at runtime, the only way to get that done is by pre-baking different RegistryDiskSource images/PVCs.
What you expected to happen:
It would be awesome if it was possible to specify the desired size of a VMs root disk on the RegistryDiskSource or PVC and then just have the virt-launcher run a qemu-img resize $image +$(desired_size  - actual_size) prior to starting the VMI or error out if desired_size < actual_size
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

KubeVirt version (use virtctl version):
Kubernetes version (use kubectl version):
VM or VMI specifications:
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

Could you explain the use case(s) for this?

a) Needing a varying amount of ephemeral storage on a vm: This currently requires multiple docker images than only differ in the virtual size of the qcow2 in them or using an emptyDisk, but the latter is less flexible and rather cumbersome as it has to be configured via cloud-init
b) Getting to the point where the size of a persistent root disk is not sufficient anymore. PVC expansion is now beta so it would be cool to use that feature for a Kubevirt-managed instance.

WRT a) - Could you desribe this use-case more? It sounds as if an empty disk is not enough for you (i.e. emptyDisk).

Say I have a set of physical machines on which I spawn VMs via kubevirt. I do not care too much about the individual instances so I use a registryDisk instead of a PVC for their root volume. I want the option to specify the virtual size of the root disk, thought.
Currently I have to do that by creating multiple registryDisks that only differ in the virtual size of the contained QCOW2.
This virtual size should definitely not be seeded by the size of the underlying available storage, as that is an emptyDir .

The PVC template inside the VM sounds like an awesome idea, is there some issue that tracks the progress on that? Potentially I could spend some time on it if no one is working on it yet.
I do btw not have permissions to access the linked google docs document.

I don't think that there is an issue for having a registryDisk as a
template for PVCs.

I don't think that there is an issue for having a registryDisk as a
template for PVCs.

Thats not what I meant, my comment was regarding the volumeClaimTemplate inside the VirtualMachine definition. But judging from the comments on that doc it seems to me that this will instead by done by defining a DataVolume as part of a VM spec, right?

Right, thanks for clarification.
I'd not be to opposed against plain claimTemplates, as dataVolumes will
have additional dependencies (and additional features), claimTeplates would
work out of the box - thus a win as well.

To be clear:
For local storage this request makes sense, we also have this with local ephemeral storage in kubernetes: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#local-ephemeral-storage


Need doc to start development

I would love to contribute to EasyEngine but, I found there is no development related doc like how to setting-up the project? From where to get start?
I think development doc will really help contributors to contribute.

Has been fixed by #998


Issue 282 discrete

Description
Discretise a model not in place, to avoid having to make copies in convergence testing
Fixes #282
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Key checklist:

[x] No style issues: $ flake8
[x] All tests pass: $ python run-tests.py --unit
[x] The documentation builds: $ cd docs and then $ make clean; make html

You can run all three at once, using $ python run-tests.py --quick.
Further checks:

[x] Code is commented, particularly in hard-to-understand areas
[x] Tests added that prove fix is effective or that feature works
[x] Any dependent changes have been merged and published in downstream modules

Codecov Report

Merging #300 into master will increase coverage by 0.15%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #300      +/-   ##
==========================================
+ Coverage   97.63%   97.79%   +0.15%
==========================================
  Files          53       53
  Lines        3093     3218     +125
==========================================
+ Hits         3020     3147     +127
+ Misses         73       71       -2

Impacted Files
Coverage Δ

pybamm/discretisations/discretisation.py
100% <100%> (ø)
:arrow_up:

pybamm/expression_tree/concatenations.py
100% <100%> (ø)
:arrow_up:

pybamm/expression_tree/binary_operators.py
99.78% <0%> (+0.65%)
: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 b573057...c20cfdf. Read the comment docs.

ok, makes sense, fixed

Zero extra time cost (I think), but some memory cost as we have to create new model object? I agree that returning a new model by default is more obvious, as well as being consistent with the behaviour of process_symbol.
Note that for parameter_values, I think the default should still be in place, because we have the update_model function, which is much quicker than process_model. We can't write a similar update function for the discretisation, because we can't tell from the discretised model what the original model was supposed to be (e.g. is a matrix-vector multiplication a gradient or a divergence?)


Improved disk space validation error message

Before it was reporting that Docker environment has MORE than 2GB when in reality it had LESS then 2GB. Error message was a bit confusing.

Hi @fkorotkov,
Thanks for the contribution!
But... It's a check, part of the pre-flight checklist.
Like:

Eggs bought
Kitchen has enough space to cook
etc...

This is why it says:

Docker version is newer than minimal we request
disk has more than 2Gb
etc

I'm just confused by a stacktrace like this:
java.lang.AssertionError: Docker environment has more than 2GB free
	at org.rnorth.visibleassertions.VisibleAssertions.fail(VisibleAssertions.java:437)
	at org.rnorth.visibleassertions.VisibleAssertions.assertTrue(VisibleAssertions.java:129)
	at org.testcontainers.DockerClientFactory.checkDiskSpace(DockerClientFactory.java:168)
	at org.testcontainers.DockerClientFactory.lambda$client$1(DockerClientFactory.java:127)
	at org.testcontainers.DockerClientFactory.runInsideDocker(DockerClientFactory.java:230)
	at org.testcontainers.DockerClientFactory.client(DockerClientFactory.java:118)
	at org.testcontainers.containers.GenericContainer.<init>(GenericContainer.java:116)

A little bit more data:
Message passed to VisibleAssertions is affectively an error message. You can see in https://github.com/testcontainers/testcontainers-java/pull/363 that before introduction of VisibleAssertions it was checking df.availableMB.map(it -> it < 2048).orElse(false).

You are right, the error message might come of as confusing in the stacktrace, but it should be clear on stdout, since it's colored and using icons. If we change the error message, it would be confusing in case of the successful check.

Sorry for the delay in responding to this. How about, to eliminate ambiguity, we change each of these checks' messages to 'should be...' form.
i.e. for this particular case, 'there should be more than 2GB disk space free'. With the tick/cross and colours, this would be very clear, and even if these aren't seen it's going to be much more obvious what's going on.
I'll do this myself and link this to my PR.

I've raised a PR with my suggested wording for this and other check messages. Thank you for raising this in the first, place, though @fkorotkov - hopefully this makes it much clearer for users now.
I'll close this PR; please see #457 instead.

Thank you for doing this! 👍🙌


Pre tags should be auto

Hacker News Feedback: Your pre elements are set to overflow: scroll;. You pretty much never really want that. (And it looks terrible on platforms that still have real scrollbars instead of the iOS-style overlay indicators that fade away. It should be auto.
See https://www.w3.org/TR/CSS21/visufx.html#propdef-overflow

Fixed with this commit: d167fadbad4f97bde304abdd08ae2d1ea37bea6f


[Request] Server-side module for python or php

Hey there !
I've been using this library for some time, but as I don't work (and don't want to) using nodejs, but I prefer to use php7 or python3/flask instead, I'd like to know if it'd possible to make a version for one of these two solutions ?
Thanks in advance !

Hi @TheNofx68! It's not in our plans to port the library into another programming language as it would be very time consuming and meant we need to keep parallel development of the two libraries while maintaining the output identical.
If you don't mind using nodejs in conjunction with PHP or Python, you can call showdown's CLI from your application and read the output. It's pretty straightforward and should be fast.
However, if you REALLY wanna get rid of installing nodejs altogether you might try:

Convert JS to Python
Compile showdown's library - Doesn't get rid of nodejs per se, but comes bundled with the app iteself in a single binary, so you don't really need to install or configure it.

As a last resort, you might wanna try https://github.com/michelf/php-markdown. The output should be very similar, although tehre are some features in showdown not supported in php-markdown and vice versa.

Thanks for these infos, but I really don't want to have to work with nodejs, so it's a total no for me.
I can obviously understand the extra work part, and I'll take a look at the php-markdown you gave.
If none suits my needs, I think I'll work on porting your library into php.
Anyways, thanks !


Update MinPushSize to use uint

@jadwahab Previous PR was marked as stale.
Resubmitting

Codecov Report
Base: 83.86% // Head: 83.86% // No change to project coverage :thumbsup:

Coverage data is based on head (17c99f8) compared to base (34e82d8).
Patch coverage: 100.00% of modified lines in pull request are covered.

:exclamation: Current head 17c99f8 differs from pull request most recent head cbcf5b0. Consider uploading reports for the commit cbcf5b0 to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #129   +/-   ##
=======================================
  Coverage   83.86%   83.86%
=======================================
  Files          34       34
  Lines        3670     3670
=======================================
  Hits         3078     3078
  Misses        426      426
  Partials      166      166

Impacted Files
Coverage Δ

bscript/script.go
63.22% <100.00%> (ø)

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

@shruggr can you pull latest master to resolve the linter issues.


implement eth_getHistory

getHistory() returns a wallet's recent transactions.
getHistory ( addressOrName [ , startBlock [ , endBlock ] ] ).

This is not an eth specification, for eth chain, this is implemented by querying etherscan. For us, I think it can be implemented by querying graphql.
Actually, it is possible now to query directly through graphql, which is also more flexible.
like this:
https://studio.apollographql.com/sandbox/explorer?endpoint=https%3A%2F%2Ftc7-graphql.aca-dev.network&explorerURLState=N4IgJg9gxgrgtgUwHYBcQC4QEcYIE4CeABAIq6EAUAJAGYCWANivukQCp4CGSAzp1CjoQkAJQRQEdAA4oAYo2Z4ANESoQ8YfACECrANodufAUNHjJMngHkN2ggEIAugEoiwADpIiRFF179BYTEJaRQeCnomFlVIxRV1TTwdVjVbJIJXDy9vIiQITR43TxycvM0ASTBikqI6KuySlAhqkpo8CDgWnKhhXwCAQTAwPAQeHi7vPv8TYXKkTQAPCaIGCABzHi1VjuW1zh4AVR4EepqiACNVqABrAAl9gAtlqeNApHueJ4acy%2BhrgDl4Od8MtYHAYAxOIIAG4IADi%2ByOJ2eBCkCGWPBQUJg42%2B3gQCzoKDE%2B2Ey1WGyKeNK%2BVGVLOJTKCEqyxKdVZPyuAKBIOpJV%2BNw%2BXwZOReAVMc0WHO8IzgEFhpxFRE4QxGY2lRDAUM4GqaUjoUFxSp8flepiFGopkoJHIAvst7d9Hd5HY6QEoQNDOHg6JxLqMMCAst53CBYiCMPScqGBdy4MC8KHWMGaqGGKMeGwHtwk0QAJwFgAcAHYAExKZahtYjKH4LM5yMFvOFgBsea6tor31D6lzemWKbOoaaucHDNDCBwnAYbGakdDAAYFgvS4WSy3CwAWTjFvMAVjzAGYW8Xi2BizQF8WW1AtwvN4fznnN1BgQuAIw0BA6kB2h1ds4xxKUM2h2SMgNTEBJxgadZ1zRdl1Xdctx3fcjxPM8LyvG87wfJ8XzfT9v1DP9qU7AcOVDHpUC4ARBmGDNRw1CcpxnOdWAQlc12vFDdwPY9T3PS9r1vTd70fZ9XwQD8vx-UizmdHJHGqcjsh7NIdHgkAtAAGSsABhABpAB9f4DgAWS0ABRERjIAESsgBlfSSKQW0QFtIA

@ntduan Cool, thank you for sharing this info!
What rate limits does this GraphQL API has?
What options are there to avoid rate limiting?

The best way to ensure you are not rate limited is by hosting your own server. Alternately you can deploy the evm-subql project on the managed services at https://subquery.network/managedservices as well

@xlc Thank you! By emv-subql you mean this: https://github.com/AcalaNetwork/bodhi.js/tree/46a70891a4728756f4af3d293814ee3395abbf59/evm-subql?
The difference between evm-subql and acala-subql is that evm-subql does the same plus runs Acala Mandala Testnet node?

Yes.
evm-subql is only about EVM related events. acala-subql is for everything.
the acala-evm-starter is a template that you meant to customize it with your contract ABI & related logic.

@xlc Thank you :100:


Publishing failed on macOS with with .NET SDK 2.2.100

Publishing failed for my module PSDashSearch.
NOTE: I also included the dotnet --info since the last time I had trouble publishing a module, it was caused by a newer version of the .NET SDK.
Steps to reproduce
Publish-Module -Name PSDashSearch -NuGetApiKey $mykey

Expected behavior
It successfully publishes
Actual behavior
Publish-PSArtifactUtility : Failed to generate the compressed file for module 'Microsoft (R) Build Engine version 15.9.20+g88f5fadfbe for .NET Core'.
At /Users/tyler/.local/share/powershell/Modules/PowerShellGet/2.0.3/PSModule.psm1:10883 char:17
+ ...             Publish-PSArtifactUtility @PublishPSArtifactUtility_Param ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : FailedToCreateCompressedModule,Publish-PSArtifactUtility

Environment data

> dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   2.2.100
 Commit:    51868761f2

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  10.14
 OS Platform: Darwin
 RID:         osx.10.14-x64
 Base Path:   /usr/local/share/dotnet/sdk/2.2.100/

Host (useful for support):
  Version: 2.2.0
  Commit:  1249f08fed

.NET Core SDKs installed:
  2.1.403 [/usr/local/share/dotnet/sdk]
  2.2.100 [/usr/local/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      6.1.1
PSEdition                      Core
GitCommitId                    6.1.1
OS                             Darwin 18.2.0 Darwin Kernel Version 18.2.0: Mon Nov 12 20:24:31 PST 2018; root:xnu-4903.231.4~1/RELEASE_X86_64
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

> Get-Module -ListAvailable PowerShellGet,PackageManagement

    Directory: /Users/tyler/.local/share/powershell/Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Script     1.2.4      PackageManagement                   Desk      {Find-Package, Get-Package, Get-PackageProvider, Get-PackageSource...}
Script     2.0.3      PowerShellGet                       Desk      {Find-Command, Find-DSCResource, Find-Module, Find-RoleCapability...}

> Get-PackageProvider -ListAvailable

Name                     Version          DynamicOptions
----                     -------          --------------
NuGet                    <IP_ADDRESS>          Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag, Contains, AllowPrereleaseVersions, ConfigFile, SkipValidate
PowerShellGet            <IP_ADDRESS>          PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, InstallUpdate, NoPathUpdate, AllowPrereleaseVersions, Filter, Tag, Includes, Dsc...
PowerShellGet            <IP_ADDRESS>
PowerShellGet            <IP_ADDRESS>

when I started pwsh with sudo the Publish worked. I've also been noticing some other funny permissions stuff with dotnet recently (outside of PSGet) so I'm pretty confident the bug is on them.
How can I prove that the error is being thrown by dotnet?

I’ll take a look at this on my Mac and see whether it’s a PSGet or dotnet issue.  What version of dotnet were you using before you had this error?

I think this might actually be an issue with macOS. I've noticed that I had to use sudo a few times just to save certain files that would otherwise not need it. Let me update my OS and try again.

When you publish PowerShellGet shells out and calls dotnet with various
params under the covers. Hopefully you can see what those params are by
running with -debug and then we can repro just using dotnet; or maybe we
are invoking in such a way that elevated permissions are required when we
don't really need to
On Mon, Dec 17, 2018 at 12:46 PM Tyler James Leonhardt <
<EMAIL_ADDRESS>wrote:

I think this might actually be an issue with macOS. I've noticed that I
had to use sudo a few times just to save certain files that would
otherwise not need it. Let me update my OS and try again.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/PowerShell/PowerShellGet/issues/383#issuecomment-447992940,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AACyChU-y8jWvadz8C6opsJ9RSUpd6Jyks5u6AK2gaJpZM4ZV2Dr
.

From what I gathered, this was definitely some bizarre permission issue.
I noticed a couple files were marked with only root having read/write permissions. I believe this lines up with when I ran sudo pwsh and created a file. I don't know if that's expective behavior of PowerShell...
In any case, PSGet seems to not be the cause of my troubles for this, so we can close this 😊


Added more query cache test for binding tuple value expression

Talked with @chenboy regarding #1298 , he prefers manually call SetBoundOid() to bind the tuple value expression in order to make the expression equality check work.

Added a test to query cache test

Coverage increased (+0.03%) to 77.478% when pulling 3fa8863e756031354fe7529dd40820c3f9042de4 on nwang57:query_cache into d68ab719fdd9499f23ac5887f907ed07ce4d2644 on cmu-db:master.

Yeah, thanks @saatviks . I can't change the label tho.

@chenboy waiting on your review to this PR?

@chenboy Hi, I have solved all the issues. Please have a look at it again, thanks.

@chenboy could you take a look at this?

I believe there're still unresolved comments. I think we may want to also check the content of the tuples returned.

I will merge this when the build passes.


Better Defaults for Sliders

Better slider initial values are top_p=0.8 and temp = 0.8

that should be fixed now.

thanks!


Feature request: eventually non-preemptible retries

I think this is already on the roadmap and I'm not sure whether there is a better place than the Github issues to note this, but having the option to eventually make a job non-preemptible would be a great feature to have. For example, I can get through 99% of my ~2k job run in 20 minutes, but finishing the last 1% can take another 20-60 minutes because of unlucky jobs getting killed 4+ times.

Retry support for starting with preemptible and falling back to non-preemptible VMs has been included with release 0.3.3.
Please see documentation on retries under the "--preemptible flag" section.


Tracer extract ambiguous handling of corrupted span context

Hello,
API in different languages define different behavior when extracting corrupted span context from a carrier.
E.g. javadoc say to throw an exception if the context is corrupted. Comment in JS say to return null if no span context could be found but it's not talking about corrupted one.
It would be good to clarify this is the specification.
If the span context is corrupted should be an exception thrown or started new tracer? This could depend on tracer configuration.
I run into this when looking at brave-ot: https://github.com/openzipkin/brave-opentracing/pull/14/files#r97917595
Also see @adriancole comments here: https://github.com/openzipkin/brave-opentracing/pull/14#issuecomment-275342413
Extract in the specification:
Spec: https://github.com/opentracing/specification/blob/master/specification.md#extract-a-spancontext-from-a-carrier
Extract in APIs:
Java: https://github.com/opentracing/opentracing-java/blob/master/opentracing-api/src/main/java/io/opentracing/Tracer.java#L76
JS: https://github.com/opentracing/opentracing-javascript/blob/master/src/tracer.js#L177
Python: https://github.com/opentracing/opentracing-python/blob/master/opentracing/tracer.py#L108
Go: https://github.com/opentracing/opentracing-go/blob/master/tracer.go#L112

@pavolloffay I think there are two independent issues here.

what is tracer expected to do when it finds no span context in the carrier or if the carrier is corrupted. So far the spec was not firm about it because different languages have different ways of communicating errors. I agree that the spec should be more clear about it, namely that the extract() method should explicitly communicate back to the instrumentation why it could not create the span context.
what instrumentation is expected to do when the span context is not extracted. This is a harder problem since instrumentation itself is not part of the spec. I personally think that a new trace should always start when the span context cannot be extracted, because no requests should be executed by the system without propagating distributed context.

@pavolloffay thanks for bringing this up, and especially for doing so on the spec repo... one of the frustrating things about discussing it, say, for Java on its own is that it's harder to reference cross-language consistency goals.
Strawman for the spec (i.e., without referring to specific languages):

Extract() must differentiate between a (successfully) extracted SpanContext, a corrupted SpanContext, and the lack of a SpanContext.
Extract() must not crash the process because the caller neglected to read a comment. (I.e., if it throws an exception, it should be a checked exception)

Per @yurishkuro's second point: I am enthusiastic about moving OT towards a model where the programmer basically just starts a span without knowing whether there's a parent lying around somewhere. This is (very) related to #23. It would certainly argue that a (new) trace is started, for what it's worth.

btw, I have been talking with @tedsuo about this... should have a POC sketch "soon".


[WIP] UI style

This is a WIP PR of adding some spit + polish to the UI before the demo on Wednesday. I've just started with the font and some of the buttons to look like other built-in plugins.
Feel free to just commit to this and we can get it to wherever we think is good enough before our meeting.

For reference so far


Add a glossary

Adds a BNA Mechanics glossary to clarify the various specific terms used within the projects.
Signed-off-by: Rémy Greinhofer<EMAIL_ADDRESS>

For the 'Infrastructure' definition, I suggest modifying it to read "...using a bike or other micromobility device that typically travels under 20 mph (32 kph)."

👍

Are "scorecard" and "brochure" redundant?

No, a scorecard is a specific type of brochure.  Brochure is the more generic term in case we decide to generate more documents using our data-merge tooling.

If they are not redundant, does it make sense to define the scorecard as a specific type of brochure? E.g. "Scorecard: A specific kind of brochure that summarizes City Ratings data for each rated city."

Yes! Absolutely! Great ideas!

Relatedly, I'm wondering if "shortscorecard" should be "shorttemplate" instead, defined as a template with shortcodes input, instead of a scorecard with shortcodes.

Héhé, this is where is becomes tricky. Because in the future we may have more templates using shortcodes (which is the core of our data-merge tooling). So "shortscorecard" means "a template version for the scorecard brochure where we use shortcode". And tha's why I had a hard time to define it far.

Lastly, should I update the City Ratings definition to specify that is a CSV with annual results? Otherwise, I don't think it's defined anywhere else.

Yes, that also sounds like a great idea 👍

@beckymasond I updated the infrastructure definition with your changes. I promoted brochure and scorecard with your changes. The rest will stay in the "Incubating" section until we can find a wording which is more satisfactory.


[CfgEditor] Add more condition for onDidChangeTextDocument

Because of VSCode design, onDidChangeTextDocument can be called even when there are no changes.
It is not intended behavior that updateWebview is called even if document is not changed.
This commit will fix it by checking whether there are actual document changes.
ONE-vscode-DCO-1.0-Signed-off-by: Seok NamKoong<EMAIL_ADDRESS>
Parent Issue : #698
Draft : #697

FYI, I asked  e.document.uri === document.uri. My question was not about object === object(object's reference or hashvalue === object's reference or hashvalue). In C++, we can see operator== so that I guessed it. I considered fsPath of Uri but it doesn't have scheme. I've read this and then I realize it's safer way than anything.
        /**
         * Returns a string representation of this Uri. The representation and normalization
         * of a URI depends on the scheme.
         *
         * * The resulting string can be safely used with {@link Uri.parse}.
         * * The resulting string shall *not* be used for display purposes.
         *
         * *Note* that the implementation will encode _aggressive_ which often leads to unexpected,
         * but not incorrect, results. For instance, colons are encoded to `%3A` which might be unexpected
         * in file-uri. Also `&` and `=` will be encoded which might be unexpected for http-uris. For stability
         * reasons this cannot be changed anymore. If you suffer from too aggressive encoding you should use
         * the `skipEncoding`-argument: `uri.toString(true)`.
         *
         * @param skipEncoding Do not percentage-encode the result, defaults to `false`. Note that
         *    the `#` and `?` characters occurring in the path will always be encoded.
         * @returns A string representation of this Uri.
         */
        toString(skipEncoding?: boolean): string;

In short, e.document.uri.toString() === document.uri.toString() is the right way 😄 .


extra params on defaults

Hi,
in leaflet, some user defined controls have the capability to add and initialize the control in the options object while creating the map. but in leaflet-directive you are restricting the parameters passed in the defaults object. is there any way to pass any other user defined parameter to the map.
Best Regards,
Kamal

Hi, the "defaults" object is used only to override the most common attributes, so creating a new map with common options is easier. If you think there are useful options that need to be managed in the defaults options just propose it, I added only those which I use more.
If you could be more specific about these options, or provide an example, I can add them. Better if you send a PR by yourself, of course.

This issue was moved to angular-ui/ui-leaflet#58

I'm going to rework&redesign angular-leaflet-directive to be compatible with Leaflet v1.0. It will mantain almost all its functionality, and will be compatible with the current features of the directive, but I must start from a fresh point, so I'm going to close this issue. If you think it must be worked with the new version, please reopen it.


feat(scheduler): Implement DELETE /intervalaction/name/{name} V2 API

Close #3309
PR Checklist
Please check if your PR fulfills the following requirements:

[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

If your build fails due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/master/.github/Contributing.md.
What is the current behavior?

Issue Number: #3309
What is the new behavior?
Implement the API according to the doc https://app.swaggerhub.com/apis-docs/EdgeXFoundry1/support-scheduler/2.x#/default/delete_intervalaction_name__name_
Does this PR introduce a breaking change?

[ ] Yes
[x] No

New Imports

[ ] Yes
[x] No

Specific Instructions
Are there any specific instructions or things that should be known prior to reviewing?
Other information

Rebased.

recheck


Docker build fails with cached dependencies for a workspace

I've a project with the following structure:
app
├── pkgs
│   └── backend
│       ├── pyproject.toml
│       └── src
│           └── backend
│               ├── __init__.py
├── pyproject.toml
├── src
│   └── ui
│       ├── hello.py

In pyproject.toml I have the following:
[project]
name = "app"
version = "0.1.0"
requires-python = ">=3.12"
dependencies = [
"backend ==0.1.0"
]

[tool.uv.workspace]
members = ["pkgs/backend"]

[tool.uv.sources]
backend = { workspace = true }

[tool.hatch.build.targets.wheel]
packages = ["src/ui"]

[project.scripts]
hello = "ui.hello:main"

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

In backend/pyproject.toml I have:
[project]
name = "backend"
version = "0.1.0"

requires-python = ">=3.12"
dependencies = ["..."]

[tool.hatch.build.targets.wheel]
packages = ["src/backend"]

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

Finally, the hello.py is rather simple:
from backend import hello

def main():
    print("Hello from uv-workspaces!")
    print(hello())    # backend.__init__.py has a hello() method that just returns "hello from backend"

if __name__ == "__main__":
    main()

As you can see, this is a minimal solution to understand how workspaces can be used to deploy an (eventually) more complex project with dependencies into a Docker container.
Now uv sync and uv run hello work fine on my machine - it prints two hello messages.  But if I follow the Dockerfile here, it fails with the error:
0.125   Caused by: Failed to parse entry for: `backend`
0.125   Caused by: Package is not included as workspace package in `tool.uv.workspace`

The problems seems to occur because the Dockerfile does not copy the project source code before doing the sync. When I added a --mount=type=bind,source=pkgs,target=pkgs before the uv-sync command in the Dockerfile, it solved the problem, but this is obviously not a good idea because then I cannot cache the dependencies.

You'll want to use --no-install-workspace instead of --no-install-project, I think.

Thanks, I tried that too, but it gave me the same error. So all the following give the same error:
--no-install-project
--no-install-workspace
--no-install-project --no-install-workspace

In addition, I now added the -v flag to get verbose output. Most of it seemed innocuous, but these lines show up. Is this a problem?
0.128 DEBUG Ignoring existing lockfile due to mismatched members:
0.128   Expected: {}
0.128   Actual: {PackageName("app"), PackageName("backend")}

Running uv lock didn't fix the above, and doesn't seem to update the uv.lock file either, going by the file timestamp

Seems like a bug, @charliermarsh would know better though.

Are you not running with --frozen? That debug message should be "impossible" with --frozen.

Either way, can you post the exact Dockerfile you're using with the above projects please?

E.g., this builds without error:
# Use a Python image with uv pre-installed
FROM ghcr.io/astral-sh/uv:python3.12-bookworm-slim

# Install the project into `/app`
WORKDIR /app

# Enable bytecode compilation
ENV UV_COMPILE_BYTECODE=1

# Copy from the cache instead of linking since it's a mounted volume
ENV UV_LINK_MODE=copy

# Install the project's dependencies using the lockfile and settings
RUN --mount=type=cache,target=/root/.cache/uv \
    --mount=type=bind,source=uv.lock,target=uv.lock \
    --mount=type=bind,source=pyproject.toml,target=pyproject.toml \
    uv sync --frozen --no-install-workspace --no-dev

# Then, add the rest of the project source code and install it
# Installing separately from its dependencies allows optimal layer caching
ADD . /app
RUN --mount=type=cache,target=/root/.cache/uv \
    uv sync --frozen --no-dev

# Place executables in the environment at the front of the path
ENV PATH="/app/.venv/bin:$PATH"

# Reset the entrypoint, don't invoke `uv`
ENTRYPOINT []

# Run the FastAPI application by default
# Uses `fastapi dev` to enable hot-reloading when the `watch` sync occurs
# Uses `--host <IP_ADDRESS>` to allow access from outside the container
CMD ["fastapi", "dev", "--host", "<IP_ADDRESS>", "src/uv_docker_example"]

Thanks, adding --frozen fixed the issue.
Working backwards, I think I now get how this happened. Originally I had --frozen --no-install-project. Which threw the original error that I pasted. Later when I replaced that with --no-install-workspace, looks like I accidentally removed --frozen.
So the solution is --frozen --no-install-workspace


0.2.0 Release?

I am trying to use the newest version of this according to the readme. I would benefit from being able to use the 'save_granular', but when i attempt to install the 0.2.0 gem, it's not able to. Is there a plan to release a 0.2.0 gem version of this anytime soon? or is this a dead repo?
Fetching gem metadata from https://rubygems.org/.. Could not find gem 'graphql_java_gen (= 0.2.0) x64-mingw32' in any of the gem sources listed in your Gemfile.

Nevermind, i see this is being managed through the buy sdk through a submodule:
https://github.com/Shopify/mobile-buy-sdk-android
Is there a way for you to update docs to show how to include this in your own project via a submodule? I basically just want the java graphql gen stuff instead of the entire buy sdk.

The steps are basically to use a git submodule (e.g. git submodule https://github.com/Shopify/graphql_java_gen.git) and to reference the submodule directory from the Gemfile (e.g. gem 'graphql_java_gen', path: 'graphql_java_gen') and the gradle build configuration (looks like mobile-buy-sdk-android does this in build.gradle and settings.gradle).

Awesome, yeah that's what im' trying right now. I initally thought this was used through jcenter as the read me states. Feel free to close this.

It can be used through jcenter and rubygems if you want the last release.
However, if you want to use the latest commit on master that hasn't been released, then using git submodules allows you to do that.

Made a 0.2.0 release


Display EOS/USDT as supported assets

/overview:

[ ] Show Assets 2
[ ] Show USDT & EOS logos
[ ] Link to CoinMarketCap

[ ] https://coinmarketcap.com/currencies/tether/
[ ] https://coinmarketcap.com/currencies/eos/

Implemented


How to use FnValue?

What is the proper way to use FnValue? If I understand it's purpose, it's the right way to avoid potentially expensive serialization when a logging statement doesn't actually log, a typical example being a debug! statement when a LevelFilter is set to reject anything below INFO level.
However, the FnValue documentation doesn't help much, all it tells us is: "Explicit lazy-closure Value". Digging into the examples reveals this: FnValue(|_ : &Record| slow_fib(40)));, so I tried my variation on that:
#[macro_use]
extern crate slog;
extern crate slog_async;
extern crate slog_term;

use std::fmt;
use slog::{Drain, FnValue, Level, Record};

struct Foo {
    value: &'static str
}

impl fmt::Debug for Foo {
    fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> {
        eprintln!("Foo::fmt = {:?}", self.value);
        write!(f, "{}", self.value)
    }
}

fn main() {
    let decorator = slog_term::TermDecorator::new().build();
    let drain = slog_term::FullFormat::new(decorator)
        .use_original_order()
        .build()
        .filter_level(Level::Debug)
        .fuse();
    let drain = slog_async::Async::new(drain).build().fuse();

    let log = slog::Logger::root(drain, o!("logger" => "root"));

    info!(log, "info"; "foo" => ?Foo{value: "info"});
    trace!(log, "trace"; "FnValue" => FnValue(|_ : &Record| format!("{:?}", Foo {value: "lazy trace"})));
}

Inside the impl fmt::Debug for Foo I perform a side-effecting println to see when it is evaluated. I would expect it doesn't get evaluated on the last trace! call that is rejected by the LevelFilter, but it actually gets called! When I run the program, I get this:
Foo::fmt = "info"
Foo::fmt = "lazy trace"
Sep 19 21:14:36.071 INFO info, logger: root, foo: info

What is going on? How can I avoid doing any work when the logging statement doesn't actually log?

The issue is a combination of Async and filtering.
All the values in immediate logging statements are borrowed, so can't be sent to a different thread as-is. Async will resolve them in-place before sending. So only owned values (ones associated with a logger, and internally Arced) will be cheaply sent to a different thread without evaluating.
If you have done filter before async, it would also work. Right now you have:
log statement -> Async == to another thread => filter -> term

what you probably want is:
log statement -> filter -> Async == to another thread => term

Async is not free, so generally, you want to filter as much as possible, before spending ~120ns sending something to another thread.


@tanstack/react-query doesn't work on iOS 13

Describe the bug
Tanstack Query v4 doesn't work on iOS 13,
According to the documentation, it is said to be supported starting with the iOS 12 version, but in reality it is not the same at all.
https://tanstack.com/query/v4/docs/react/installation#requirements
The example on the official website also doesn't run at all. There is not even an error in the console.
https://tanstack.com/query/v4/docs/react/examples/react/simple

Your minimal, reproducible example
https://codesandbox.io/s/github/tanstack/query/tree/main/examples/react/simple?from-embed
Steps to reproduce

on iOS 13 device safari, any feature doesn't work

Expected behavior
Normal operation
How often does this bug happen?
Every time
Screenshots or Videos

Platform
OS: iOS 13
browser: safari
Version: 13.7
TanStack Query version
v4.20.4
TypeScript version
v4.9.4
Additional context
No response

I'm on iOS 16 and things work fine.
one thing I could imagine is that navigator.onLine somehow returns false, making react-query think it's offline. You could check by inspecting the fetchStatus variable (fork the sandbox and print it on screen next to the loading... text).
if that says 'paused', that would explain it.

Thanks, It doesn't seem to reproduce the issue anymore, so I'm quitting for now.

one thing I could imagine is that navigator.onLine somehow returns false, making react-query think it's offline. You could check by inspecting the fetchStatus variable (fork the sandbox and print it on screen next to the loading... text).

also encountered 3 cases on Chrome Desktop returns navigator.onLine false 😅  . One of them:
macOS version:

Chrome version:


Aeron Stat analyze

0:           84,477,632 - Bytes sent
1:           84,468,320 - Bytes received
2:                    0 - Failed offers to ReceiverProxy
3:                    0 - Failed offers to SenderProxy
4:                    0 - Failed offers to DriverConductorProxy
5:                    0 - NAKs sent
6:                    0 - NAKs received
7:                2,854 - Status Messages sent
8:                  602 - Status Messages received
9:                  861 - Heartbeats sent
10:                  571 - Heartbeats received
11:                    0 - Retransmits sent
12:                    0 - Flow control under runs
13:                    0 - Flow control over runs
14:                    0 - Invalid packets
15:                    0 - Errors
16:                    0 - Short sends
17:                    0 - Failed attempts to free log buffers
18:                    0 - Sender flow control limits, i.e. back-pressure events
19:                    0 - Unblocked Publications
20:                    0 - Unblocked Control Commands
21:                    0 - Possible TTL Asymmetry
22:                    0 - ControllableIdleStrategy status
23:                    0 - Loss gap fills
24:                    0 - Client liveness timeouts
26:                    0 - client-heartbeat: 0
27:                    1 - snd-channel: aeron:udp?endpoint=<IP_ADDRESS>:4051|interface=<IP_ADDRESS> <IP_ADDRESS>:4051
28:           84,451,200 - pub-pos (sampled): 2<PHONE_NUMBER> 1003 aeron:udp?endpoint=<IP_ADDRESS>:4051|interface=<IP_ADDRESS>
29:           84,451,200 - pub-lmt: 2<PHONE_NUMBER> 1003 aeron:udp?endpoint=<IP_ADDRESS>:4051|interface=<IP_ADDRESS>
30:           84,451,200 - snd-pos: 2<PHONE_NUMBER> 1003 aeron:udp?endpoint=<IP_ADDRESS>:4051|interface=<IP_ADDRESS>
31:           86,548,352 - snd-lmt: 2<PHONE_NUMBER> 1003 aeron:udp?endpoint=<IP_ADDRESS>:4051|interface=<IP_ADDRESS>
32:                    0 - snd-bpe: 2<PHONE_NUMBER> 1003 aeron:udp?endpoint=<IP_ADDRESS>:4051|interface=<IP_ADDRESS>
33:           70,401,024 - rcv-pos: 4 664135644 1002 aeron:udp?endpoint=<IP_ADDRESS>:4050|interface=<IP_ADDRESS>
35:           70,401,024 - rcv-hwm: 4 664135644 1002 aeron:udp?endpoint=<IP_ADDRESS>:4050|interface=<IP_ADDRESS>
the report show that some fileds value is too large.
for example:snd-lmt, pub-lmt ...
i want known,why these values so large?
thanks！

How the the fields "too large"? The larger values are positions a stream has reached or has been limited to.


Pod file

develop MAC OS Program
Pod file :platform :ios, '8.0',how to write?

@qzc77
Questions like this is probably best suited for Stackoverflow. Use Github to track bugs and feature requests.
Refer this for getting started with CocoaPods


Input Data

I should construct all derived information such as lagged activity and experiences simply inside the program ... I can still output it for simulated datasets for debugging and testing purposes.

This will also make the documentation easier as we can literally use the original KW data as an example.

We want to force the user to take a clear stand on the details of the model and thus ask to pass in the full variables, these are then checked in the code again.


More Configuration Options

First of all, thanks for this excellent project!
I'm missing a specific setting (namely the max current the allowed for grid charge).  I understand that this can be seen more of a "hard configuration value" that is not really meant to be used in automations, but I found this to be the only reliable way to take full control of grid chargingwith Deye SG04LP3 (turning it off by setting this to 0, turning it on by setting it to > 0.
The corresponding modbus address is 40, the setting can be found here:

Below is the code to add the parameter, which works fine with Deye SG04LP3. However, I wasn't able to test this with the micro inverter:
diff --git a/src/deye_sensors_settings.py b/src/deye_sensors_settings.py
index 95c2e70..d91fa09 100644
--- a/src/deye_sensors_settings.py
+++ b/src/deye_sensors_settings.py
@@ -37,8 +37,18 @@ deye_settings_active_power_regulation_micro = SingleRegisterSensor(
     groups=["settings_micro"],
 )

-deye_settings_sensors = [deye_settings_active_power_regulation_default, deye_settings_active_power_regulation_micro]
+deye_settings_gridcharge_current = SingleRegisterSensor(
+    "Gridcharge current",
+    128,
+    1,
+    mqtt_topic_suffix="settings/gridcharge_current",
+    unit="A",
+    signed=False,
+    groups=["settings"],
+)
+
+deye_settings_sensors = [deye_settings_active_power_regulation_default, deye_settings_active_power_regulation_micro, deye_settings_gridcharge_current]

 deye_settings_register_ranges = [
-    SensorRegisterRange(group={"settings", "settings_micro"}, first_reg_address=40, last_reg_address=40),
-]
+    SensorRegisterRange(group={"settings", "settings_micro"}, first_reg_address=40, last_reg_address=128),
+]
\ No newline at end of file

So if you are willing to add this, please let me know and I'll create a merge request.
Should such setting be out of scope of this project: Are there any plans to enhance the plugin API so that sensors can be added as part of a plugin? Thanks!

Also added this here

Why did you close this issue? Should I ignore this change request?

Yes, I've closed this because I think this can be solved more elegantly by making DeyeModbus available to plugins, which I tried to implement here. With this, I'd be able to add my specific requirement via a plugin.


Functions as arguments of semantic actions

Would it be possible to alter args to semantic action to be functions with extra properties, or in general make them callable? It would look like this:
const semantics = g.createSemantics().addOperation('eval', {
  Exp(e) {
    return e();
  },
  AddExp(e) {
    return e();
  },
  AddExp_plus(left, op, right) {
    return left() + right();
  },
  AddExp_minus(left, op, right) {
    return left() - right();
  },
  PriExp(e) {
    return e();
  },
  PriExp_paren(open, exp, close) {
    return exp();
  },
  number(chars) {
    return parseInt(this.sourceString, 10);
  }
});

In my opinion, this looks cleaner than always repeating name of the semantic action in non-terminal node actions. The same thing applies for defining actions for ohm.extras.toAST. And it can be backward-compatible.

Hello @pdubroy,
don't worry – I am happy to see new release with TS support. :)

How would it work in the presence of multiple operations? E.g., if you had not just an eval operation, but also a prettyPrint operation? I guess one option would be that a call like left() would be shortcut for left.eval(), but you could also use left.prettyPrint() to invoke an operation other than the one that you're in.

Yes, exactly. This way it would be backward-compatible, while less verbose for single-operation semantics.

Overall my feeling is that the tradeoffs wouldn't be worth it. The current approach also has the advantage that it's explicit and easy to explain.

Totally understandable. :) Thank you for consideration.


Allow to configure serviceName

The serviceName of the tracer is set to ${spring.application.name} in JaegerAutoConfiguration. It would be great if you would allow that the serviceName can be set to a different value.
Background: Our spring application name is the same on all our environments and all environments send the traces to a single jaeger instance. As all the instances of the app on all environments have the same tracer serviceName it is not possible to configure the sampling rate for each environment. Therefore we need to set the tracer serviceName to something like ${spring.application.name}-${env}

@holledauer Please take a look at #39 and let me know what you think about it

Yes, this is exactly what i need. Many thanks!

Cool, I will merge it then and cut a 1.0.3 release.


Need a property on View that says "Ignore for Layout"

View.Visible == false has always meant "hide this view, but continue to pretend it's there when doing layout".
To enable expand/collpase in https://github.com/gui-cs/Terminal.Gui/pull/3507, I leveraged Dim.Auto and changed the layout engine to ignore views with Visible == false.  I hide the views and the superview automatically shrinks. Pretty cool.
I'm not happy with changing the behavior of Visible though as it causes other issues.
To this end, I plan on introducing a new property on View that says "Exclude this view from layout computations."
Like this:
public bool ExcludeFromLayout { get; set };

Not sure what the right name is or if this should be a bool or part of some enum.

Nevermind. This is all too complicated. I have a simpler solution that doesn't require this.


Property specific JsonConverters

Using Saule 1.8, EF 6.1.3
According to the documentation here - http://awesan.com/saule/content/4-customizing-serialization.html custom serialization can be achieved with the use of a JsonConverter. The example shown registers a global converter to the serializer. I have a use case where I would like to use a custom converter specifically on a few properties. Newtonsoft.Json provides a JsonConverterAttribute to achieve this (see https://www.newtonsoft.com/json/help/html/JsonConverterAttributeProperty.htm), but I have not been successful in getting Saule to call the WriteJson method of my custom converter (deserialization/ReadJson actually works fine).
Is this expected and is there a way to customize serialization at the property level? Thanks!

Hi @joukevandermaas . We are also experiencing the same issue. We have a custom format for date times so we use JsonConverter attribute to handle specific properties in the different way, but it doesn't work as
https://github.com/joukevandermaas/saule/blob/1f8b0a94e77b32126cf1fbacbf8626a209591a59/Saule/Serialization/ResourceSerializer.cs#L295-L299
that does
https://github.com/joukevandermaas/saule/blob/d578a65c6bdc15037bb6ba6437f661f342a7d330/Saule/ObjectExtensions.cs#L45-L49
and ignores them.
We can handle it in that method or in directly ObjectExtensions.GetValueOfProperty by checking for JsonConverterAttribute and using it if it's present and we can make PR with the actual change. But wanted to check with you, would that approach be fine with you and if not, do you have any ideas how that can be handled better? The need for us is to have a bit custom format for specific DateTime property
Thanks!

I am a little wary of this, because there are tons of JsonX attributes and I don't want to set an expectation that we support them all. It looks like JSON converters run for each property, and you could have a conditional in there. So it should be possible to add support for any custom stuff from within the converter?
Alternatively I would be OK with adding a converter from within the resource, like
var mySpecialConverter = new CustomJsonConverter();
Attribute("MyProperty", jsonConverter: mySpecialConverter);

At least then the relationship is clearly defined, and there is no confusion about which attributes are supported.
Would that work for your use-case?

It might work in our case, but we still would need to have JsonConverterAttribute over an actual property as we support both regular Json and JsonApi and in both cases we need to have different format. So to make it work for regular Json we would need to have that attribute over property anyway

Ah, I see why that would be bad. I had one other idea:
What if the JsonApiConfig allowed you to provide a callback that returned the JsonConverter instance? Like this:
new JsonApiConfig
{
    FindJsonConverter = (serializationContext) =>
    {
        // serializaztion context has values like
        // PropertyName, ModelType, ApiResource,
        // etc. so you can support any attribute
        // you need.

        return MyCustomJsonConverter();
    }
}

Ah, I see why that would be bad. I had one other idea:
What if the JsonApiConfig allowed you to provide a callback that returned the JsonConverter instance? Like this:
new JsonApiConfig
{
    FindJsonConverter = (serializationContext) =>
    {
        // serializaztion context has values like
        // PropertyName, ModelType, ApiResource,
        // etc. so you can support any attribute
        // you need.

        return MyCustomJsonConverter();
    }
}

I like binding it to the resource better then trying to add logic to the configuration to the configuration. Even though you need to add it to both the property and the resource it seems cleaner then trying to handle every thing in one spot, I feel like that could get crowded pretty quick on a larger scale.

Yea, we are having a similar issue where we need to specify a specific serialization attribute on a property of a model to be backwards compatible with application/json. To avoid coding the same things twice, it would be best to allow the developer to specify the jsonConverter on the model, and just use the value in the model in the resource during binding. That way you wouldnt need to put the same attribute for two objects.
In other words the models jsonConvert attributes get inherited by the resource, during the bind.

@joukevandermaas Yea, we are having a similar issue where we need to specify a specific serialization attribute on a property of a model to be backwards compatible with application/json. To avoid coding the same things twice, it would be best to allow the developer to specify the jsonConverter on the model, and just use the value in the model in the resource during binding. That way you wouldnt need to put the same attribute for two objects.
In other words the models jsonConvert attributes get inherited by the resource, during the bind.

@wernst I am interested to hear what your thoughts are on the above solution.

@wernst @sergey-litvinov-work @edward-rosado @joukevandermaas
I opened a PR with a possible solution, let me know if you have question or concerns. Thanks

@edward-rosado I agree that specifying the serialization rules in a single place would be better. I don't really think the resource class should be the place to define it - for support for JSON and JSON API as @sergey-litvinov-work pointed out and I've always seen the resource class's role as configuring the JSON API serialization details (links, type, etc), independent of the values of the data (@joukevandermaas is that a fair classification?).
@DtaggartMB thank you for the PR - I will take a look.

I like binding it to the resource better then trying to add logic to the configuration to the configuration.

I get this and it's fair, but I've always resisted attributes on model classes in saule because it has some implications that are quite troublesome. Mostly, I don't like requiring of coupling models to serialization logic. This can be impossible to do if your models are in a different assembly, for example.
The snippet I shared could look at the attribute and load the correct converter, so if you like you can use the JSON.NET attributes that way. It would require a one time implementation but it would be quite trivial to do.
I'm sorry I haven't looked at the pr yet, I am currently traveling. I will take a look when I am back.

@joukevandermaas its ok, I know we all get busy sometimes. @wernst @sergey-litvinov-work @edward-rosado what did you guys think?

Fixed with #238


chip-build-crosscompile:latest doesn't have libreadline-dev in aarch64 sysroot installed

When trying to crosscompile chip tool for RPI using docker image chip-build-crosscompile:latest following error occurs:
steps to reproduce:
docker run -it connectedhomeip/chip-build-crosscompile:latest
git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
source ./scripts/activate.sh
./scripts/build/build_examples.py --target linux-arm64-chip-tool-ipv6only build

2022-04-28 14:51:50 INFO    ../../examples/chip-tool/commands/interactive/InteractiveCommands.cpp:21:10: fatal error: 'readline/history.h' file not found 2022-04-28 14:51:50 INFO    #include <readline/history.h> 2022-04-28 14:51:50 INFO             ^~~~~~~~~~~~~~~~~~~~ 2022-04-28 14:51:50 INFO    1 error generated.
Proposed Solution
Updating sysroot for RPI with libreadline-dev

quick hack to fix it:
cp -r /usr/include/readline/ /opt/ubuntu-21.04-aarch64-sysroot/usr/include/


Django 2.2 support.

Refs #3008

:+1:

Apologies for a newbie question. But doesn't setup.py need to be changed as well?
Right now it is
install_requires = [
    'django>=1.11,<2.2',
    ...

@SrdjanCosicPrica No it should be adjusted indeed as well

This is however mentioned in the comment in catious_slugify and used in templates here and here. So maybe we should add |safe in the templates and update the comment?

Do we really need to add safe filter there, since slugify is not supposed to return any HTML characters?

I also saw that you added xenial to the travis configuration: Then you could also add python 3.7 as well (that works with xenial).

Ok done.

No I don’t think so, just mentioned it as an option. Then I would suggest to remove the mark_safe part in the comment.

I also saw that you added xenial to the travis configuration: Then you could also add python 3.7 as well (that works with xenial).

Ok done.

I think you should adjust tox.ini:
py{35,36,37}-django{111,20,21} -> add 22 as well
And refer to the correct tox envs in .travis.yml:
    - python: 3.7
      env: TOXENV=py36-django22

(should be TOXENV=py37-django22)

No I don’t think so, just mentioned it as an option. Then I would suggest to remove the mark_safe part in the comment.

Right. Updated.

I think you should adjust tox.ini:
py{35,36,37}-django{111,20,21} -> add 22 as well
And refer to the correct tox envs in .travis.yml:

python: 3.7
env: TOXENV=py36-django22
(should be TOXENV=py37-django22)

Ok, adjusted.

Looks fine to me, so @solarissmoke should review (and hopefully approve) your urlsafe_base64_encode implementation and then we can merge right?

Yep.


Add dependencies and steps for Debian install

Description & motivation
Encountered runtime ICU error when trying to install dbt on a clean Debian 10 VM - modified installation instructions.
Pre-release docs
Is this change related to an unreleased version of dbt?

[ ] Yes: please

update the base branch to next
add Changelog components: <Changelog>[New/Changed] in v0.x.0</Changelog>
add links to the "New and changed documentation" section of the latest Migration Guide

[ ] No: please ensure the base branch is current
[x] Unsure: we'll let you know!

pip install dbt==0.18.2 worked. Closing the pull request.


fix the link for language switching on the top page of the documentation site

📃 Ticket

✍ Description

Changed the language-switching link on the top page of the documentation site from absolute paths to relative paths, so that it works correctly in readthedocs.
Reference https://squidfunk.github.io/mkdocs-material/setup/changing-the-language/#site-language-selector
📸 Test Result

🔗 Related PRs

Discard this PR because it was based on the main branch


Create LICENSE

Enable license reading by tools

Added in https://github.com/jspm/nodelibs-buffer/commit/c600072c9b867b95ea629bb436277d2e9ad3737e.


Support for alsa mixer

Following up from @joerg-krause's work from https://github.com/plietar/librespot/pull/160 (#45)
Have finally found time to better understand (by just a little) the alsa hardware parameters  (snd_pcm_hw_params_t) and get this working with the latest version of the alsa-rs crate.
What remains to be done is passing the mixer/card/index parameters in. I currently cheat and use environment variables, but will polish it up based on what would work best.
Have exposed some new mixer-name, mixer-card and mixer-index run time flags.
Also - let me know if you see gaping holes in the arithmetic for the conversion

@sashahilton00 I have a personal branch that I have made more progress with it.
It additional implements the cubic volume mapping that alsamixer implements as an option using snd_mixer_selem_get_playback_dB along with supporting proper muting via snd_mixer_selem_get_playback_switch
However - I had to make some specific adjustments for a 32bit kernel - I haven't tested it with a 64bit one.
Small heads up - cross compiling this with the current docker images will fail - I shall open up a new PR to fix those issues once this is merged.

@ashthespy just getting travis to rerun after recent merges, if all goes well will merge. Could you update the wiki with the new CLI arguments and their values that you added, then ping me once done, then will merge.

Sorry @sashahilton00 I forgot to look at the mixer part of this. I can do later today if that's still helpful.

Also would be nice if people could test it!

That's part of a PR review, I hope...!

@kingosticks if it builds it must be good right? 😛 if you could test it that'd be great, i'm just looking at the code and testing build on osx to make sure things are ok, and making sure travis isn't complaining too much. @ashthespy yeah, don't worry about it. have bumped min version to 1.23.0, but travis doesn't pull master on recompile to check PR, so bump in .travis.yml didn't affect rebuild.

If I do '--mixer Alsa' I get "

thread 'main' panicked at 'Invalid mixer', libcore/option.rs:916:5

Am I using it wrong?

My comment is regarding the cur_vol line. You only need that in one case, its a waste of time in the other.

And a slight issue I see with just the alsa backend stuff (not mixer) is underrun messages at the start of every song. Doesn't seem to cause any actual problems though:
INFO:librespot_playback::player: Track "Modern Misery" loaded
ALSA lib pcm.c:8306:(snd_pcm_recover) underrun occurred
ALSA lib pcm.c:8306:(snd_pcm_recover) underrun occurred
INFO:librespot_playback::player: Loading track "WASTED SPACE" with Spotify URI "spotify:track:2jdGOeIjQNuPXx8rml1FkX"
INFO:librespot_playback::player: Track "WASTED SPACE" loaded
ALSA lib pcm.c:8306:(snd_pcm_recover) underrun occurred
INFO:librespot_playback::player: Loading track "Cusp of Eternity - Live" with Spotify URI "spotify:track:4iV75jMB357AWuXCqhlQj5"
INFO:librespot_playback::player: Track "Cusp of Eternity - Live" loaded
ALSA lib pcm.c:8306:(snd_pcm_recover) underrun occurred

I don't get a message each time with 11025 but it doesn't stop them entirely. And am I being dense here, if there's an under-run don't we need a larger buffer?!

iirc also underruns when the buffer isn't full? i.e. The buffer isn't filling up, so one shrinks the buffer so it is full more often? Not too familiar with the workings of it.

@sashahilton00, underruns are only when the buffer is empty.
@ashthespy, my test here was only changing track, no pausing (and no cache either). So yes, only underruns initially and if the start_threshold was larger it should fix it. However, a faster system should also be writing data into the buffer quicker so it doesn't make sense to me yet why I'd run out. Unless the default start_threshold is driver dependent and my system sets it lower than yours?

My sw params are:
avail_min: Ok(220) frames,
start_threshold: Ok(1) frames,
stop_threshold: Ok(22050) frames

So doesn't this mean it's going to start playing as soon as we do the first write, which isn't great. And when I get the underrun I'm seeing it wrote only 128 frames instead of the usual larger number (between 576 and 1472). Seems like I need to set a more sensible start_threshold. What values were you getting on your testing @ashthespy ?

@kingosticks  Could you test with this snippet?
{
        // Set hardware parameters: 44100 Hz / Stereo / 16 bit
        let hwp = HwParams::any(&pcm)?;
        let swp = pcm.sw_params_current()?;

        hwp.set_access(Access::RWInterleaved)?;
        hwp.set_format(Format::s16())?;
        hwp.set_rate(44100, ValueOr::Nearest)?;
        hwp.set_channels(2)?;
        hwp.set_buffer_size_near(22050)?; // ~ 0.5s latency
        swp.set_start_threshold(hwp.get_buffer_size().unwrap() - hwp.get_period_size().unwrap())?;
        pcm.hw_params(&hwp)?;
        pcm.sw_params(&swp)?;
    }

@kingosticks and @ashthespy please test and confirm everything is working as expected. I think we're more or less ready to go, unless you guys think we shouldn't be crashing when mixer not found?

The crash when there the mixer has no mono channel is still an issue. Need to investigate that one. I'm guessing it's when the volume can be changed for each channel independently which doesn't sound unusual so worth fixing.

The crash when there the mixer has no mono channel is still an issue. Need to investigate that one. I'm guessing it's when the volume can be changed for each channel independently which doesn't sound unusual so worth fixing.

Does it crash with "Couldn't find SelemId" or "Couldn't get current volume" - because we don't explicitly do any channel stuff while selecting the selem. The only place where channels are used is to get the current volume - there we use mono which is anyway an alias for front-left

My original message was accurate, it crashes with "Couldn't find SelemId", and you are right, that's before channels come into it. Sorry for that red herring. Also didn't realise about the alias. I wonder why it doesn't like my work computer's PCM control. I'll test on some more hardware here today and see what I get.

@ashthespy @kingosticks just ping me when you think we're good to go, sadly I don't have a linux box setup at home atm

Will do. Apologies I didn't get time this week to try any more hardware but I will see what I can do in the next couple of days.

@kingosticks any chance to test yet?

Bump on this. New option flags could be great for some users who have been having trouble with raspotify working with non-default devices. Thanks!

It would be nice if some more people would get involved testing/reviewing it.

I'm running this on my Orange Pi Zero for about a month now and it works without any problems. Please merge.

@ashthespy Let me dig this branch up next week and finally finish that review. I think we only had the mixer bit left.

@kingosticks Yep, mixer bit is indeed left - once this is merged, I have a few more tweaks lined up for the volume mapping b/w alsa and Spotify.

There is talk in https://github.com/librespot-org/librespot/pull/277#issuecomment-470589137 that a Rodio backend would make the others (including this?) redundant. Where do we stand on that?

There is talk in https://github.com/librespot-org/librespot/pull/277#issuecomment-470589137 that a Rodio backend would make the others (including this?) redundant. Where do we stand on that?

My 2 centss - while Rodio takes care of the sink implementation, AFAIK it doesn't expose direct control of the mixer? This is something of lacking currently when librespot is used on SBCs à la raspotify and the other Audio OSes.
I'd propose keeping Rodio as the default sink once its ironed out, but leaving the alsa mixer for such use cases.

@ashthespy @kingosticks the rodio backend ended up not changing the backend architecture just yet. If you're happy that this works and it's been sufficiently tested, we can merge it.

From my side it's been running quite well for months now - I would propose merging it now and once it's merged I will add the other patches I have on my other branch. What do you all think?

I'm not doing very well at checking this branch out with all the Cargo.lock conflicts. I don't suppose you could resolve those, could you?

I just rebased this on master and force pushed - hopefully all goes well now!

So I needed to install pkg-config as it isn't part of build-essential. The docker files will probably need updating with that.
I'm on a different machine to the one that crashed before and this one works fine. I think the best way to iron those out is to get more people using it, i.e. merge it.
One small nit-pick is the panic when you specify the wrong --mixer-name is a bit harsh since it's quite scary looking and really easy to get wrong. Ideally that should have a more friendly error message but I appreciate that's just fine-tuning we could do later.
LGTM.

So I needed to install pkg-config as it isn't part of build-essential. The docker files will probably need updating with that.

yep https://github.com/librespot-org/librespot/pull/245#issuecomment-430247445

One small nit-pick is the panic when you specify the wrong --mixer-name is a bit harsh since it's quite scary looking and really easy to get wrong. Ideally that should have a more friendly error message but I appreciate that's just fine-tuning we could do later.

This is something we have to revamp across the board - do we panic for such things or display an error and exit? I recall there were some different opinions, stating a library shouldn't exit.

You are of course totally right. No exits belong in here and the real fix is a more fundamental one.
Maybe a few usage examples added to the wiki would be helpful.

@sashahilton00 Can we merge this?

@ashthespy go for it.
On 24 March 2019 at 09:47:35, Ash<EMAIL_ADDRESS>wrote:

@sashahilton00 https://github.com/sashahilton00 Can we merge this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/librespot-org/librespot/pull/245#issuecomment-475939926,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AD_dEiK3MEwE_Qg_nEBc64YPL5pQpGa4ks5vZzungaJpZM4Wb3QQ
.


Add script location

Script location was missing from cadence locations.

Codecov Report

Merging #26 (ee8ba86) into master (9933c7d) will decrease coverage by 0.03%.
The diff coverage is 48.57%.

@@            Coverage Diff             @@
##           master      #26      +/-   ##
==========================================
- Coverage   77.11%   77.08%   -0.04%
==========================================
  Files          26       26
  Lines        1442     1475      +33
  Branches       83       88       +5
==========================================
+ Hits         1112     1137      +25
- Misses        313      320       +7
- Partials       17       18       +1

Flag
Coverage Δ

unittests
77.08% <48.57%> (-0.04%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

flow_py_sdk/cadence/location.py
54.11% <47.05%> (+4.48%)
:arrow_up:

flow_py_sdk/cadence/__init__.py
100.00% <100.00%> (ø)

flow_py_sdk/cadence/address.py
86.66% <0.00%> (+3.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 9933c7d...ee8ba86. Read the comment docs.


Service Item Line "Document Type" should be Enum

Describe the bug
ServiceItemLine.Table.al
Document Type = Option
ServiceHeader.Table.al
Document Type = Enum
Assignment of one document type to another one triggers AL0603 warning
To Reproduce
Steps and to reproduce the behavior:
var
ServHeader: Record "Service Header";
ServItemLine: Record "Service Item Line";
ServItemLine.Init();
ServItemLine."Document Type" := ServHeader."Document Type";
ServItemLine."Document No." := ServHeader."No.";
Expected behavior
No AL0603 warning
Screenshots

5. Versions:

AL Language: 5.0.254558

Business Central: Version: US Business Central 16.0 (Platform 16.0.11233.12078 + Application 16.0.11240.11946)

Hi! Welcome to the AL repository! Please take a minute to familiarize yourself with the purpose of this repository https://github.com/microsoft/AL/blob/master/README.MD and with the FAQ https://github.com/microsoft/AL/wiki/Frequently-Asked-Questions .
We believe that the issue you have opened is outside the scope of this repository. Please open it in the correct repository.


Is mining only when user is IDLE?

Is mining eth only when user is idle? I put max cpu usage 100 and idle 100
i put ON Idle Mining
So is mining only IDLE or active user is mining too?

When you have "Idle Mining" on it will mine at the "Max GPU" percentage while the computer is being used and will mine at the "Idle GPU" percentage when the computer isn't being used. If you want it to only mine when the computer isn't being used then set the "Max GPU" to 0%.


what packages do you have installed for this to work

Please see https://github.com/ttlequals0/autovpn/blob/master/README.md


fixFix auto analyze remove finished job bug.

Finished job must be removed from the job list, otherwise the next batch of jobs will not be scheduled.

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall