Native non-HWE images

Is your feature request related to a problem? Please describe.
Mandating that Ubuntu images all have the HWE kernel is problematic for supporting applications that are kernel specific.
Describe the solution you'd like
Provide a non-HWE version of the images.
Describe alternatives you've considered
It is manual and tedious and seems to change with different versions of Kairos to create non-HWE images outside of the repo buildstream.  For example, now all Ubuntu versions are combined into a single Dockerfile which means retooling for those that were building custom images if we want to move forward.
Additional context
Non-HWE images should be provided as an option.  Not everyone wants the latest and greatest especially when using LTS in a stable environment

@3pings also, which kairos version is being used?

I'm guessing for the package linux-image-generic would be ok. Gautam mentioned that this would be needed only for the LTS and Saad said that they have a workaround and it is ok for this to ship on 2.4.0

Releasing and testing 2 extra Ubuntu images that only differ by the kernel will be a bit too much for our pipeline, we're already experiencing issues because of all the different versions we release. I would not want to just add them, or swap the existing ones with non-hwe kernels since it seems like a positive feature to have.
Currently we are working on the BYOI which should make the process of converting a certain image into a Kairos image a lot easier, and I guess this is the best solution to address this issue, however it will most likely not be ready for 2.4.0.
In the meantime, an alternative could be to add the two extra flavors ubuntu-20-lts-non-hwe and ubuntu-22-lts-non-hwe but without adding them to our pipelines, so they can be build manually or add to an external pipeline the way we do ours but without having to play with the original Dockerfiles. WDYT? @kairos-io/maintainers @3pings

I agree that supporting all the different configurations in the main kairos pipelines doesn't scale. Forking kairos and tweaking the pipelines a bit to get another flavor built is easy and things will become even easier when we make some more progress with the "factory" epic lane.

A flag was added so you can now build non-HWE images as follows:
earthly +all --FLAVOR=ubuntu-22-lts --HWE=-non-hwe

This can be used for both LTS versions 20 and 22.
I'm closing this ticket, but you are welcome to re-open if there's something else needed.


you can move lines in a fresh sketch from Start Sketch and it updates the code (more than once)

I would probably resolve this issue and the task you can move lines in edit sketch and it updates the code (more than once) also in #833 in the same test, but could also be separate,
Read through the playwright section of the readme to cover the basics.
The start of the test should probably look like:
test('Basic sketch', async ({ page }) => {
  const u = getUtils(page)
  page.setViewportSize({ width: 1200, height: 500 })
  await page.goto('localhost:3000')
  await u.waitForAuthSkipAppStart()
  await u.waitForDefaultPlanesVisibilityChange()
  // ...
})

This one is probably challenging because it involves interacting with the stream quiet a bit, but you can probably draw a fair bit of inspiration from Basic sketch in e2e/playwright/flow-tests.spec.ts because it also interacts with the stream.
But also here's a snippet from change camera, show planes in e2e/playwright/snapshot-tests.spec.ts
  await u.closeDebugPanel()
  await page.mouse.move(700, 200)
  await page.mouse.down({ button: 'right' })
  await page.mouse.move(600, 300)
  await page.mouse.up({ button: 'right' })

  await u.openDebugPanel()
  await u.waitForCmdReceive('camera_drag_end')

Which might be useful since it's a click and drag event which you'll have to do for move, though I think camera_drag_end is likely to be different (it is I've since checked 👇).
https://github.com/KittyCAD/modeling-app/assets/29681384/4974e345-ff99-48ef-9814-e529514f712e

im pretty sure we've covered this by now we have lots of similar tests ive seen


Fix: Failing test in data_modules(dp)

What does this PR do?
Fix: Failing test in data_modules(dp)
Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified
[ ] Check that target branch and milestone match!

Did you have fun?
Make sure you had fun coding 🙃

@kaushikb11 can you do the same for https://github.com/PyTorchLightning/pytorch-lightning/blob/master/tests/models/test_restore.py#L211 thanks :)

Hi @williamFalcon, could you review this?


Zooming in with X axis as time with FixedScaleAxis shows out of bounds data on the edge on bar charts

I have a set of data that I need the ability to zoom in and out of the chart. For this reason I have to use a FixedScaleAxis for the X axis in order to manage the resizing of the start and end points.
This works fine with a line graph. However when using a bar graph what I observe is that there is a "collection" of bars to either side of the graph. Looking at each SVG element I can see that if the data from the series is before the low value then a bar is rendered with x1 and x2 of 50. If the data is after the high then another bar is rendered with x1 and x2 with the value corresponding to the edge of the chart, such as 189.
In my test code at https://jsbin.com/ruxogim/edit?html,css,js,output tapping on the zoom in button should be displaying the data from midnight 14th December 2019 to midnight 16th December 2019, which is two values. The two values are displayed but with a pillar of 16 to the far left and a pillar of 12 to the far right, representing the highest value either side of the range.

Hello @ismith78 👋
Chartist has recently been updated to version 1.0 with some new exciting changes like ESM and TypeScript support. The migration guide can be found right here.
Please let me know if the issue is still relevant to you so we can further investigate it!


clustermesh: hide misleading logs about service resolution

9f5a82aba625 ("clustermesh: use custom dialer for service resolution") configured a custom dialer to perform service resolution when the etcd address refers to a local service (mainly in the kvstoremesh case).
Yet, the custom dialer function outputs quite verbose log messages, which can be misleading when the address does not point to a local service (as it is correct that the address cannot be parsed). One example being:
level=error msg="Unable to parse etcd service URL" error="parse \"<IP_ADDRESS>:2379\": first path segment in URL cannot contain colon"

Hence, let's hide them passing a NopLogger, as they do more harm than good in this specific situation.

Hide misleading log messages about service resolution in clustermesh

/test

Is there any chance that this will hide useful error messages as well? Should we re-enable logging if debug mode is on?

Is there any chance that this will hide useful error messages as well? Should we re-enable logging if debug mode is on?

I'm a bit doubtful as well. That function currently emits four log messages depending on the conditions:

Unable to parse etcd service URL (error level): this is definitely misleading and should never be emitted in this context, given that for instance IP addresses are valid target addresses.
Unable to parse etcd service URL into a service ID (debug level): could not convert the address into a service name (it should never happen unless the address has no dots).
Service not found in the service IP getter (debug level): could not find the given service (this can again happen in many legitimate cases if the address looked like a service name but it was not);
custom dialer based on k8s service backend is dialing to %q (debug level): shows the actual address which is being dialed.

An alternative could be to add a flag to silence the first three types of messages and keep only the last, to know the actual target and spot possible issues. WDYT?

It would be ideal to log - somewhere - the actual IP to which we're connecting, especially since there is some amount of magic going on. But I wouldn't consider that a blocker -- your call.

It would be ideal to log - somewhere - the actual IP to which we're connecting, especially since there is some amount of magic going on. But I wouldn't consider that a blocker -- your call.

I updated that function to allow silencing the error messages, while preserving the one which shows the target address (at debug level). While being there, I also updated the custom dialer to propagate the given context. @squeed PTAL.

/test

I'd like to propose an alternative solution. We should be using valid URLs in any cases where this error message is popping up. Adding a scheme (http://, https://) to the string will allow these to parse as expected, and this is the type of value which is used in the etcd docs.
Go Playground example: https://go.dev/play/p/OJB_oM5PQGO

I'd like to propose an alternative solution. We should be using valid URLs in any cases where this error message is popping up.

Yeah, the dialer is passed the address without the scheme, although it was originally present. We could probably prepend a fake scheme while doing the translation to silence it (although it wouldn't change anything in terms of the final result). I'm still personally in favor of this change, as also the other log messages pointing out failures (although at debug level) might be misleading (as also possibly repeated multiple times). WDYT?

@giorio94 considering the service IP lookup, it makes sense to me on second look


Not Saving

So my friend gave me a locomotive, I saved it. Later  I decided  to add some props to it and parented them. And when I tried to save it, it said, "File was not Saved!"
HELP ME PLEASE!!!!1

Got the same problem but for me it says "File could not be read"

There's no way to fix this without more information or example dupe.


How can I deduplicate sent messages?

Used SendMessage and SendMedia dont have random_id argument. Why is it like this? What are the other ways I can deduplicate sent messages? And is it ok to use MTProto API as a bot for this functionality?

The random_id isn't exposed for bots, because It is highly unlikely that they will be able to use random_id correctly, which requires a thoughtful usage of a cryptographically secure pseudorandom number generator. You can control a bot through MTProto API, if you don't use the Bot API server and has logged out all other bot instances.

You said about logging out all bot instances, does it mean I can't use 2 connections from different machines to the same bot?

No, a bot can be logged in only once to function correctly.

If other sessions are never used after some time, then they shouldn't harm, but it would be bad to constantly switch between different sessions. Hence, other sessions should be logged out.

I think it would be really useful if bot server support this. Many other APIs support this feature. Random ID can be either hash of message, or of incoming data. Or if our bot stores reply in DB before sending it to bot api, it can be stored in our db or be actual message id from our side.
related to #126

Would not it be possible to expose it as an optional parameter for people confident that they will be able to use it correctly?

No. But if you are sure that you can use it correctly, then you should be able to add a very small patch to TDLib and the Bot API server, allowing to receive random_id from the external request.

Thanks, will do!

@faucct
Just add random_id to td_api::messageSendOptions and process it in the same way as other options.


Feature Request: Support for Delta Metrics

I've raised an issue semi related to this against the Opentelemetry-dotnet however it would make sense for this conversion to have support for Delta Type metrics as well as cumulative since Influxdb is happy storing/Querying both.
My specific issue is that the dotnet package for Opentelemetry only seems to send Delta to metrics right now which is making it very hard for me to consume these metrics via Telegraf since Delta metrics are dropped, but i think theres merit to 'fixing' both ends of this use case:
https://github.com/open-telemetry/opentelemetry-dotnet/issues/2290

@jacobmarble would you be interested in a PR for this issue in otel2influx?

Closed by #245 . Thanks @garry-cairns !


1884 Feature/forecasting donations

Resolves 1884
Description
Forecasting for Donations

Add Donation on forecasting sidenav
Use highcharts
Modified the line items itemizable_type to Donation

Screenshots

Looks like there is a failing test and a couple rubocop violations. Other than that is looks great!

Actually, I do have one piece of feedback. Can we move the sidenav item down below the reporting and auditing item?


Add display missions

Hello @Estete9  ,
I have completed the implementation of the missions display feature in the application. Please review this pull request and consider merging it into the 'develop' branch.

I used useSelector() Redux Hook to select the state slices and render lists of  missions in corresponding routes. i.e.:

// get rockets data from the store
const rockets = useSelector(state => state.missions);

I can style the whole application "by hand" or you could use React Bootstrap, a UI library that could speed up the process. This is a popular library and working with its components would be good practice. (In this case im not used it).
Render a table with the missions' data (as per design).
I created a new MissionList.css file for the route.

Done, thank you @Estete9 for you review 👍😄


Update gvl.json to version 20

Closes N/A
Description Of Changes
New vendor list is released weekly. For this release, we have a hardcoded gvl.json file.  In a future release, we will be using live updates and get rid of this hardcoded piece.
Code Changes

[ ] list your code changes here

Steps to Confirm

[ ] list any manual steps for reviewers to confirm the changes

Pre-Merge Checklist

[ ] All CI Pipelines Succeeded
Documentation:

[ ] documentation complete, PR opened in fidesdocs
[ ] documentation issue created in fidesdocs

[ ] Issue Requirements are Met
[ ] Relevant Follow-Up Issues Created
[ ] Update CHANGELOG.md
[ ] For API changes, the Postman collection has been updated

Thanks for the prompt review Allison!


Only Square Gallery Layout Is Working

The only layout type I can get working is Square Gallery. All the other layouts produce 0 width images/containers. I am installing via js files directly from master branch, and I've also tried using js files from the @ecodev/natural-gallery-js npm package. I am testing in a pretty empty shim html file.
Here's my gallery element:

Here's how I am initializing:
`    window.addEventListener('load', function() {
    // Get reference of gallery container
    var elementRef = document.getElementById('gallery');
    var options = {
        rowHeight: 400,
        ratioLimit: {
            min: 0.5,
            max: 2
        }
    };
    // Init gallery according to wanted format
    var gallery = new NaturalGallery.Natural(elementRef, options);

    // Init the gallery
    gallery.init();

    var items = [
        {
        thumbnailSrc: "earth.jpg"
        },
        {
            thumbnailSrc: "sun.jpg"
        },
        {
            thumbnailSrc: "tomato.jpg"
        },
        {
            thumbnailSrc: "mountain.jpg"
        },
        {
            thumbnailSrc: "moon.jpg"
        },
        {
            thumbnailSrc: "shoe.png"
        },
        {
            thumbnailSrc: "pony.png"
        }
    ];
    gallery.setItems(items);
}); `

Thanks for you feedback. I'll check to be sure is will be more understandable in the future.


WSL Cannot open display

Is your feature request related to a problem:
I'm trying to launch a graphical application. But I get the error: "cannot open display". I tried to take the steps from this article(https://github.com/microsoft/wslg/wiki/Diagnosing-"cannot-open-display"-type-issues-with-WSLg), but the error still remained.

Describe the solution you'd like:
I want to find a way to open the display and launch a graphical application.
Describe alternatives you've considered:
Steps from the article(https://github.com/microsoft/wslg/wiki/Diagnosing-"cannot-open-display"-type-issues-with-WSLg)
Additional context:
No response

My student with AMD processor has the same problem.

Well, my student has the same problem on his notebook, we are trying to fix it. If we find it, we post here.

Hello, I'm having the same problem with terminal. I hope there's a solution to fix this problem.


Fix syntax error in hockey code sample

          1 Warning

:warning:
Please provide a changelog summary in the Pull Request description @KrauseFx

  Generated by :no_entry_sign: Danger


Version 1.0.0 with Nx 19

Hi,
The dev is finish for both plugins nx-maven and nx-gradle. I am working now to make the plugins stables and provide improvement.
The plugins will not contains linters because there is many options, and i am documenting the integration. If you have a question just open a new issue.
I am planning to release version 1.0.0 with Nx 19.

would be great to start adding migrators with v1.0.0

Version 1.0.0 published


[WFLY-15228] Un-exclude testsuite/integration/basic tests from the -D…

…ts.ee9 profile that can now pass
Follow up to the initial fix for https://issues.redhat.com/browse/WFLY-15228

Closing as it's superceded by #14680


Ability to control the order the symbols appear in the legend during creation

Input from Karen B
Spencer: "we'd need either a setting that dictates the symbol order or a data-driven symbol code that sorts them"

config.eventTypes is a setting that expects an array of strings that dictates the order of the events as well as which events appear in the initial view.

Test notes:

Specifiying a list of event types in config.eventTypes results in the renderer filtered on those event types and those event types appear first in the legend.

Added an issue to define a JSON schema so we can get this renderer in CAT.

Tested and passed in all browsers


Bug: Path icons are sometimes blurry

What feature or improvement do you think would benefit Files?
Changing this icon to something more like the other one provides a more coherent and design across the app
Requirements

Change the icon because first it is not displayed correctly and it looks bad and second because it is a bit off compared to the other ones

Files Version
<IP_ADDRESS>
Windows Version
10.0.26020.1000
Comments
No response

Thanks for the report, are you talking about the list view icon being blurry?

yes for exemple and not scaled proprely comapred to the other ones

Thanks for the report, this issue comes down to the way XAML renders path icons and affects more than just the List View icon. For example, on my device it's the Details View icon that renders poorly, and List Layout is fine.

Okay ! but i think it is still a bit too big compared to the others but idk

I'll keep this open for now to track if there is any progress, but it might need some fixes from WinUI. We've tried different ways of rendering the path icons (with canvas, view box etc) but so far we haven't found any way that scales properly.

@Fefedu973 what is the scale setting for your display?

100%

Thank you for your feedback, this is a regression in the way WinAppSdk renders path icons. We'll keep looking for a workaround, but we encourage you to report this in the WinUI repository so they can take your feedback into account. https://github.com/microsoft/microsoft-ui-xaml
An easy way to repro the regression is to follow these steps

Set screen scaling to 175%
Add this xaml to a blank page and compare WinAppSdk to UWP

<Canvas
    Width="28"
    Height="28"
    HorizontalAlignment="Center"
    VerticalAlignment="Center">
    <Path
        x:Name="Path1"
        Data="M5.25 10C4.55964 10 4 10.5596 4 11.25V15.75C4 16.4404 4.55964 17 5.25 17H9.75C10.4404 17 11 16.4404 11 15.75V11.25C11 10.5596 10.4404 10 9.75 10H5.25Z"
        Fill="white" />
    <Path
        x:Name="Path2"
        Data="M12 11.25C12 10.0074 10.9926 9 9.75 9H5.25C4.00736 9 3 10.0074 3 11.25V15.75C3 16.9926 4.00736 18 5.25 18H9.75C10.9926 18 12 16.9926 12 15.75V11.25ZM5.25 10.5H9.75C10.1642 10.5 10.5 10.8358 10.5 11.25V15.75C10.5 16.1642 10.1642 16.5 9.75 16.5H5.25C4.83579 16.5 4.5 16.1642 4.5 15.75V11.25C4.5 10.8358 4.83579 10.5 5.25 10.5Z"
        Fill="Black" />
    <Path
        x:Name="Path3"
        Data="M14.75 10.5C14.3358 10.5 14 10.8358 14 11.25C14 11.6642 14.3358 12 14.75 12H24.25C24.6642 12 25 11.6642 25 11.25C25 10.8358 24.6642 10.5 24.25 10.5H14.75Z"
        Fill="Black" />
    <Path
        x:Name="Path4"
        Data="M14.75 14.5C14.3358 14.5 14 14.8358 14 15.25C14 15.6642 14.3358 16 14.75 16H21.25C21.6642 16 22 15.6642 22 15.25C22 14.8358 21.6642 14.5 21.25 14.5H14.75Z"
        Fill="Black" />
</Canvas>

@Fefedu973 this has been confirmed to be an issue in the WinUI framework and I opened an issue on their GitHub repo https://github.com/microsoft/microsoft-ui-xaml/issues/9338. Please consider contributing to the conversation by sharing with Microsoft how this issue impacts your experience with the Files app.


[Marker.io] Can we make this image static please?

We need to regionalise this. Can we make it static please without the drag feature (Sorry i didn't realise it had this functionality)

Reported by: Holly Anthony<EMAIL_ADDRESS>- Contact via Marker.io
Source URL: https://wf-b.stg.prezzee.com/en-us/smart-card
Issue details: Open in Marker.io
Device typedesktopBrowserChrome <IP_ADDRESS>Screen Size2048 x 1152OSOS X 14.7.1Viewport Size2037 x 941Pixel Ratio@2x

🤖 Marker.io bot - This issue was marked as ✅ Resolved in Marker.io


Change from absolute color to scss varaible

Minor fix to adapt card's background to use the theme background variable instead of using an absolute value.

Sounds good!

Thank you for the quick merge.


RecordBatch From StructArray Silently Discards Nulls

Describe the bug

To Reproduce

#[test]
fn test_from_struct() {
    let s = StructArray::from(ArrayData::new_null(
        &DataType::Struct(vec![Field::new("foo", DataType::Int32, false)]),
        2,
    ));

    let batch = RecordBatch::from(&s);
    assert_eq!(batch.column(0).null_count(), 2);
}

Expected behavior

The above should fail
Additional context

Hi, do we expect a failure something like =>  left = 0 and right = 2 assertion failed: (left == right) so should we expect an empty batch from RecordBatch::from? Could you please elaborate more so that maybe I can take it? Thanks for your time and answer in advance.

There is already a PR to fix this, I just accidentally linked the wrong issue :sweat_smile:

There is already a PR to fix this, I just accidentally linked the wrong issue sweat_smile

Ah okay, thank you for your swift response :smiley:

label_issue.py automatically added labels {'parquet'} from #3953


Karknu/mux

Initial implementation of multiplexing of Miniprotocols over TCP sockets.

If we would like to change the fairness policy to make one of the protocols with a higher priority (ChainSync) it will be difficult with this approach, since here is is govern by the RTS.  Is this a limitation? Do we need a more flexible scheduler? @dcoutts what's your point of view?

@coot Adding strict priority would be easy, with the drawback of starvation between priorities.
Instead of one common scheduling queue we would have one queue per priority. mux would check each queue in priority order until it got to one with a wanton and then process it.

bors +r

bors r+

@karknu does bors works already? I think we need to wait for #80

it seems it does :)


GPX.writeFeatures mess up ele and time

Describe the bug
When writing features to GPX, time property (time: "2003-05-25T00:00:00") become<PHONE_NUMBER> node in output gpx and ele property are ignored. Time node in gpx will be: NaN-NaN-NaNTNaN:NaN:NaNZ
It happens both 5.3.3 and 6.0.0-beta.15
To Reproduce
import GPX from 'ol/format/GPX'
// validate, that time and ele property exists
console.log(fset[0].get('time'), fset[0].get('ele'))
const string = new GPX().writeFeatures(fset)
console.log(string)

Codepen: https://codesandbox.io/s/drag-and-drop-h67js?fontsize=14
Drop gpx file with waypoints. Click to features on map to mark them for export. Press export to download file. In downloaded file, route points contain ele nodes with unix timestamp values from time attribute. Weird thing is, that for me, also waypoints time and ele are messed up, in codepen they are not.
Expected behavior
Well, ele property should match to ele node and time property to time node on wp, rtept, trkpt

Thanks for reporting and the example!
I tried the example with this gpx file: https://openlayers.org/en/latest/examples/data/gpx/fells_loop.gpx
It exported the date correctly:
<?xml version="1.0" encoding="utf-8"?><gpx xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd" version="1.1" creator="OpenLayers"><wpt lat="42.44729799999999" lon="-71.121447"><ele>127.7112</ele><time>2001-06-02T03:26:58Z</time><name>5156</name><desc>5156</desc><sym>Dot</sym><type>Intersection</type></wpt></gpx>

I checked the imported features and the ele and time properties are actually stored as the third and forth elements of the coordinate array of the geometry. I don't know if this is the most intuitive behaviour and why it is implemented this way. I think it might be better to write and read this values from the feature.

@tschaub, @ahocevar we probably would accept a pull request here?

Is this maybe because waypoints could have different times but would not all be converted to features but to one LineString?

I think the least that could be done here is to improve the documentation. And that time is written as NaN-NaN-NaNTNaN:NaN:NaNZ if not provided should be fixed.

Maybe at least using the current time there would be nicer - or omitting the <time> node if gpx allows for that.

If waypoint do not contain ele tag, ol write time as third element in coordinates array. This is bug for sure. For example geocaching.com exported gpx do not contain elevation. Waypoints are always converted to Points. Route and Tracks are converted to Linestrings.

Yes you are right: time and ele are optional (See https://www.topografix.com/gpx/1/1/#type_wptType)
So this would need to get handled correctly.

Can ol handle coordinates in form [x, y, null, null]? Would it be solution here? It is true, that storing elevation and time as feature attributes works only for waypoints.

i put together a little fiddle to play around with GPX:
https://codesandbox.io/s/gpx-cs4bo
I used undefined, it actually seem to work quite ok.
If any element is not set it will not get written. Can you provide a the geometry of a feature so it actually writes NaN-NaN-NaNTNaN:NaN:NaNZ to the time node?


Add positional isAscending to sortedBy

sortedBy is one of the best extensions of dartx.
SortedList class allows us to sort, and uses the internal order int to decide whether it is ascending or not.
This PR simplifies this process so we can simply decide it based on isAscending positional boolean in the sortedBy extension.
This is useful, because without it, we would have to do additional operations bringing either more boilerplate or additional computations. By adding this positional boolean we can make it straightforward.

Added tests ✅
Retrocompatible ✅
Not a breaking change ✅

What's wrong with sortedByDescending()?

Imagine you have manage a state like table sorts.
Today we have to do something like this:
    final classes = isAscending
        ? context.watch<ClassStore>().classes.sortedBy(
              (clazz) => switch (sortType) {
                ClassSort.name => clazz.name,
                ClassSort.code => clazz.code,
                ClassSort.createdAt => clazz.createdAt.toString(),
              },
            )
        : context.watch<ClassStore>().classes.sortedByDescending(
              (clazz) => switch (sortType) {
                ClassSort.name => clazz.name,
                ClassSort.code => clazz.code,
                ClassSort.createdAt => clazz.createdAt.toString(),
              },
            );

Or look for other solutions, like reverse the list, which requires even more computations.
isAscending is a really common state variable, and have them in sortedBy() as a positional or named parameter simplifies this by a lot.
In DataTable widget, for example, we have the DataColumnSortCallback that returns the isAscending boolean, which makes it even more straightforward and intuitive.
Ex:
    final classes = context.watch<ClassStore>().classes.sortedBy(
          (clazz) => switch (sortType) {
            ClassSort.name => clazz.name,
            ClassSort.code => clazz.code,
            ClassSort.createdAt => clazz.createdAt.toString(),
          },
          isAscending, // <- with `isAscending`
        );

This would make the current sortedBy even more flexible and seamless with Flutter. And there are no drawbacks for the current users.

Especially, when your sort order can be changed, you should use sortedWith and not sortedBy/sortedByDescending as those will produce more code which can be avoided by reversing the Comparator.
List<Clazz> doSort(List<Clazz> classes, ClassSort sortType, bool isAscending) {
  final Comparator<Clazz> comparator = compareBy((clazz) => switch (sortType) {
    ClassSort.name => clazz.name,
    ClassSort.code => clazz.code,
    ClassSort.createdAt => clazz.createdAt.toString(),
  });
  return classes.sortedWith(isAscending ? comparator : comparator.reverse());
}

/// Creates a comparator using the function to transform value to a [Comparable] instance for comparison.
Comparator<T> compareBy<T>(Comparable Function(T) selector) {
  int compareTo(T a, T b) => selector(a).compareTo(selector(b));
  return compareTo;
}

I took compareBy from kt_dart to stick closely to your code. But there are other ways to create a Comparator.
You can find this very example in my "Getting started with Functional Programming" talk from 2022.

Thank you for the detailed explanation and the alternative approach using sortedWith/Comparator.reverse(). I appreciate the efficiency and elegance of this method, and I understand it aligns well with functional programming principles as mentioned in the video!
I still believe there’s a strong case for adding the isAscending parameter to sortedBy for one main reason: Simplicity.
For many developers, especially those who might not be as familiar with comparators and more advanced functional programming concepts, having a straightforward boolean parameter makes the API more accessible and user-friendly.
The boolean isAscending is a natural state. It’s a common need to toggle sort order, and doing so with a single extension method and a simple parameter makes the code more readable and maintainable. Adopting this familiar pattern in sortedBy makes it feel more intuitive and consistent, making the intent of the code clearer.
I appreciate your consideration of this proposal. I really believe it can add value to dartx by enhancing its usability and aligning it with common patterns, making it easier for developers to adopt and use effectively. I even talked with my team, and they encouraged me to do this PR.
Thanks again for your time and for the great work on this package. Loved watching your video, you are inspiring :).

Refined parameter naming and documentation for consistency with Flutter conventions.
  SortedList<E> sortedBy(
    Comparable Function(E element) selector, {
    bool ascending = true,
  }) {

   expect([4, 2, 1, 3].sortedBy((it) => it, ascending: true), [1, 2, 3, 4]);
   expect([4, 2, 1, 3].sortedBy((it) => it, ascending: false), [4, 3, 2, 1]);

I'm fine with landing this
One semantic question:

Do we want a bool ascending or do we want an enum SortOrder order = {SortOrder.asc, SortOrder.desc}.

When sortedBy received the sort order parameter then thenBy should receive the same, too.

I'd say ascending boolean as Flutter uses this pattern:
/// Signature for [DataColumn.onSort] callback.
typedef DataColumnSortCallback = void Function(int columnIndex, bool ascending);

Reference: data_table.dart.


Cannot start

{ Error: Cannot find module 'screeps-multimeter/plugins/alias'     at Function.Module._resolveFilename (module.js:469:15)     at Function.Module._load (module.js:417:25)     at Module.require (module.js:497:17)     at requireRelative (/home/user/.npm/lib/node_modules/screeps-multimeter/node_modules/require-relative/index.js:25:15)     at _.each (/home/user/.npm/lib/node_modules/screeps-multimeter/src/multimeter.js:205:20)     at arrayEach (/home/user/.npm/lib/node_modules/screeps-multimeter/node_modules/lodash/index.js:1289:13)     at Function.<anonymous> (/home/user/.npm/lib/node_modules/screeps-multimeter/node_modules/lodash/index.js:3345:13)     at Multimeter.loadPlugins (/home/user/.npm/lib/node_modules/screeps-multimeter/src/multimeter.js:204:7)     at new Multimeter (/home/user/.npm/lib/node_modules/screeps-multimeter/src/multimeter.js:117:10)     at Promise.resolve.then.then (/home/user/.npm/lib/node_modules/screeps-multimeter/bin/multimeter:13:15) code: 'MODULE_NOT_FOUND' }

This is strange. You've got multimeter installed globally, so you should be able to get at those modules normally. Not sure why require("screeps-multimeter/plugins/alias") is failing, in that case.
The fix for your issue is going to be something like this:
export NODE_PATH=/home/user/.npm/lib/node_modules
multimeter

If that does not fix it, please let me know what version of node/npm you're using.
node --version
npm --version

I fixed it by installing locally and calling this directly node_modules/screeps-multimeter/bin/multimeter.
Node: v6.9.2
Npm: 3.10.9

Perhaps using relative require rather than absolute require would fix it for others without having to modify NODE_PATH.


Use a consistent app naming strategy across non-stable channels

Description of the Change
This change makes the naming of the Atom application consistent across all non-stable channels (Beta, Nightly, Dev) to simplify the logic of scripts which consume these channels (like atom/ci).  This builds on some changes I made in PR #17538 which generalize some of the app naming code we were using to take other non-stable channels into account (like Nightly).
The only real impact this change has is that the .app file that's created from a master build on macOS will now be called Atom Dev.app.  I'm bringing this to general awareness in case anyone has any personal scripts for regularly building and using Atom from master.
This issue originally came up when @smashwilson found that the atom/ci script didn't properly find the Atom Dev build it unpacks on Linux because the folder names have changed.  While trying to fix that script, I realized that the Windows ZIP contained a folder called "Atom null" because of a bug in the code.  This change fixes it for all cases.
Alternate Designs
Special case the dev channel to be called "Atom" and not "Atom Dev".  I'm fine with doing this if folks think it's a better approach.
Why Should This Be In Core?
It's part of the Atom build process.
Benefits
Consistent naming for non-stable channel builds, easier to predict what the app name will be without special casing.
Possible Drawbacks
Breaking some existing workflows, but not terribly likely and easy to fix if so.
Verification Process

[ ] Let CI complete and verify artifacts that are generated to make sure "Atom Dev" is being used as the app name on all 3 platforms:

[ ] Windows
[ ] macOS
[ ] Linux

Which reminds me, I need to fix atom.sh for this too!

Aaaand now I need to update the GitHub package to use Atom Dev Helper.app instead of Atom Helper.app :man_facepalming:


soundjs not working on new chrome

error traced in F12 - console
"The AudioContext was not allowed to start. It must be resume (or created) after a user gesture on the page."
sound loaded using preloadjs and playing using soundjs.
in chrome suddenly shows this error, other browser working fine.
recent chrome browser not working

what other?

I assume @LokeshSomarla is asking which other browser it works.

in chrome suddenly shows this error, other browser working fine.

other it works

Closing in favour of duplicate issue with more info #305

#297 might be more applicable for this one, since this mentions AudioContext (WebAudioPlugin).
As #305 is specifically HTMLAudioPlugin related.


chore: add react-navigation flipper devtools

❓ Context

Impacted projects: [e.g. live-mobile]

Linked resource(s):
Old pr: https://github.com/LedgerHQ/ledger-live-mobile/pull/2481

Adds developer tools to make debugging easier when using React Navigation.
https://reactnavigation.org/docs/devtools/
While working on https://github.com/LedgerHQ/ledger-live-mobile/pull/2462 I needed to debug the navigation and this helped me a lot
✅ Checklist

[ ] Test coverage: Did you write any tests to cover the changes introduced by this pull request?
[x] Atomic delivery: Is this pull request standalone? In order words, does it depend on nothing else?
[ ] Breaking changes: Does this pull request contain breaking changes of any kind? If so, please explain why.

📸 Demo

🚀 Expectations to reach
Please make sure you follow these Important Steps.
Pull Requests must pass the CI and be internally validated in order to be merged.

some conflicts
i'm assigning myself to the pr as well, just to not forget i have to try it out 🤩🤩

I have a strange issue, Flipper is not connecting to the metro bundler anymore while trying with iOS, I can't find out why (I haven't tried with Android yet)


x/crypto/poly1305: deprecate public package

Poly1305 is an extremely delicate tool that should never be used directly. If a key is used twice, it breaks catastrophically. If the key is all zeroes, the tag is always zeroes. If the message is empty, the tag is the second half of the key.
All these things are fine only if Poly1305 is composed correctly, and there is exactly one widely used (or otherwise) composition: ChaCha20Poly1305 as implemented by x/crypto/chacha20poly1305 (or by SSH in their weird variant).
I know of no uses of Poly1305 standalone, and I'd argue x/crypto/poly1305 would have been x/crypto/chacha20poly1305/internal/poly1305, if not for historical reasons. (One exception, restic uses AES-CTR+Poly1305-AES, which no other library supports. This is exactly the kind of mistake we don't want to encourage.)
If anyone is considering using the x/crypto/poly1305 package, they should be dissuaded and pointed towards HMAC, which acts much more like people expect it to. If anyone is using the x/crypto/poly1305 package, they should be notified they are doing something nonstandard and dangerous. I think deprecating the package would be the right way to send that message.
Excluding forks, here are all the packages that import x/crypto/poly1305 from godoc.org at the moment:

github.com/amaizfinance/secreter/pkg/crypto/xchacha20poly1305 — and a number of other [X]ChaCha20Poly1305 implementations, which is now provided by x/crypto/chacha20poly1305
github.com/RoPe93/govpn — which rolled their own salsa20poly1305 for no apparent reason
github.com/euphoria-io/heim — using Poly1305 as a general MAC without key derivation, which is extremely suspicious — this is exactly the uses we want to nudge towards HMAC
github.com/danielhavir/go-ecies — possibly broken because it reuses Poly1305 keys (danielhavir/go-ecies#1) uses Poly1305 with a key derived from Ephemeral-Static ECDH
github.com/restic/restic/internal/crypto — weird AES-CTR+Poly1305-AES, see above
github.com/empirefox/confy/xps, github.com/empirefox/gotool/crypt, github.com/fastcat/wirelink, github.com/FiloSottile/age/internal/stream, github.com/hyperledger/aries-framework-go/pkg/didcomm/packer/jwe/authcrypt, github.com/keybase/saltpack, github.com/marcboeker/supertar/crypto, git.zx2c4.com/wireguard-go/device — just using the TagSize constant
github.com/karantin2020/jwtis — forked from Restic, but JWT?
github.com/kevinburke/nacl/onetimeauth — a very thin wrapper, because apparently NaCl exposed Poly1305
github.com/mad-day/go-various-ciphers/edge/lioness/salsapoly — another salsa20poly1305
github.com/Randomsock5/Randomsocks5 — a self-rolled XChaCha20 + Poly1305 that uses hashes to derive a key
github.com/safing/jess — possibly broken because it reuses Poly1305 keys (safing/jess#1)
github.com/xiaokangwang/KKEncSTar — a self-rolled XChaCha20 + Poly1305 that uses hashes to derive a key
lukechampine.com/adiantum — a legitimate non-standard construction for disk encryption
git.schwanenlied.me/yawning/basket2/framing/tentp — a self-rolled XChaCha20 + Poly1305

Note how out of a dozen total usages, there are two one probably broken ones. That does not clear the bar of safety of golang.org/design/cryptography-principles.
Warning on TagSize is a bit unfortunate, as there's nothing wrong with using that. Maybe we can just Deprecate New, Sum and Verify, but that sounds wrong as it's not the APIs that are deprecated but the whole primitive that should be avoided.
/cc @katiehockman @agl

Adding to proposal minutes to increase visibility.

The reactions to https://github.com/golang/go/issues/36646#issuecomment-579366285 seem positive.
This seems like a likely accept.

No change in consensus, so accepted.

chacha20poly1305 provided by x/crypto cannot be used in stream format.
I think it's good to keep it public in order to support private implementation.


Cannot connect to KeeWeb / Firefox

I installed the KeeWeb app and turned on Firefox browser integration under the Browser settings. Then installed the keeweb addon under Firefox.
Under connection then the option "using the native app" brings me the error message:
Cannot connect to KeeWeb, please check if KeeWeb is open and browser integration is enabled in settings. (it is...)
Other addons like floccus or ublock work fine.
What could be the error? The "web-only" connection works.
I use Firefox 91.0.2 (64) on Windows 10 / KeeWeb v.1.18.7

Seems like I have a similar problem, maybe the same:
I run KeeWeb, then Firefox, when trying to use KeeWeb:

after re-enabling  this:

everything works well.
Log before re-enabling:
[INFO ] 2021-08-30T16:19:00.981Z [start-profiler] Electron app started in 2641ms: loading app requires=13ms, single instance lock=1ms, portable check=0ms, userdata dir=0ms, defining args=0ms, setting env=1ms, loading settings key=221ms, app on ready=44ms, reading app settings=27ms, creating main window=173ms, configuring main window=59ms, restoring main window position=0ms, setting ipc handlers=55ms, setting global shortcuts=1ms, subscribing to power events=0ms, setting request handlers=0ms, main window ready=448ms, main window shown=1ms
[DEBUG] 2021-08-30T16:19:00.986Z [settings-manager] Theme changed dark
[INFO ] 2021-08-30T16:19:00.990Z [usb-listener] Starting USB listener
[DEBUG] 2021-08-30T16:19:00.990Z [native-module-connector] Starting native module host
[INFO ] 2021-08-30T16:19:01.143Z [start-profiler] App started in 754ms: fetching=309ms, pre-init=438ms, loading modules=111ms, document ready=12ms, creating app model=3ms, loading configs=29ms, initializing modules=2ms, loading remote config=2ms, checking features=3ms, initializing storage=0ms, starting usb=0ms, first view rendering=152ms, app ready event=0ms
[INFO ] 2021-08-30T16:19:01.655Z [browser-extension-connector] Started
[INFO ] 2021-08-30T16:19:04.755Z [open:Database1] File open request
[INFO ] 2021-08-30T16:19:04.756Z [open:Database1] Open file from storage file
[INFO ] 2021-08-30T16:19:04.756Z [open:Database1] Stat file
[DEBUG] 2021-08-30T16:19:04.756Z [storage-file] Stat /media/icko/Zal_hav_SSD/Documents and Settings/decak/Database1.kdbx
[DEBUG] 2021-08-30T16:19:04.763Z [storage-file] Stat done /media/icko/Zal_hav_SSD/Documents and Settings/decak/Database1.kdbx 7ms
[INFO ] 2021-08-30T16:19:04.763Z [open:Database1] Open file from storage<PHONE_NUMBER>636, local<PHONE_NUMBER>636)
[INFO ] 2021-08-30T16:19:04.763Z [open:Database1] Load from storage
[DEBUG] 2021-08-30T16:19:04.763Z [storage-file] Load /media/icko/Zal_hav_SSD/Documents and Settings/decak/Database1.kdbx
[DEBUG] 2021-08-30T16:19:04.766Z [storage-file] Loaded /media/icko/Zal_hav_SSD/Documents and Settings/decak/Database1.kdbx<PHONE_NUMBER>636 3ms
[INFO ] 2021-08-30T16:19:04.766Z [open:Database1] Open file from content loaded from storage
[INFO ] 2021-08-30T16:19:05.190Z [file] Opened file Database1: 422ms, 6000 rounds, 549 kB
[DEBUG] 2021-08-30T16:19:05.190Z [app] Add last open file 47460f64-61d3-fc90-2ea3-30c32d34d7f0 Database1 file /media/icko/Zal_hav_SSD/Documents and Settings/decak/Database1.kdbx<PHONE_NUMBER>636
[DEBUG] 2021-08-30T16:19:05.303Z [storage-file] Watch dir /media/icko/Zal_hav_SSD/Documents and Settings/decak

Log continuing  after re-enabling:
[INFO ] 2021-08-30T16:47:02.625Z [browser-extension-connector] Stopped
[INFO ] 2021-08-30T16:47:02.625Z [browser-extension-connector] Disable Firefox KWC
[INFO ] 2021-08-30T16:47:07.982Z [browser-extension-connector] Started
[INFO ] 2021-08-30T16:47:07.982Z [browser-extension-connector] Enable Firefox KWC

Continuing of log after successful use of keeweb-connect addon:
INFO ] 2021-08-30T16:49:14.100Z [browser-extension-connector] New connection with socket 1
[DEBUG] 2021-08-30T16:49:14.102Z [browser-extension-connector] Init connection 1<EMAIL_ADDRESS>[INFO ] 2021-08-30T16:49:14.118Z [browser-extension-connector] Socket 1 activated for app: "Firefox-bin", extension: "KeeWeb Connect", pid: 4039, ppid: 3029
[DEBUG] 2021-08-30T16:49:14.119Z [browser-extension-connector] Extension[1] -> KeeWeb {"action":"change-public-keys","extensionName":"KeeWeb Connect","version":"0.3.6","publicKey":"ojV3YwxBK0plO................xG+Y495Ta/Uc=","nonce":"Ej6Ea6/..........Lvwp3/yO35zeABV+b","clientID":"25Jmv9Kamv/iu7uvAXCNNUCYDxSBqiQZ"}
[INFO ] 2021-08-30T16:49:14.140Z [browser-extension-connector] New client key created 25Jmv9.....................UCYDxSBqiQZ 0.3.6
[DEBUG] 2021-08-30T16:49:14.142Z [browser-extension-connector] KeeWeb -> Extension[1] {"action":"change-public-keys","version":"1.18.7","publicKey":"0KFVa7JvNQ...........jFUysN7XI=","nonce":"Ez6Ea6/351gATs8Lvwp3/yO35zeABV+b","success":"true","appName":"KeeWeb"}
[DEBUG] 2021-08-30T16:49:14.147Z [browser-extension-connector] Extension[1] -> KeeWeb {"action":"ping","data":"Kt3nTz9l+qO8/g=="}
[DEBUG] 2021-08-30T16:49:14.149Z [browser-extension-connector] KeeWeb -> Extension[1] {"data":"Kt3nTz9l+qO8/g=="}
[DEBUG] 2021-08-30T16:49:14.178Z [browser-extension-connector] Extension[1] -> KeeWeb {"action":"get-logins","message":"KBaKZ..............5Q+KWY0e1C............KIqZZX0d8/uG1ivqNYXBoZAGXUJHsD+Qwtek8qDIGaMYE9vscb5IybKkNSqIvol1099dM2LEA.........MK2U75A=","nonce":"7bBXPy45oa..............u1sbWS/DmK","clientID":"25Jmv9Kamv/iu7uv...........xSBqiQZ"}
[DEBUG] 2021-08-30T16:49:20.010Z [browser-extension-connector] KeeWeb -> Extension[1] {"action":"get-logins","message":"JBTHqDntkQ8alCPI0pCKoOKupV9u6VoRhn............7M62FL7KjpuMT1uGAEuFHOOu1n7zc1GACrMAq9SJ84601DZY1MN3aMZG..............RSmLo6oO6fPt+lI6O5F32HLp1J1zBBG3bVPn6J9pb/Dy2hgpgAUrHGtLYajj8Iba...............NgbZEzI3d6/06ypVs+/NtdF6FBRUN0UHuQ6uyrYTPFF/fKp4mSEilXVNtEaHJea0jFRCQTtnwg+fWW/9Qv1xaNhby/Qeb35Ucm2eyHnlTAlEwcCdzFYyt6QRAUpnKbLhpVJu43/ZS/MgYeAONMREZkgwEp1XAw4hlXig4DrR4zj9UrJ.............GyUB+0zanTxzf5HUDOP+E+9t8i1j86Ni0BE0aHrtfwELSUWxivMBrVkaP+KjYIYu7bc7GmTf6LNWey2Q9AS4IC7o0ALd+gYO1McCZ1zP26VF+MBlvbqy0lAQ==","nonce":"7rBXPy45oayZoMAadfAD............/DmK"}

KeeWeb 1.18.7
Firefox 91.0.2
KeeWeb Connect 0.3.6
Linux zbyna-MS-7681 4.8.17-040817-generic #201701090438 SMP Mon Jan 9 09:40:28 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

ok, very strange actually: I just did exactly the same installation on my notebook at home, and here it runs without problems.
I'll do another installation on my desktop PC later. Let's see if it works there too.
Can console data from Firefox be helpful to find out why it works on one computer and not on the other?

I think I have found the problem.
The problem occurs when you want to install KeeWeb and KeeWeb Connect on a multi-user Windows system.
On my notebook there is only one user with the typical administrator account. There everything works.
However, when I try to install KeeWeb on Windows 10 as the default user, I get this error message:

So then you normally install the program with the right mouse button -> context menu -> run as administrator.
That works so far.
But if you start KeeWeb and activate the browser integration and install the KeeWeb Connect Plugin under Firefox, the file "native-messaging-kwc.firefox.json" is created under the admin account (->User ->AppData->Roaming->KeeWeb) and NOT as it should be under the default user "Jo" (->User->Jo->AppData->Roaming->KeeWeb).

So the installation routines are probably not programmed very well?
As a workaround, you can make the Windows default user to a user with administrator rights for a short time and then install KeeWeb and the Firefox plugin.
Probably a important thing is to remove all program residues before reinstalling, also the KeeWeb directory under User -> Appdata -> Roaming-> KeeWeb for the standard user and the admin user.
When everything is set up and working, you can change the user back to a standard user.

OK. I will check on my Linux installation. I am out of my computer now.

My issue seems to be different:

I am using KeeWeb in AppImage format, it means that every single launch extract application to unique path in tmp directory
there is a file  /home/zbyna/.mozilla/native-messaging-hosts/net.antelle.keeweb.keeweb_connect.json which contains the path to the keeweb-native-messaging-host

turning off and on of  the checkbox in Settings / Browser / Firefox will update path to keeweb-native-messaging-host in  net.antelle.keeweb.keeweb_connect.json, and then it works well

Firefox console log before re-enabling checkbox:
21:12:20.202 File at path "/tmp/.mount_KeeWeb1bsF11/keeweb-native-messaging-host" does not exist, or is not executable 2 Subprocess.jsm:152
    call resource://gre/modules/Subprocess.jsm:152

Firefox console log after re-enabling checkbox:
21:44:04.329 Connecting to KeeWeb background.js:600:17
21:44:04.364 -> KW
Object { action: "change-public-keys", extensionName: "KeeWeb Connect", version: "0.3.7", publicKey: "aGYuOiE2U....................Fs+PTowsIINk4XYBkcZyCjk=", nonce: "AgyY/vxSw...............bEysSk1ZV6", clientID: "fObNt..............Dh4UQXoY" }
background.js:692:17
21:44:04.480 <- KW
Object { action: "change-public-keys", version: "1.18.7", publicKey: "5QD7aEWo.................QBVEfVjjATTbEk=", nonce: "AwyY/vxSw8zYH9leIl..................6", success: "true", appName: "KeeWeb" }
background.js:697:17
21:44:04.481 Connected to KeeWeb background.js:616:21

I had the same issue you described:

Installed Windows an a new Device
Installed my common stuff (KeeWeb is part of that)
Trying to log into a website and got the same error message @zbyna showed in the first screenshot

After reading your comments, I took a look at the process list in the taskmanager and could not find the application keeweb-native-messaging-host.exe. So i tried to exdecute it manually and got an error message, that VCRUNTIME140.dll was missing.
After installing the related C++ runtime and a reboot, it worked as expected.
Where to download:
support.microsoft.com

I can confirm this additional solution.
I have tried this on another Windows multi-user system.
It is interesting that my first solution of changing user rights works without installing the C++ runtime.
But your solution is certainly much simpler. Thank you very much.

Hi!
@Jobode  did you also run KeeWeb as Administrator?

Hi, same is happening on latest Ubuntu/Linux with Firefox after Firefox upgraded.

I have the same issue on Windows 10, Firefox 132.0 and KeeWeb v1.18.7 (dfc6201, 2021-07-18), KeeWeb Connect <IP_ADDRESS>
My installation consist of KeeWeb installed without admin rights into a custom folder (C:\Users\username\Apps\KeeWeb)
PS U:\> [environment]::OSVersion.Version

Major  Minor  Build  Revision
-----  -----  -----  --------
10     0      19045  0

KeeWeb Connect console error when clicking connect
-> KW
Object { action: "change-public-keys", extensionName: "KeeWeb Connect", version: "<IP_ADDRESS>", publicKey: "zWi+Z0AQnsB44v98YRIzvbKWE/ivzrmlbuT/fY1L8yU=", nonce: "vsPMWS56J02IVcwd/FcYNIjHRipL+4bd", clientID: "5311sXs8MveTkSPryTBSSQqovlbf18B2" }
[background.js:692:17](moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js)
KeeWeb host disconnected undefined [background.js:1469:21](moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js)
KeeWeb disconnected [background.js:644:21](moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js)
Connect error Error: Impossible de se connecter à KeeWeb. Vérifiez que KeeWeb est ouvert et que l'intégration au navigateur est activée dans les paramètres.
    rejectPendingRequests moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js:715
    initTransport moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js:655
    emit moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js:160
    portDisconnected moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js:1470
    connect moz-extension://ca12c2b5-c6d0-41f2-9102-00d43bd2a499/js/background.js:1446

same issue on mac Sonoma, I tried installing directly the Github version (needs to be signed otherwise Firefox settings have to be altered in order to be able to install) and it works


Improve Testability in AEPCore

Currently it is very difficult to test many classes in AEPCore because we are not using the following Swift paradigms as much as we should be:
Protocol Oriented Programming:
Look into using protocols more instead of concrete classes in order to allow us to create more mocks
Dependency Injection / ServiceProvider:
Use service provider and dependency injection and chaining more rather than instantiating dependencies in each class. This will allow us to have more control when mocking and testing classes.
Look into other solutions to improve testability.

Improve Bundled Rules testability


Is bigsur necessary to use bikegan? Can bikegan handle noisy mesh directly?

For example, I only want to generate texture for mesh, do I have to go through bigsur first, or is there an easy way for me to directly use frankengan to generate texture for the building, thanks!

Hey kuaiqushangzixiba,
To create a single texture from the frankengan chain you can run a single bikegan network on a texture map generated for the mesh you should be able to get the results with test.py.
However, to recreate all of the frankengan chain (high resolution, separate window and door networks etc...) you would need to use chordatlas.

What are the inputs to test.py? I notice this sentence, --dataroot', required=False, help='path to images (should have subfolders trainA, trainB, valA, valB, etc)', I don't know java, So is there any way I can make sense of frankengan's input.... Thank you very much

frankengan's inputs are a mesh. I'm not sure what that has to do with test.py?

When I run test it appears as follows. How do I set the parameters

I'm sorry, I haven't run this code for a long time and don't have any notes. Perhaps the author will know more? test.py is from BicycleGAN


Subnets/more info

Adds subcommands to bittensor (Much needed!)

https://github.com/opentensor/bittensor/blob/f1df71ec6bc3c88882a6a3721d9504cc7b57e203/tests/integration_tests/test_cli.py#L2123
When testing with tests/integration_tests/test_cli.py:
FAILED tests/integration_tests/test_cli.py::TestCLIWithNetworkUsingArgs::test_delegate - OSError: pytest: reading from stdin while output is captured!  Consider using -s.
It's asking for wallet from the command line.

Seems like we're exiting erroneously? Think the check_config is the culprit but not sure if its the source or a downstream problem:

    @staticmethod
    def check_config(config: "bittensor.config"):
        """
        Checks if the essential configuration exists under different command

        Args:
            config (bittensor.config): The configuration settings for the CLI.
        """
        # Check if command exists, if so, run the corresponding check_config.
        # If command doesn't exist, inform user and exit the program.
        if config.command in COMMANDS:
            command = config.command
            command_data = COMMANDS[command]

            if isinstance(command_data, dict):
                if config["subcommand"] == None:
                    # This probably isn't the best solution, refactor
                    for action in config["__parser"]._subparsers._actions:
                        if action.dest == "command" and action.choices[command]:
                            action.choices[command].print_help()
>                           sys.exit()
E                           SystemExit

bittensor/cli.py:226: SystemExit

Seems like we're exiting erroneously? Think the `check_config` is the culprit but not sure if its the source or a downstream problem:
    @staticmethod
    def check_config(config: "bittensor.config"):
        """
        Checks if the essential configuration exists under different command

        Args:
            config (bittensor.config): The configuration settings for the CLI.
        """
        # Check if command exists, if so, run the corresponding check_config.
        # If command doesn't exist, inform user and exit the program.
        if config.command in COMMANDS:
            command = config.command
            command_data = COMMANDS[command]

            if isinstance(command_data, dict):
                if config["subcommand"] == None:
                    # This probably isn't the best solution, refactor
                    for action in config["__parser"]._subparsers._actions:
                        if action.dest == "command" and action.choices[command]:
                            action.choices[command].print_help()
>                           sys.exit()
E                           SystemExit

bittensor/cli.py:226: SystemExit

The CLI exits in Revolution in the same manner, when printing main argparser help.

The CLI exits in Revolution in the same manner, when printing main argparser help.

Ahh, probably the test being flaky then.


Basic Support for Black (PS2)

😡

@neonoxd @isJuhn Hi! I'm trying to make "Black" works via PCSX2 but KAMI doesn't detect the game.
Any idea? Thank you.

@SixelAlexiS90 The latest commit (which is also the latest release) broke it, I ran into this as well. I could make it work again with a hacky solution, but that was not upstreamable. I haven't worked on it since.
You'll need to self compile the commit one before the latest (0d66b96b976d9659ee477be9c17ce3c116b96cc2) to play with Black using mouse injection. The CI artifacts have already expired, and the previous release is from before this PR was merged, so self-compiling is your only option.

@SixelAlexiS90 The latest commit (which is also the latest release) broke it, I ran into this as well. I could make it work again with a hacky solution, but that was not of upstreamable quality. It hasn't been worked on since (to my knowledge - not by me at the very least).
You'll need to self compile the commit one before the latest (0d66b96) to play with Black using mouse injection. The CI artifacts have already expired, and the previous release is from before this PR was merged, so self-compiling is your only option.

Thank you for the explanation. I tried Ratchet & Clank Up Your Arsenal as well and couldn't get it working either. I'm not gonna mess with self-compiling so I guess I'm out of luck.
Hopefully a new and fixed version of KAMI will be released as some point, thank you for your work <3 !


Anouncement:  I'm developing a Record/Replay tool

Hello, I have developed a Pywinauto "Record/Replay" tool. There is still a lot of work to do but I would like to have first opinions and I'm looking for beta testers.
Here is a small video presentation:  Youtube presentation
I just realized that pywinauto_recorder.exe doesn't work on all machines (I'll fix this problem later). So to test it I advise you to download the ZIP archive of the clone.:
https://github.com/beuaaa/pywinauto_recorder/archive/master.zip

Really good work! Looks like you're quite invested into it. Do you mind providing a bit more details: what's supported for now and any limititaions?
Not sure if you're aware of a separate dev branch we have: https://github.com/pywinauto/pywinauto/commits/dev-script-generator . It contains the code for ongoing work on pywinauto internal recorder. Unfortunately, I wasn't involved into it much. Mostly @vasily-v-ryabov. The branch is also updated with all the latest dev code from our "next-to-release" atspi branch.

Thank you very much for your encouragement. Like Vasily Ryabov, it's a hobby. So I have to balance free time after work and with my family.
This is my first Open Source Python project and I discover everything: GitHub, Automation, Pypi, etc... So I have a lot of things to learn. It's part of my pleasure.
The limitations of my tool are the same as Pywinauto's and also for the moment it only uses UIA backend.
Vasily Ryabov told me about the pywinauto internal recorder project. I'm going to throw in following that. It's certainly much more complex than my little tool. If I can, I will help him to develop his project but I'll develop mine first, there are so many things to do!
To go faster I will not be against the help of more experienced people.
For example I realized that Pywinauto_recorder.exe doesn't work on all machines @airelil If you could help me with this issue I would be very grateful. I think it has something to do with this Pywinauto issue ... but i'am not sure.
When I opened the problem I also realized that pip install pywinauto_recorder wasn't working so I quickly closed the problem. Now I fixed it so I'm reopening it to give time to people interested to discover my project.

Yep. It sounds like another problem with the comtypes cache. Did you try to solve it the same way, by re-generating the cached COM code?

Hi @beuaaa I've posted my thoughts about comtypes usage to the recorder issue. This is really big job done. It involves mini-language for left_click(...) parameter. I've never thought previously about the idea to use recorder code in the recorded script. Though this is one more dependency.
I'm also interested to take a look into https://github.com/beuaaa/overlay_arrows_and_more code for the cursor control functions.
Problems with packing Python code into single executable are pretty wide. I have no short-term or mid-term plans to dive into this direction. But doing it properly is one of the fundamental tasks for any recorder or UI inspector like https://github.com/pywinauto/py_inspect .

I tried with Unified Service Desk 4.1, the application is crashing while recording.
I see these files

Inside the file I've only the content below.
# encoding: utf-8

import os, sys
script_dir = os.path.dirname(__file__)
sys.path.append(script_dir)
from pywinauto_recorder.player import *

@jjbright Thank you very much for sharing this first issue. I've added your issue in Pywinauto recorder issue list
your issue in Pywinauto recorder issue list
Could you describe the problem here in more detail?

record click combobox is click a button and them select a ListItem, how to replay it and transform it to combobox.select()


Automatically select a table derived from the query

When I'm viewing a table and I enter a query for an unrelated table the query fails.
I was wondering if it's possible to derive the table from this query and automatically select te correct table and execute the query.
Eg when I'm viewing table1 and I enter in the query:
table2.field = "X"
the underlying query will be faulty:
for each table1 where (table2.field = "X") no-lock
Seeing as this is never correct, might as well automatically switch to table2 and execute the query.
Also, I think this might save some time as in the user doesn't need to select the table anymore but can start typing straight away.

Hi Steven,
Thanks for using DataDigger and thatnks for submitting this idea. Actually,
I find it a nice idea and I will add it to my list of features to
implement.
Currently I am working on a large refactoring; I will see if I can
implement this together with that. Thanks!
Best regards
Patrick Tingen
Op do 26 jan. 2023 om 15:51 schreef Steven Peeters @.***

:

When I'm viewing a table and I enter a query for an unrelated table the
query fails.
I was wondering if it's possible to derive the table from this query and
automatically select te correct table and execute the query.
Eg when I'm viewing table1 and I enter in the query:
table2.field = "X"
the underlying query will be faulty:
for each table1 where (table2.field = "X") no-lock
Seeing as this is never correct, might as well automatically switch to
table2 and execute the query.
Also, I think this might save some time as in the user doesn't need to
select the table anymore but can start typing straight away.
—
Reply to this email directly, view it on GitHub
https://github.com/patrickTingen/DataDigger/issues/99, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABN3AHPV2TA7NNC5D2JA6P3WUKFPDANCNFSM6AAAAAAUHS2I4M
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Get sLMR not working

Hi there, I have been able to get sETH but not and sLMR
Lumerin wallet
Lumerin wallet / get tokens / captcha validation failed
Lumerin Faucet
Metamask/https://faucet.lumerin.io/ 0.05 sETH received / no sLMR (sepolia received)
Perhaps I'm not seeting the sLMR in my wallet.
Can you please post the contract address for the sLMR so I can add it as a custom token in my Metamask?
thankyou

We found some issues with the faucet (both security and process related).  They have been fixed and the faucet was redeployed yesterday at 5:30 pm EST.  You should be able to get test tokens today with the new release.  I will close this issue as we believe it has been resolved.  If you are still having problems afterward, please create a new issue.
Thank you!


[aes] Use separate subreg prims for fields of shadowed control reg

An update error in a particular field should only prevent the update of that field. Updates to other fields should still be applied.
This fixes lowRISC/OpenTitan#7417.
@cindychip DV is currently failing with the following error:
* `Job returned non-zero exit code` has 1 failures:
    * Test default has 1 failures.
        * default\
         Log opentitan/scratch/aes-shadow-reg-rework/aes-sim-vcs/default/build.log

                    <%def name="make_ral_pkg(dv_base_prefix, reg_width, reg_block_path, rb, esc_if_name)">\
                  File "/home/pirmin/ot/opentitan/util/reggen/uvm_reg_base.sv.tpl", line 521, in render_instantiate_register
                    assert 0
                AssertionError:

                ERROR: ext shadow_reg does not have tags for shadowed_reg_path!
                Error: RAL pkg generation failed:
                Command '['opentitan/util/regtool.py', '-s', '-t', '.', 'opentitan/hw/ip/aes/data/aes.hjson']' returned non-zero exit status 1.
                ERROR: Setup failed : "python3 opentitan/hw/dv/tools/ralgen/ralgen.py opentitan/scratch/aes-shadow-reg-rework/aes-sim-vcs/default/sim-vcs/
generated/lowrisc_dv_aes_env-ral_0.1/ral_input.yml" exited with an error code. See stderr for details.
                make: *** [opentitan/hw/dv/tools/dvsim/sim.mk:26: gen_sv_flist] Error 1

I think the problem now is that uvm_reg_base.sv.tpl still expects one shadow_reg_path tag for the whole register. But if I am not misunderstood, we have to provide one tag per field as every field is now implemented by a separate subreg. Would you mind to take a look please?

Hey @vogelpi I pushed a PR to your branch: https://github.com/vogelpi/opentitan/pull/1
Please let know if that works :)

Thanks a lot @cindychip ! It works. I squashed your commit into mine and fixed fixed the aes_alert_reset test which is a separate sequence and also had the path hardcoded. It should work now. This PR is ready for review.

FYI @rasmus-madsen , this PR changes the list of signals that need testing for FI. Previously we had:
u_aes_core.u_ctrl_reg_shadowed:
- staged_q
- wr_data
- phase_q
- wr_en
- shadow_q
- committed_q

Now we need to test the same signals in different hierarchies:
u_aes_core.u_ctrl_reg_shadowed.u_ctrl_reg_shadowed_operation:
u_aes_core.u_ctrl_reg_shadowed.u_ctrl_reg_shadowed_mode:
u_aes_core.u_ctrl_reg_shadowed.u_ctrl_reg_shadowed_key_len:
u_aes_core.u_ctrl_reg_shadowed.u_ctrl_reg_shadowed_manual_operation:

@vogelpi thank you for the heads up I will make the appropriate adjustments


Have CPU widget show thermal throttling

Suggested new feature or improvement
If a CPU thermal throttle has been happening, have me become aware via the CPU widget
Scenario
I'm on my laptop and wondering why my build may be slow.  Knowing clearly my system is thermal throttling could be helpful to allow me to know about something that is possibly impacting my performance
Additional details
No response

Duplicating this to #1238


Move to a pull model for client capabilities and semantic tokens legends

Actually using DI for what it was made for! One interface, two different implementations!!
Addresses some of my own comments on past cohosting PRs

The integration test that failed is SnippetCompletion_Html which seems unrelated, so gonna re-run.


implement ceil function

Resolves https://github.com/gluesql/gluesql/issues/642

Codecov Report

Merging #645 (83d3468) into main (fab6e71) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #645   +/-   ##
=======================================
  Coverage   94.33%   94.33%
=======================================
  Files         217      217
  Lines       16469    16481   +12
=======================================
+ Hits        15536    15548   +12
  Misses        933      933

Impacted Files
Coverage Δ

core/src/ast_builder/mod.rs
100.00% <ø> (ø)

core/src/ast_builder/expr/function.rs
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Add reset task, also add cron dependency for use on the demo server.

I wonder if this could cause any problems depending on the order these deletions are run.
Could you do DataMapper.auto_migrate!
Looks like that drops and recreates all table definitions, which seems like it might be a more foolproof method: https://datamapper.org/getting-started.html


prefill projections during setup

When creating new versions of projections, the setup will only create the table but will not project the current state directly, but rather wait for the start of the spooler to recognise, that there's a gap to fill.
relates to https://github.com/zitadel/zitadel/issues/7008

Let's not forget to update https://zitadel.com/docs/self-hosting/manage/updating_scaling when this is implemented


Adds gas-profiler

Description
Hello! This PR introduces a new package, gas-profiler. gas-profiler is a utility for generating detailed profiles of contract executions. The package can either be used as an import or as a command-line application. More detailed information can be found in the package's README.md.
Metadata
Fixes

Fixes YAS-440

Contributing Agreement

[x] I have read and understood the Optimism Contributing Guide and Code of Conduct and am following those guidelines in this pull request.

This LGTM!!

🎉🎉

I'll admit I didn't pour over this line by line, but one quick note is I don't see you do anything with JUMPI thought you do do some stuff with JUMP, idk if that would have any effect but worth calling out!

So what I'm doing with JUMP essentially just collects the gas usage during external contract calls and assigns it to the line corresponding to the final JUMPDEST. I don't think the Solidity compiler uses JUMPI for external calls (only internally for conditionals), so it's not necessary to carry out the same gas collection logic.

double LGTM! Very pretty code! Clearly there are linting issues but those are pretty trivial to fix. I'm sorry Kelvin but our current linting style doesn't use semi-colons 😁

Linting issues fixed!

@kfichter looks like the build failed because of some missing dependency maybe? I wanna merge this once it passes CI!

@kfichter looks like the build failed because of some missing dependency maybe? I wanna merge this once it passes CI!

Weird, let me check this out


Uncaught Error: Cannot have two contributions with the same id editor.contrib.referencesController

I am trying to update my monaco editor to 1.41.0, with the recommended monaco-langaugeclient 6.4.6 and monaco-vscode-api 1.81.7. I used to have some code that worked using monaco-editor 0.36 and now have to update the entire service setup.
I have followed to demo (I think), calling the initialize function like this:
    await initializeMonacoServices({
        ...getConfigurationServiceOverride(monaco.Uri.file("/tmp")),
        ...getEditorServiceOverride(openEditor),
        ...getLanguagesServiceOverride(),
        ...getModelServiceOverride(),
        ...getSnippetServiceOverride(),
        ...getStorageServiceOverride(),
    });

I think this is probably more than what I even need ;-) But whatever I do (even when calling the initialize method without any services) I do run into this error:
Uncaught Error: Cannot have two contributions with the same id editor.contrib.referencesController

initialize@http://localhost:3001/node_modules/.vite/deps/chunk-BRCXZLFB.js?v=7b9dc333:87116:27
CodeEditorWidget2@http://localhost:3001/node_modules/.vite/deps/chunk-BRCXZLFB.js?v=7b9dc333:87419:25
StandaloneCodeEditor2@http://localhost:3001/node_modules/.vite/deps/chunk-3DMOLLPZ.js?v=7b9dc333:109:5
StandaloneEditor2@http://localhost:3001/node_modules/.vite/deps/chunk-3DMOLLPZ.js?v=7b9dc333:213:5
@http://localhost:3001/node_modules/.vite/deps/vscode_monaco.js?v=7b9dc333:497:7
ConfiguredStandaloneEditor2@http://localhost:3001/node_modules/.vite/deps/vscode_monaco.js?v=7b9dc333:3688:5
_createInstance@http://localhost:3001/node_modules/.vite/deps/chunk-BRCXZLFB.js?v=7b9dc333:57950:20
createInstance@http://localhost:3001/node_modules/.vite/deps/chunk-BRCXZLFB.js?v=7b9dc333:57925:21
createConfiguredEditor@http://localhost:3001/node_modules/.vite/deps/vscode_monaco.js?v=7b9dc333:3784:52
setup_editor@http://localhost:3001/src/editor_widget.ts:433:42
EditorPaneWidget@http://localhost:3001/src/editor_widget.ts:155:25
EditorWidget@http://localhost:3001/src/editor_widget.ts:587:20
setup@http://localhost:3001/src/index.ts:391:18
main/<@http://localhost:3001/src/index.ts:483:10
promise callback*main@http://localhost:3001/src/index.ts:482:91
EventHandlerNonNull*@http://localhost:3001/src/index.ts:493:1
    unexpectedErrorHandler errors.js:15
    setTimeout handler*node_modules/monaco-editor/esm/vs/base/common/errors.js/ErrorHandler/this.unexpectedErrorHandler errors.js:10
    onUnexpectedError errors.js:42
    onUnexpectedError errors.js:72
    initialize codeEditorContributions.js:36
    CodeEditorWidget2 codeEditorWidget.js:213
    StandaloneCodeEditor2 standaloneCodeEditor.js:67
    StandaloneEditor2 standaloneCodeEditor.js:183
    <anonymous> injection.js:11
    ConfiguredStandaloneEditor2 monaco.js:79
    _createInstance instantiationService.js:97
    createInstance instantiationService.js:68
    createConfiguredEditor monaco.js:175
    setup_editor editor_widget.ts:562
    EditorPaneWidget editor_widget.ts:257
    EditorWidget editor_widget.ts:770
    setup index.ts:468
    main index.ts:591
    promise callback*main index.ts:590
    EventHandlerNonNull* index.ts:605
errors.js:15:26

I am pretty sure I am just using this wrong, but I would still appreciate any ideas on how I can debug this.

Did you apply the treemending patch? :) see https://github.com/CodinGame/monaco-vscode-api#installation

Isn't it a cache issue then? because this contribution registration is removed from monaco-editor by the treemending script

What is the result of a npm list monaco-editor?

I'm running out of ideas!
what is the content of you node_modules/monaco-editor/esm/vs/editor/editor.main.js?

So it's fine!
The only remaining id is your bundler duplicating the code for some reasons
Can you add a console.log inside node_modules/vscode//vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js to see it it's run twice?

That's weirder and weirder!
It's probably a cache issue this time!
Btw, you can also put a debugger in node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.js in the registerEditorContribution function to see who calls it :shrug:

@hunger and @CGNonofr I have seen this error with rivaling monaco versions. 🤷♂
Some questions and ideas: @hunger how do you import monaco-editor? Do you do it multiple times? Are you using a workspace? I am asking because there have been artifacts in sub-folders in the past. Also try vite --debug --force to kill the vite cache and clear the browser cache.
With the latest version import * as monaco from 'monaco-editor'; is sufficient, btw.

Yes, that's why:
"postinstall": "monaco-treemending",

@hunger that's good news!

I removed some import * as monaco from "monaco-editor/esm/vs/editor/editor.api"; and now the first message is gone!

@CGNonofr how can this be if there are no rivaling monaco-editor versions?

@hunger that's good news!

I removed some import * as monaco from "monaco-editor/esm/vs/editor/editor.api"; and now the first message is gone!

@CGNonofr how can this be if there are no rivaling monaco-editor versions?

Yeah that's doesn't make sense to me at all. I still vote for a cache issue


UI Does not work on MacOS

UI doesn't seem to work: When compiling with the UI feature it complains about a libfltk file not being compatible with the arm64 architecture (Apple Silicon). Running cargo update doesn't fix this. It might be that I need to install some dependencies before trying to build locally.

Fixed in version v.1.0.0


Noob need some help.

Hey! Thanks for this project. It made me to buy a lamp like this and an ESP32 and get started.
The ESP is connected to my PC right now. I also got VScode and i downloaded platformIO.
But could you please get more in detail by adding the vars to the .h files and get the firmware onto the device? or a hint how to? that would be great.

Hello @s0m3thin
Have a look at the "How to" section. If you are missing something in description, feel free to open a PR.
I'll try to describe the steps in a bit more detail:

First you need to find out which board you have and possibly change the platform.ini file. In this file you can define your board and the libraries, because every board is different and might need different compatible libraries
Solder the pins of your board to the lamp
Connect the board to your computer
run git clone https://github.com/ph1p/ikea-led-obegraensad.git in your terminal or download the file as a zip and unzip it
open the folder in VSCode
Create a secret.sh
file in the include folder and copy the code from the "how to" section
click on this symbol in VSCode

done :)

I was new to Platform.io (but not Arduino) and found that the Quick Start was quite helpful. If you have no idea what board to select, maybe post a picture here and I or someone else can help out.

Hello, I need also help.
I have a D1 Mini (ESP8266) and a D1 Mini (ESP32).
Im compiled both Versions from the Script.
The ESP8266 is connected to the WiFi and "works" but after a while the Controller stucks.
So tried the same Code with the ESP32 but its not working no Web frontend.
I tried to modifie the Code and put in the envd for the D1 Mini but same Issue. I tried 3 different Controller Just to be Sure.
Can someone help me to Analyse were the Fault is?

So tried the same Code with the ESP32 but its not working no Web frontend.

Is the device connecting to the WiFi network? What does "not working" mean in this case? Can you flash a simple test pattern like in this PR?

No it is not connected to the wifi (but wifi setting are ok because it works on the esp8266)
With the serielle Monitor it looks like a bootloop or something.

Can confirm, on esp32-c3-devkitc-02 board the program is stuck in a boot loop:
ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)
Saved PC:0x40380082
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x438
load:0x403cc710,len:0x918
load:0x403ce710,len:0x25f4
entry 0x403cc710
ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)
Saved PC:0x40380082
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x438
load:0x403cc710,len:0x918
load:0x403ce710,len:0x25f4
entry 0x403cc710
ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)
Saved PC:0x40380082
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x438
load:0x403cc710,len:0x918
load:0x403ce710,len:0x25f4
entry 0x403cc710

Any ideas how to fix this?

Can confirm, on esp32-c3-devkitc-02 board the program is stuck in a boot loop:
ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)
Saved PC:0x40380082
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x438
load:0x403cc710,len:0x918
load:0x403ce710,len:0x25f4
entry 0x403cc710
ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)
Saved PC:0x40380082
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x438
load:0x403cc710,len:0x918
load:0x403ce710,len:0x25f4
entry 0x403cc710
ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)
Saved PC:0x40380082
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd5810,len:0x438
load:0x403cc710,len:0x918
load:0x403ce710,len:0x25f4
entry 0x403cc710

Any ideas how to fix this?

Ohh no I ordered this board because I thought maybe my D1 Mini Board is the issue :(

Can confirm, on esp32-c3-devkitc-02 board the program is stuck in a boot loop:

ESP-ROM:esp32c3-api1-20210207

Build:Feb  7 2021

rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)

Saved PC:0x40380082

SPIWP:0xee

mode:DIO, clock div:1

load:0x3fcd5810,len:0x438

load:0x403cc710,len:0x918

load:0x403ce710,len:0x25f4

entry 0x403cc710

ESP-ROM:esp32c3-api1-20210207

Build:Feb  7 2021

rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)

Saved PC:0x40380082

SPIWP:0xee

mode:DIO, clock div:1

load:0x3fcd5810,len:0x438

load:0x403cc710,len:0x918

load:0x403ce710,len:0x25f4

entry 0x403cc710

ESP-ROM:esp32c3-api1-20210207

Build:Feb  7 2021

rst:0x8 (TG1WDT_SYS_RST),boot:0xc (SPI_FAST_FLASH_BOOT)

Saved PC:0x40380082

SPIWP:0xee

mode:DIO, clock div:1

load:0x3fcd5810,len:0x438

load:0x403cc710,len:0x918

load:0x403ce710,len:0x25f4

entry 0x403cc710

Any ideas how to fix this?

Try to change the default pins, maybe this will help

Before I downloaded the zip manually.
 I deleted the old folder and everything.... now it looks like that its working for me!

I'm having the same problem that I'm stuck in the bootloop with my seeed studio xiao esp32c3.
Any ideas on how to fix this?

So its definitely the PIN setup. Changing the default ones to some free GPIOs of the board did the trick. See also https://github.com/ph1p/ikea-led-obegraensad/issues/60 for Lolin D32 Pro.


Done snap.svg supports in react native as well ?

Maybe this is of some use... https://www.npmjs.com/package/react-snap-svg I'm not sure if that applies to native.


alternatives!

can you compare this package with more known django-filter

Basically the main difference is the faceting.

It could be nice to have it reviewed and documented in docs/about/alternatives.
At the beginning of the project (as far as I remember), the main difference was django-generic-filters was using forms to validate filter input. The idea was "use forms to easily collect and validate filters for queryset in ListView". Not sure it makes the difference today: https://django-filter.readthedocs.org/en/latest/usage.html#custom-forms-using-form


Gateway should query chain sync status of Lightning node when booting up

If its not synced, it should give a proper error message and quit.

@Kodylow would it actually be easier if the gateway waited for the chain to sync?

yes


ENH: specify for which device another set call is issued

This is to be more specific which device has a second set call.

Most of the time, the only recovery I know is to restart the kernel.  Will this be part of how to repair instead of restart?

Same for us at the moment. I think something like <status>._finished(success=False) can be used if the <status> object is exposed somehow.

Would {self.dotted_name} be more useful?  That would make the useful name available for copy/paste.  Not sure how to get from there to the status object, though.

I like the idea, @prjemian.

I actually tried it at a beamline, and the <det>.dotted_name is not available for ophyd v1.3.3, as it was added in 1.4.0rc1. I think we should stick to the current implementation for now.

Do you intend to backport this to the 1.3.x series?

Would be great to have it on the floor after the next push.

OK, that's reason enough to merge this as is. I opened #757 to remind us to follow up on the other ideas suggested here.

Will this be part of how to repair instead of restart?

This is usually a sign either your plan is broken or your hardware is behaving badly.  To "fix" it you can do obj._set_thread = None.

backported to v1.3.x as 623cea9


bugfix: case of the pk col-name in the business sql is inconsistent with the case in the table metadata, resulting in a rollback failure

…ith the case in the table metadata, resulting in a rollback failure

[ ] I have registered the PR changes.

Ⅰ. Describe what this PR did
修复：AT模式，在某些情况下，业务sql中主键字段名大小写与表元数据中的不一致，导致回滚失败
Ⅱ. Does this pull request fix one issue?

fixes #5734
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

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

与 #5748 相同

https://bugs.mysql.com/bug.php?id=35753
https://dev.mysql.com/doc/connector-j/8.1/en/connector-j-connp-props-jdbc-compliance.html


Chapter Introduction scroll

Closes #166
This problem was a little more involved than i first anticipated but only because we are using the  component from next.js and not a standard  html tag. Once i realized this there is clear documentation on how to utilize the parameters to get it to behave how we expect it to.

Wrong code. Closed


Implement CPU.universal_archs for Linuxbrew

Codecov Report

Merging #354 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #354      +/-   ##
==========================================
- Coverage   61.75%   61.73%   -0.03%
==========================================
  Files         374      374
  Lines       20235    20241       +6
==========================================
- Hits        12497    12495       -2
- Misses       7738     7746       +8

Impacted Files
Coverage Δ

extend/io.rb
71.42% <0%> (-28.58%)
:arrow_down:

extend/os/linux/hardware/cpu.rb
0% <0%> (ø)
: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 3398b41...7eece7a. Read the comment docs.


Implement role for allowing pickups

(Originally written by Nick, moved from https://github.com/yunity/karrot-backend/issues/419)
If the application has to do different things depending a users state/roles, then we can implement these roles.
This allows the frontend to implement UI based on the roles, and not re-implement the logic from the backend to decide what the user can do.

if a group has an active agreement set, then only users that have agreed to it should be able to do pickups
otherwise the user should be able to do pickups

It means more bureaucracy to manage the roles for the users (e.g. when there is no agreement all the users need to have that role, and when you add an agreement, all those roles go away), but it seems like it should be a good approach.
Related to https://github.com/yunity/karrot-frontend/issues/324#issuecomment-369940704

We don't have a clear concept if this role is actually needed, so discussion should go back to #324
It might also be connected to #546, but requirements haven't been specified there either.


README Web Tutorial

Create a web page tutorial for READMEs.

Describe what a readme is and does
Suggested parts and content.
Examples

Relavent Problems
#70 Writing a README for a dataset.

Claims Against
There are already some out there.

Despite that there tutorials out there, the quality of READMEs is variable and often don't contain enough information to replicate the results. There is also need for domain specific repositories.


Fixes #16 Ignored defaults

Add the missing options to InitializeDefaults.php to ensure all options from the default meta_tags.php config file are supported.

Hi! Thank you for help! The only way to make sure that code works well - cover it with tests.


jupyterlab_vim

Can we add https://github.com/jwkvam/jupyterlab-vim to post_build_base?
cc @brittstephens

If this gets installed, does this automatically change the key bindings for jupyterlab?  Or is it something you can opt in/out?

@brittstephens, do you know the answer?

I've done some research on this.  JupyterLab extensions are enabled at installation time.  So, this would change the behavior for everyone, which is not desired.
You could install this extension and then disable it with:
jupyter labextension disable jupyterlab_vim

But then you'd have to go to the command line and execute:
jupyter labextension enable jupyterlab_vim

to enable it.  However, requiring this is not much different than having the user install the extension themself.  There are differences, though, which I enumerate below.
If you Install the extension and disable it, requiring the user enable it before use:

the application (jupyter) does not need to be rebuilt when enabling the extension,
whether it is enabled or disabled, it can conflict with other extensions that a use might install, and
the user must execute the enable command from the command line.

If you require the user install the extension themself:

the extension is downloaded and the application (jupyter) is rebuilt, albeit automatically,
there is minimal risk of creating conflicts for users who choose not to use the extension, and
the extension can be installed via the JupyterLab extension manage (from within the browser UI), without needing to execute any command-line commands.

Personally, I think that it makes sense not to install it and let users install it themselves.
The only advantage that I can see to doing this, rather than just asking the user to install the extension themselves (which they can do through JupyterLab's extension manager in the browser


SSL/TLS

Use something like https://tls.mbed.org/ to make mail support SSL/TLS like real mail servers do! :D

Note: do not support STARTTLS, but rather listen on port 465 (or user-specified) for SSL/TLS

According to real-world tests (aka sending myself emails from gmail and free online anonymous mailers), mail servers try to send data to port 25, using STARTTLS there.

wat ok apparently nothing uses STARTTLS... lolrip

After a little over 1 year, it is complete... SSL support works!!!


Encountering two concurrent errors.

Hello, I have two issues: (1 and 2)

after I run:

utilitarian@Mmode:~/Social_X$ sudo bash Social_X.sh
(WSGI server window appears and displays the following):
Input Your Root Password
"Social_X"
Traceback (most recent call last):
File "/home/utilitarian/Social_X/wsgi_w/Upload_Server/app.py", line 2, in
from gevent.pywsgi import WSGIServer
ModuleNotFoundError: No module named 'gevent'     << Problem

after I run:

[+]Enter The File Path That You Want To Embed(it could be jpg,docx,png etc.)
Social_X@root[~] /home/utilitarian/Desktop/Cwby1.jpeg

[+] Have You Created A Backdoor?(Y/N or yes/no)
Social_X@root[~] no

[+]Enter The File Name That You Want To Run[Input The Name With Extension]
Social_X@root[~] redex.exe

[-]Please Choose Another Name.This Name IS Already IN The Server Cwby1.jpeg
utilitarian@Mmode:~/Social_X$

I have tried different files and not only .exe files. The file path for everything was desktop. All have the same result/error:
[-]Please Choose Another Name.This Name IS Already IN The Server [embedded image name]
utilitarian@Mmode:~/Social_X$
But, other than that, great work all around!

You forgot to run setup.sh as root.

No, I am certain that I ran everything as root. Just to make sure, I removed everything and run setup.sh as root but I still had the same problem again.
I don't think that's the cause

Activate the root User. You can give a command like this:
sudo passwd root
Then reboot your system and login as root instead of utilitiran. Then, install the project again i believe the issue Will be fixed. If not, presumably it is because of broken packages. Because i see that the installation process had not been complited successfully when i look at the screen


test schema added only one format

Change
In refactor-ast branch: added test schema
/files/shexTest/schemas/ExtendsHierarchy.shex
needed to test schema structural validity, but not used in tests

If this is the right place for such schema, the corresponding .json and .ttl versions are to be added
If this is not the right place, then it should be moved

Are you interested in contributing a pull request for this task?
None

done -- https://github.com/fhircat/jena/commit/fc0bded19ed3260092e6f79f454f8619661324bd


Remove unused variable in ts transform

Noticed while reviewing a different PR that currentClassHasParameterProperties is only ever written to.

@typescript-bot: pack this


Flunt for Java

Can i rewrite Flunt to Java?

For sure <3
Just send me the repo URL and I will put it on the main page here!


history.listen is not called after app has started

After upgrading from 4.0.7 to 4.0.8 history.listen is not called on app start (page load) anymore.

This is how history 3.x works. You need to use getCurrentLocation instead.

No problem, but why this happened on micro version upgrade?

Because it was a bug that it emulated the history 2.x behavior. It shouldn't have done that. It was causing issues with React Router hooks.

this is a pretty big deal though for a patch release especially since nothing in the docs mentions it:
https://github.com/reactjs/react-router-redux#how-do-i-watch-for-navigation-events-such-as-for-analytics
the release notes don't mention it.
nor do any of the example repos you link to do this (see here for instance)
and people using the boilerplate from redial will also be hit by this (that's how i found the error in our codebase).
i totally get that it was supporting a broken behavior, but maybe at least making this a minor release (if not a major one) and mentioning this change in the docs would make life easier for others who will inevitably refile this issue?
thanks!

The change is upstream with going from history 2 -> 3. We're not responsible for changing it, we just had hidden that it occurred. It would be like blaming React for the same thing.

i understand that and i'm not blaming you for the underlying issue. i'm just pointing out that when you stopped hiding the bug (correctly or not) it had the potential to break lots of code, and by doing that in a patch release it introduced a subtle bug that i spent the morning tracking down. at least adding something to the README.md mentioning this would be awesome and i'd be happy to write it up that makes life easier, i doubt i'm the only one who was hit by this.


Update base.njk

Typo fix / string update

@yannisgu do you think we can merge this one ?

thanks ! I hope my pull request will go thru also ^^


[microTVM][RVM] Add platform to build directory name

Using two platforms (Arduino and Zephyr) at the same time in the same TVM directory requires different TVM build to avoid conflict. This PR changes the build directory for each platform.
Also this PR removes a file that has been moved in this PR: https://github.com/apache/tvm/pull/8748

cc @areusch for review.