initial flespi integtation #3575

Here is a flespi integration pull-request: issue #3575
To start pulling messages from flespi:

Get authorization token: login at flespi panel https://flespi.io and copy token in "Tokens" folder
Create one or more channels (with any protocol) at "Channels" tab. Point some devices or simulators to send messages in created flespi channels
Put token and channels ids in config file default.xml (keys "flespi.token" & "flespi.channel.ids"). Channels ids can be specified as comma-separated list, e.g. 14,15,78

When application starts it begins pulling messages from specified channels.
Position is parsed  in received messages, and if it's valid and device id is known, then devices' locations are updated.
This is initial basic integration of flespi, conserning only devices' locations. It gives the idea of flespi: to convert different protocols into unified format.
We can parse all messages parameters, implement commands etc as further integration.
Anton, please take a look at the code. You probably will suggest some improvements. Looking forward to proceed with the integration.

Before implementing anything I would like to discuss why we need polling API in the first. I was told that flespi supports pushing data as well. That option should work much better with Traccar. I can be implemented as a separate protocol.

Polling API is better to use to move the processing load of devices communications outside of the traccar. In that case you have all connections processing in the flespi channel and just fetch messages from channel buffer for all devices.
Current implementation of push method - we call it device streams - require device and stream to be registered on the flespi platform - it is additional actions by the user.
Push method of all channel messages from all devices can be implementing by using addiotional adapter - flespi_receiver - it poll channel data and can push it via HTTP REST request to separate web-server. Do you think such method is preffered in traccar operation?
Anyway commands to devices should be sent via outgoing HTTP request from traccar. Will it be possible in latest scenario?

Polling data every 5 seconds seems inefficient. What was the reason for implementing it this way? Is there a plan to implement better API for real time tracking?
Because your code is not part of the standard pipeline, it basically bypasses most of the Traccar functionality. Things like notifications won't work.

Do you have any suggestions on better API for real time tracking?
It will be possible to bind via MQTT to the flespi platform and receive incoming messages in push-like mode, but MQTT protocol, especially async, is even more complicated on the java then HTTP.

What we have in Traccar is WebSocket connection to push updates live. I'm sure there are many other options as well.

WebSockets - you mean Traccar to be used initially as client or as server?
I still do not understand the what is the problem with HTTP connections? We talking about server vs server communication. Both are located in datacenters, we do not have any feasible restrictions on the traffic or latency. In normal workflow we have messages from multiple or device buffered on the flespi and need just normal type of moving them to Traccar with acknowledge of each transferred block by Traccar. Two common used transfer protocol are proposed => HTTP request/response sequence and MQTT PUB/SUB.
So what's wrong with HTTP request/response? Traccar can be used as HTTP server or HTTP client, there is no difference from our side, except less or more to configure.
We can even send data from flespi to Traccar HTTP server separately per device if you need this. But this will be less optimal of course.

Using Traccar as HTTP server would work.

Just to be sure: Traccar as HTTP server => can we post messages from multiple devices(tracking units) in one request or it should be separated request per device?
And outgoing commands => will it be possible to use HTTP client on Traccar to POST commands to the flespi?

I think it's possible to post data from several devices in one request, but I would avoid it.
I guess there is no other option for sending commands, so yes.

Here is an implementation where Traccar act as a server: it listens http pachets on specified port.
https://github.com/tananaev/traccar/pull/3582/commits/fb82a8167b99f706cb25d828bf1d72424ba98a75
It requires some transmitter from flespi channel, and flespi_receiver can be used as such transmitter.
https://github.com/flespi-software/flespi_receiver

Yes, you are right.
It can be simplified: https://github.com/nadezhdamosunova/traccar/commit/563776604e5acfcde8f83ab779406caa8a069ef4

Anton! Corrections are made according to the comments. f20b926497a4d61b6fefcdba57c0ebfb23ef5fc2

Anton, corresponding corrections are made.
Concerning the question about alarm.
Devices can send alarm state to server:
Galileosky device sends alarm state in 15th bit of tag 0x40.
Teltonika device - sends priority value (1 byte) in AVL Data; priority values >= 2 mean alarm state of device.
etc.
In all such cases flespi gateway sets "alarm.event.trigger":true field in message json, which means that device reported about alarm state. It can bee used in notifications triggers.

OK, the code looks good now, but can you please add a couple of unit test cases, ideally with data from various different devices and case (e.g. alarm / no alarm).

I don't see any commits or unit tests. Have you pushed?

Yeah, I didn't push the commit.
Here it is: ad8ee1702e02e02533e9f20e06af960b2cf3c647

Unit tests fixed; getLastLocation call is added if location not provided
2ef987e1352c9d9483e062ff82fa83d0511a0972

Protocol name fixed: 8e14763c45f2a10ac198d311e770282387cd9070
Thank you!

Merged, thanks.

Anton, we have implemented direct streaming from flespi platform, so it is possible to interconnect flespi and traccar directly (with HTTP push-like streaming from flespi). Here is some more information: https://flespi.com/blog/streams-now-pushing-as-well-as-pulling
We will integrate more parameters from flespi messages into traccar soon.

Great, thanks.


build(deps): update Angular to v17.3.1

Proposed changes
With ng update command
Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#455  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


Typo "@database_name"→"@database_name"

bold with escape characters
https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sys-sp-rda-test-connection-transact-sql?view=sql-server-ver15

@hyoshioka0128 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Thanks.


new roadmap pic

In pic: added a couple projects, gave most projects an issue number

:+1:

I like this even doe I have no clue what I’m doing


Strange problems after stack recreate within portainer

Checklist

Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?

Yes
Are you sure you're not using someone else's docker image?
Yes

Have you searched for similar issues (both open and closed)?

Yes

Describe the bug

I recreated the stack with pulling the latest docker image.
Npm-logs show:
s6-rc: info: service legacy-services: starting

❯ Starting nginx ...

❯ Starting backend ...

s6-rc: info: service legacy-services successfully started

[4/1/2023] [8:04:50 AM] [Global   ] › ℹ  info      Using MySQL configuration

[4/1/2023] [8:04:50 AM] [Global   ] › ✖  error     create table `migrations` (`id` int unsigned not null auto_increment primary key, `name` varchar(255), `batch` int, `migration_time` timestamp) - ER_CANT_CREATE_TABLE: Can't create table `npm`.`migrations` (errno: 13 "Permission denied")

i opened a console of the db-container:
root@7e676e9af09f:/# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.11.2-MariaDB-1:10.11.2+maria~ubu2204 mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use npm;
Database changed
MariaDB [npm]> show tables;
ERROR 1018 (HY000): Can't read dir of './npm/' (errno: 13 "Permission denied")
MariaDB [npm]>

Not possible for me to find a solution for that problem.
NPM runs without any problems from the beginning. Recreation of the stack just breaks nearly everything as it seams.
Nginx Proxy Manager Version

v2.10.2
To Reproduce
Steps to reproduce the behavior:
i don't know.
Expected behavior

no errors. Possibility to do "show tables" as root-user. Thats weird!?
Screenshots

Operating System

root-server with debian
Additional context

Solved by moving mysql-dir to a location outside data-dir as described in #2774


Possible regression in scene.pickPosition()

I'm finding this example doesn't pick properly in latest master.  Picks are going off into the distance rather than stopping at a building.
http://cesiumjs.org/Cesium/Apps/Sandcastle/index.html?src=3D Tiles Interactivity.html&label=All

May be related to https://github.com/AnalyticalGraphicsInc/cesium/issues/5703

Appears to be this issue: https://github.com/AnalyticalGraphicsInc/cesium/issues/5676


Make conformance test use proper schema

For https://github.com/istio/istio/issues/17907

In response to a cherrypick label: new pull request created: #17939


Is there a way to check whether specific tube is empty?

As title, is there a way?

You could see if $pheanstalk->statsTube($name)->current_jobs_ready is zero, or you could $job = $pheanstalk->reserve(0); (zero timeout; non-blocking reserve) and see if $job is false, but then you'd potentially have a job reserved.

thanks for your answer


Commented the $#!^ out of the jupyter notebooks

Hey Erin,
I just went through the three notebooks and commented everything super explicitly with links for people to learn more about what I was talking about. I thought that this might help folks who have NO previous python experience learn a bit more about what the notebooks are doing with the API.
If/when you have time, you should probably verify what I wrote (this probably goes without saying but you know) but for now, hoping this helps!
Best,
Vicky

@steevesv this looks amazing. Thank you SO much!


Requirement is pinned for python-synology 0.8.2: urllib3>=1.24.3,<1.25

This library supports an integration in Home Assistant.
The upcoming pip resolver will be more strict in resolving package version conflicts:
http://pyfound.blogspot.com/2020/03/new-pip-resolver-to-roll-out-this-year.html#what-will-change
To avoid future issues it would be good if this library would change its pinning to allow any higher version and just set a minimum version.

Thanks for your support of Home Assistant!

Yes, this is disrupting al lot of dependencies.
Please get rid of the urllib3<1.25 req.

Hi,
hope you don't mind that I use your component in Home Assistant Gentoo Overlay.
Component: https://github.com/onkelbeh/HomeAssistantRepository/tree/master/dev-python/python-synology
I do not use this component myself, but I know that a couple of users do. I have confirmation that it is working with urllib3-1.25.10.
For now, I added a small patch to the Ebuild:
src_prepare() {
    sed -e 's;urllib3>=1.24.3,<1.25;urllib3>=1.24.3;' \
        -i requirements.txt || die
    eapply_user
}

Thanks a lot.


Get.toNamed cannot be returned by sliding on ios

This is my configuration

 defaultTransition: Transition.cupertino

The described behavior could not be observed, and there is no replay code.
Thus, I am closing this issue.


Doesn't work

White screen and shows FP ID: Computing... and doesn't load
Console shows this

Are you encountering the error on a clean installation of the latest Chrome or Firefox?

Worker is a standard API and required to run.

I used chrome with Jshelter https://jshelter.org/ which is an anti-fingerprinting extension
I used Recommended preset but set Web Worker API to "Remove"

Closing for now, but please have no hesitation to re-open if you encounter any issues preventing the test from running.

sometimes more unique and traceable

@abrahamjuliot Can you elaborate on this? If the test can't run in the first place (or even if it were modified to work without WebWorker for example, but leaving JShelter on), would there really be enough bits to unique identify most people across the world that way?

sometimes more unique and traceable

@abrahamjuliot Can you elaborate on this? If the test can't run in the first place (or even if it were modified to work without WebWorker for example, but leaving JShelter on), would there really be enough bits to uniquely identify most people across the world that way?

More like it identifies it as an unusual JS environment indicating it's likely a modified environment. This usually indicates a bot or an antidetect browser (e.g. you're likely to just get blocked right off the bat by security services like Cloudflare).

Yeah, take hardware for example and say blocked hardware is hardware X. How and in what way it is blocked will determine it's class A-Z.  Given all the different ways of blocking and how uncommon it is to block hardware, hardware XA is a better fingerprint than a valid/unique hardware shared by normal browsers.

But how is it a better fingerprint if you're not able to gather as much information with things being blocked in JavaScript? Wouldn't that reduce the number of available bits of info down to where it's not unique enough? I get that you say it's uncommon, but if the fingerprinting isn't based on knowing anything about other users' data (unlike say panopticlick maybe), I'm skeptical as to just unique it can really be. Is there any more evidence on this available?

But how is it a better fingerprint if you're not able to gather as much information with things being blocked in JavaScript? Wouldn't that reduce the number of available bits of info down to where it's not unique enough? I get that you say it's uncommon, but if the fingerprinting isn't based on knowing anything about other users' data (unlike say panopticlick maybe), I'm skeptical as to just how unique it can really be. Is there any more evidence on this available?

Not supporting a widely supported feature that every modern browser has is inherently weird and therefor makes you stand out. You don't need to quantify bits of information just as you don't need to quantify bits of information to know a flying pig is unique because pigs don't fly.

You don't need to quantify bits of information

Why not? More than one person uses JShelter, so I think there is more than one flying pig in that sense. I thought that was the whole point of needing at least as many bits that can add up to as many people/devices there are in the world to really be able to call it "unique".

I'm skeptical as to just how unique it can really be. Is there any more evidence on this available?

How unique depends on the site and volume. Below is a visual snapshot of the resistance/engine hash stats on CreepJS. I can't find all variations of JShelter visually, but I can put all the unknowns into one bucket. That is already incredibly unique. If we wanted to, we can map out all possible configurations of JShelter and label them, to make tracing specific browsers simpler.

How unique depends on the site and volume

Ok, I was under the impression that "unique" meant there is quantifiably no other browser/device on the planet with this same fingerprint, regardless of the site that was visited. Perhaps I should ask for clarification on what your definition of unique is.

...quantifiably no other browser/device on the planet with this same fingerprint

Web tracing is more confined to limited contexts or a specific set of domains. Quantifying at the planet level is unnecessary.

definition of unique

Rare for a given context. It can be shared with others and still be unique. Identifying individual actors is a different matter, not focused on here.

WebWorker/JS disabled

Blocked entropy is still entropy, but if a significant amount of normal traffic is blocking similarly, it becomes less unique. How unique will vary from domain to domain.


XLSX bundle size using Webpack

The XLSX bundle size after webpack build is huge. Before minification, the size is 1.03 MB. Is there any way to reduce the bundle size using any modular techniques? Examples of packages are antd and lodash which provides options to reduce the bundle size. It will be good to have a plugin for webpack (webpack-plugin-xlsx) which reduces the bundle size (by cherry-picking relevant modules). Thanks.

There's really not much we can do on the modularity front.  There are three major hurdles:

Webpack and other bundlers are unable to tree-shake CommonJS modules.  Even modern browsers and node cannot process ES6 modules natively (you have to use a transpiler), in part because the loader spec hasn't been finalized, so we are unlikely to switch to ES6 module structure anytime soon.

Webpack has difficulty processing typeof-guarded require statements.  See my comment from another thread for more details, but basically Webpack isn't intelligent enough to process libraries which have optional hooks in the browser and typeof-check for require.

Most of the logic is shared across formats.  For example, all of the formats use the spreadsheet format library in some capacity, either on the parse side (like XLSX and XLSB and XLS) or on the write side (like CSV or JSON).  As for other libraries, Lodash is a hodgepodge of utility functions so it makes sense to be able to pick and choose features.  _.now is basically independent and can live on its own.

If you know you aren't dealing with non-English users, you can suppress the codepage optional library in your webpack config:
module.exports = {
	/* ... */
	resolve: {
		alias: { "./dist/cpexcel.js": "" }
	},
	/* ... */
}

For me it works with webpack code splitting.
With
const xlsx = await import('xlsx');

or
import('xlsx').then(xlsx => {
    // do something with xlsx
});

the main bundle size isn't affected and the xlsx packages is split into a separate 344KB bundle, which is only loaded via the network when needed.

0.15.0 ships with a mini build that is limited to XLSX operations (xlsx.mini.min.js). It is 180K uncompressed / 57K compressed.
XLS support requires the huge codepage library, there isn't much room for reducing the bundle size. If there is another specific slice that you need (say, just the read functionality), we can look into preparing another mini build.

Looks like xlsx.mini.min.js still requires codepage when I try to use that build instead of the default one provided by the package. Am I missing something here?

We tested in a direct script tag injection (http://sheetjs.com/demos/tablemini) but not in a bundle setup :( it'll be corrected in the next release

Any updates? Will proper tree-shaking be available?

@yss14 - is there any way to do what you did in Angular?

@itayperry Never used Angular, but I think so. Just google for Code-splitting in Angular ;) That's what I did with react. The webpack setup has to support code splitting btw.!


Add URI to elastic credentials.

For user convenience, and for parity with the current environment.

Does this get automatically deployed? Just tested by creating a new service instance, but didn't see a uri.
/cc @jcscottiii

and are there any steps for getting the uri for existing instances. i think @afeld tried to unbind and rebind right?

This does deploy automatically, but we ran into some unrelated issues with the kubernetes deployment yesterday that blocked this from going out. This change should be available on production now.


ngMock.$httpBackend.verifyNoOutstandingRequest don't work as expected

Consider the following failing test:
describe('verifyNoOutstandingRequest does not work', function () {

    it('should flush call', inject(function ($http, $httpBackend) {
        $httpBackend.when('POST', '/api/feedback', {}).respond('done');

        var result = '';
        $http.post('/api/feedback', {}).then(function (ret) {
            result = ret.data;
        });

        expect(result).toBe('');
        $httpBackend.flush();
        expect(result).toBe('done');
        $httpBackend.verifyNoOutstandingRequest();
    }));

    it('should detect outstanding request', inject(function ($http, $httpBackend) {
        var result = '';
        $http.post('/api/feedback', {}).then(function (ret) {
            result = ret.data;
        });

        expect(function () {
            $httpBackend.verifyNoOutstandingRequest();
        }).toThrow('Unflushed requests: 1');
    }));
});

The test should detect outstanding request doesn't work. I'm using angular-1.2.5 and jasmine-2.0.0

We (@bengro and @tomwhoiscontrary) are seeing what we believe to be the same bug. Here are some test cases for handling of unstubbed requests which we believe should all pass:
describe('$httpBackend', function () {
    var $httpBackend, $http, $rootScope;

    beforeEach(inject(function (_$httpBackend_, _$http_, _$rootScope_) {
        $httpBackend = _$httpBackend_;
        $http = _$http_;
        $rootScope = _$rootScope_;
    }));

    it('should fail to flush if there are unexpected requests', function () {
        $http.get('http://example.org');

        expect($httpBackend.flush).toThrow();
    });

    it('should fail to digest if there are unexpected requests', function () {
        $http.get('http://example.org');

        expect($rootScope.$digest).toThrow();
    });

    it('should fail verify that there are no outstanding requests if there are unexpected requests', function () {
        $http.get('http://example.org');

        expect($httpBackend.verifyNoOutstandingRequest).toThrow(); // fails
    });

    it('should fail to verify that there are no outstanding expectations if there are unexpected requests', function () {
        $http.get('http://example.org');

        expect($httpBackend.verifyNoOutstandingExpectation).toThrow();
    });
});

The test for verifyNoOutstandingRequest fails. The documentation for verifyNoOutstandingRequest states that it "verifies that there are no outstanding requests that need to be flushed". However, if we make a request, do not flush, and then call verifyNoOutstandingRequest, it returns silently.
Have we misunderstood what verifyNoOutstandingRequest is for? Are we misusing it? Or is there a bug?

I'm seeing this as well. I'm using angular version 1.3.15.

I got the same problem, in fact I want to test the below program:
item.like = function (item) {
  if (item.isLiked) {
    api.likes.unlike($.param({collect_id: item.id})).$promise.then(
      function () {
        if (item.isLiked) {
          if (angular.isDefined(SiteCatalyst.pageName)) {
            delete SiteCatalyst.pageName;
          }
          item.isLiked = false;
          item.likesCount--;
        }
      }
    );
  }
  else {
    api.likes.like($.param({collect_id: item.id})).$promise.then(
      function () {
        if (!item.isLiked) {
          item.isLiked = true;
          item.likesCount++;
        }
      }
    );
  }
};

Testing Code:
describe("ItemService", function() {
var $rootScope, ItemService, httpBackend, item;
beforeEach(inject(function (_$rootScope_, _ItemService_, _$httpBackend_) {
  $rootScope = _$rootScope_;
  httpBackend = _$httpBackend_;
  ItemService = _ItemService_;
  item = {id:<PHONE_NUMBER>202202, likesCount: 5};
}));

afterEach(function() {
  httpBackend.verifyNoOutstandingRequest();
  httpBackend.verifyNoOutstandingExpectation();
});

describe("#like", function() {
  describe("when user already like the item", function() {
    beforeEach(function() {
      item.isLiked = true;
    });
    it("should call DELETE /api/like/collect API", function() {
      httpBackend.expect("POST", "/api/like/collect", {collect_id:<PHONE_NUMBER>202202})
        .respond({"status":"success","code":200,"data":"ok","meta":{"hits":1}});
      ItemService.like(item);
      $rootScope.$digest();
      httpBackend.flush();

      expect(item.isLiked).toBeFalsy();
    });
  });

  describe("when user haven't like the item", function() {
    beforeEach(function() {
      item.isLiked = false;
    });
    it("should call POST /api/like/collect API", function() {
      httpBackend.expect("POST", "/api/like/collect", {collect_id: 1})
        .respond({});

      ItemService.like(item);
      httpBackend.flush();
      expect(item.isLiked).toBeTruthy();
    });
  });
});

});
but after the program go into like function, it can't reach the api, it popup the below error:
IE 11.0.0 (Windows 7 0.0.0) [Service] ItemService #like when user already like the item should call POST /api/like/collect API FA
Error: Unexpected request: POST https://domain/api/like/collect
No more request expected
at $httpBackend (c:/xxx/js/angular-mocks/angular-mocks.js:1178:5)
at s (c:/xx/js/angular/angular.min.js:74:109)
at Anonymous function (c:/xx//js/angular/angular.min.js:71:422)
at J (c:/xx//js/angular/angular.min.js:101:76)
at J (c:/xx//js/angular/angular.min.js:101:76)
at Anonymous function (c:/xx//js/angular/angular.min.js:102:249)
at h.prototype.$eval (c:/xx//js/angular/angular.min.js:113:21)
at h.prototype.$digest (c:/xx//js/angular/angular.min.js:110:109)
at Anonymous function (c:/xx/spec/services/itemSpec.js:35:11)

I assume this was fixed by https://github.com/angular/angular.js/commit/267ee9c892b0eb40908700ee2435793f8c6c1c84

Hi guys,
Please excuse me if this is not the right place to ask. My team is working with Angular 1.4.x, and we would need this fix to be available on that branch of Angular as well.
Is it possible to create a PR for this fix on 1.4.x branch?
Kind regards,
Waldemar

Sorry, @waldemar-schwarz, the 1.4.x branch is no longer supported.
And even if it were, the fix (267ee9c89) involved a breaking change, so we couldn't introduce it to that branch anyway.

Understood. Thank you @gkalpak for checking & explaining.


WRP-28251: Create documentation for dynamic color mode

Checklist

[x] I have read and understand the contribution guide
[ ] A CHANGELOG entry is included
[ ] At least one test case is included for this feature or bug fix
[x] Documentation was added or is not needed
[ ] This is an API breaking change

Issue Resolved / Feature Added
Custom colors sample needs documentation.
Resolution
Added jsdocs, comments within the code and a readme file.
Additional Considerations
Links
WRP-28251
Comments
Enact-DCO-1.0-Signed-off-by: Stanca Pop<EMAIL_ADDRESS>

The comments ans JSDocs you've added look good to me, but we need to keep this PR on hold until travis fail is fixed


[test_utils] unused methods

golangci-lint pointed out that these two methods are not used anywhere.

Thanks a lot for your contribution


[RFC] UX examples initiative

This come from a discussion started on the Symfony slack.
Someone asked about adding new UX packages for common use case: modal, lightbox, date pickers, WYSIWYG, etc
This has low value for Symfony UX because most of these usecases have well maintained libraries that would be trivial to integrate with Stimulus and Turbo, and it have a high maintenance cost to have those inside the UX initiative.
Enough context, what is this about ?
@weaverryan gave a super interesting idea, instead of creating individual packages with low value, we could have an examples section on ux.symfony.com
This allows for:

Greater flexibility with less efforts, we can add or remove examples with little consideration for covering every usecases or even BC
Greater surface coverage for frontend needs: surely date pickers are useful but providing an example with a 10 lines stimulus controller is probably enough
Inspire the community: this will be a learning resource, seeing those examples will help developers see what they can do with Stimulus and the ecosystem to build awesome experiences for their users

Some challenges

We need a base section with design on the UX website to enable contributing examples
We would want a LOT of examples for this to be useful, so it needs to be easy to contribute, maintain but mainly it should be easy to explore when on the website
We need to curate libraries used on the examples, even though it's just an example, we want users to be able to use them in their projects with confidence

Some inspiration

https://stimulus-use.github.io/stimulus-use/
https://www.stimulus-components.com/
https://twitter.com/ilrock__/status/1631315562390519809

Let's gather feedback, examples and make it happen ✨

Let’s get this party started :).
The live components section of the site already has demo pages, so we can use that design at least as a starting point. We’ll also need a /demos page - I can get a design for this if needed, but that shouldn’t stop someone from bootstrapping that.
The code for each demo should be as standalone as possible: probably a dedicated controller class for each (so a user can easily see its code in an uncrowded way if seeing the controller is relevant).
There are other details to figure out, but nothing scary. We just need to get it started so we can load it up with demos.

Yes, we just need to do it.
Started something today to get the ball rolling.
I based the design on live components and we can iterate from there.
Expect a PR soon 🤞

Yes please! It can be rough - 💯 to iteration!

I suggested something similar in 2 recent issues. One is advocating for a symfony ecosystem section and another is for a unified component controller. Sadly not many people responded even though those that did liked the idea.
If we had an example for something like Turboframes integrated with a goldenlayout type component, it would make it trivial to change the code you load inside those frames. It would offer a great starting point for beginners to build web applications, dashboards, and one page apps.

unified component controller

Can you explain this concept?

If we had an example for something like Turboframes integrated with a goldenlayout type componen

Yea, that sounds like a cool example :)


java.lang.ClassNotFoundException: kotlin.jvm.internal.markers.KMappedMarker

I get the following error:
MapOutputTracketMasterEndpoint stopped!
Caused by: java.lang.ClassNotFoundException: kotlin.jvm.internal.markers.KMappedMarker

Only by running:
OkHttpClient client = new OkHttpClient();

I'm running an Apache Spark job and this command shuts the job down for some reason.

There isn't anything we can help you with here.  It is likely an issue with classloaders, your build or how jobs are launched in Spark.
I suggest asking a question on stackoverflow with a reproduction.
As a workaround you could try downgrading to OkHttp 3.12.x.  It would at least tell you whether it's a kotlin specific issue or if you hit an issue with okio missing (another dependency).


[Automation] Energy Scale Test case

Energy scale testing
- Power Capping changes and verify the Power voltage changes

https://github.com/openbmc/openbmc-test-automation/issues/188  - Didnt find exact equivalent . May be I have created in RTC. @gkeishin could you add equivalent development story here

https://github.com/openbmc/openbmc/issues/1182  - Power Thermal related story.

https://github.com/openbmc/openbmc/issues/1213 - Currently Parking all Energy Scale related stories under this.

@saqibkh  I am parking all development story under this.

https://github.com/openbmc/openbmc/issues/1183 also related to this.

Based on discussion in global scrum, @gtmills will be working on automation part of it.

[ ] Need to have list test cases associate with energy scale / power / thermal management

[ ]  Come up with list of test cases which can automate  / manual execution

[ ]  Create stories for automation -   Automation need to be done.

Probable list of TCs:

[ ] BMC Sensor Reporting – IPMI / REST / GUI
[ ] Reading Temperature
[ ] Reading Power
[ ] Power limit change at power off and during runtime
[ ] Activate / Deactivate power limit
[ ] Powercapp enable / disable

George Keishing:
witherspoon phosphor-settings-manager[1060]: Input parameter for PowerCap is invalid Input: 500
Watts is not in range:556..3389
Steven Sombar:
Power limits used to be 500...3050
Matt Spinler:
I recently made a change.  The min is now 556 watts.
I did the fix with https://github.com/openbmc/openbmc/issues/2944
Matt Spinler:
The old limits are 'output power', as seen by the OCC, and the
user only deals with input power, so the BMC code will take that value
they typed in and derate it (by .9) before sending it to the OCC.
So I had to adjust the ranges of values that we allowed the user to type
in so that the OCC would still be happy with them.
500/.9 = 556,  3050/.9 = 3389

https://gerrit.openbmc-project.xyz/#/c/9732/


current VM has user vagrant

after a vagrant up I have both vagrant and sirfuser.
if too hard to fix in the vagrantfile, can remove the user manually before shipping.

Is that true? I've got a Ubuntu user, which I don't manage to remove with the trick we used before!

yes it's true :-;
at least on my windows version with an "vagrant box upgrade" (recommended to get the latest ubuntu).
let's just say that you remove the user after VM creation (add it to our list of steps, and then shift this to 1.1)

amazing

so, I had a vagrant user because I was building on trusty. Now when using xenial as I should have, I indeed also have a user ubuntu.

I can remove the Ubuntu user manually from the VM if needed.

I guess I'd do that in the final one yes. Minimal confusion is good. add it to the checklist :-;
I suppose you tried this in the vagrant script
sudo deluser --remove-home ubuntu

closed by #64


Fixed the public scope of the buildEither(component:) components of URLBuilder

Resolves #11

Codecov Report

Merging #13 (bdf0fb2) into main (3645145) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##             main      #13   +/-   ##
=======================================
  Coverage   93.12%   93.12%
=======================================
  Files           8        8
  Lines         407      407
=======================================
  Hits          379      379
  Misses         28       28

Impacted Files
Coverage Δ

Sources/APIRouter/URLBuilder.swift
88.00% <0.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


ImmutableMash inconsistent access to keys/values

Description
When trying to determine if a key in a Hash exists I noticed that the functionality changed between versions we are moving from/to.
Based on how the hash is set up we can either get a valid response from the Mash .has_key? function or not this used to be ok, now it is broken.
The use case I found this in was setting up attribute at runtime, storing them in the node object and getting them later in the run.
i.e.:
node.default['test']=[]
node.default['test'] << {"a"=>"OK"}
node['test'][0].has_key?("a")
node['test'][0].has_key?(:a)

Chef Version
14.14.29
Could not test on a lower version of chef last known working is 12.14.89
Tested also on 15.14 version
Platform Version
Tested on Linux
Replication Case
test=[]
test << Chef::Node::ImmutableMash.new({"a"=>"OK", :b=>"OK"})
test[0].has_key?("a")
test[0].has_key?(:a)
test[0].has_key?("b")
test[0].has_key?(:b)
test[0][:a]
test[0]['a']
test[0][:b]
test[0]['b']

Chef Shell Output
chef (14.14.29)> test=[]
 => []
chef (14.14.29)> test << Chef::Node::ImmutableMash.new({"a"=>"OK", :b=>"OK"})
 => [{"a"=>"OK", :b=>"OK"}]
chef (14.14.29)> test[0].has_key?("a")
 => true
chef (14.14.29)> test[0].has_key?(:a)
 => true
chef (14.14.29)> test[0].has_key?("b")
 => false
chef (14.14.29)> test[0].has_key?(:b)
 => false
chef (14.14.29)> test[0][:a]
 => "OK"
chef (14.14.29)> test[0]['a']
 => "OK"
chef (14.14.29)> test[0][:b]
 => "OK"
chef (14.14.29)> test[0]['b']
 => nil

vs working version (expected output)
chef (12.14.89)> test << Chef::Node::ImmutableMash.new({"a"=>"OK", :b=>"OK"})
 => [{"a"=>"OK", "b"=>"OK"}]
chef (12.14.89)> test[0].has_key?("a")
 => true
chef (12.14.89)> test[0].has_key?(:a)
 => true
chef (12.14.89)> test[0].has_key?("b")
 => true
chef (12.14.89)> test[0].has_key?(:b)
 => true
chef (12.14.89)> test[0][:a]
 => "OK"
chef (12.14.89)> test[0]['a']
 => "OK"
chef (12.14.89)> test[0][:b]
 => "OK"
chef (12.14.89)> test[0]['b']
 => "OK"

Fixed by #7840


Anchors for sub-sections

Hi, it seems that ReDoc only supports section anchors for first level headings. Is there any possibility to support anchors for sub-sections as well?

@jaingaurav thanks for reporting. The same issue is tracked in #60. I will close this.


support hide from transcript

const timestamp = new Date().toISOString()
const today = timestamp.split('T')[0]
const [user, setUser] = useState('{}')

const handleResponse = (response: any) => {
  const message = response.message
  const messageParts = message.split('```json')
  if (messageParts.length > 1) {
    const updatedProfile = messageParts[1].split('```')[0]
    setUser(updatedProfile)
  }
}

<System>
You are MemoryGPT. You have the ability to store memories that User explicitly asks you to remember. You accomplish this by managing a JSON profile of the User.

Today is ${today}. Browsing: disabled.
</System>

<Transcript />

<System>
Here is the User's profile so far, based on information they've asked you to remember.

###
${user}
###

You should respond to the user as you normlaly would. Additionally, if you agree to remember something that the User asks you to remember, include the updated User profile (in valid JSON format) fenced by markdown-style fenced json, like this:

```json
{
  "updatedProfile": "goesHere"
}

${input}

```

fixed


Support ddc-source-vsnip

ddc.vim has stopped relying on vsnip-integ and now uses the source here.
This will be a PR to add that support.

Related PR
https://github.com/hrsh7th/vim-vsnip-integ/pull/66#event-9696422830

Thank you


Zappa step installation fails

I get stuck on the zappa installation step ...
Installing on raspberry pi, Stretch OS.
When I try to install zappa, it reaches for lambda-pacakges-0.16.1, giving me the following error:
Collecting kappa==0.6.0 (from zappa)
Downloading kappa-0.6.0-py2-none-any.whl
Collecting lambda-packages==0.16.1 (from zappa)
Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 342, in run
requirement_set.prepare_files(finder)
File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 554, in _prepare_file
require_hashes
File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 278, in populate_link
self.link = finder.find_requirement(self, upgrade)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 465, in find_requirement
all_candidates = self.find_all_candidates(req.name)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 423, in find_all_candidates
for page in self._get_pages(url_locations, project_name):
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 568, in _get_pages
page = self._get_page(location)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 683, in _get_page
return HTMLPage.get_page(link, session=self.session)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 795, in get_page
resp.raise_for_status()
File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/models.py", line 893, in raise_for_status
raise HTTPError(http_error_msg, response=self)
HTTPError: 404 Client Error: Not Found for url: https://www.piwheels.hostedpi.com/simple/lambda-packages/
(venv) pi@raspberrypi:~/kodi-alexa $
What may be causing this?
I reported this at the Zappa github site, but got no response ...
perhaps I did not report it right, but I am a noob at this, so please bare with me

Basically, it's because you're doing it from an rPi, and lambda-packages doesn't appear to be available.  Just skip that package, I'd think.

But these packages are mandatory to upload code to AWS?

The packages in requirements.txt are mandatory, yes.  lambda-packages is a workaround to get python-Levenshtein up to AWS, but it will work without it.  In fact, on AWS, if I recall correctly, it was slower with it than without..
@m0ngr31 we should probably remove it from the docs?  Pretty sure it was slower for you with it?

Try pip uninstall python-Levenshtein and zappa deploy dev again and see if that fixes it

Ok we discovered that there's a known bug in pip which breaks when additional indexes 404. The bug is still open in pypa/pip, and we can't expect a fix to find its way into Debian any time soon.
However, we (piwheels) have mitigated this by creating empty directories for packages we haven't successfully built, which means pip gets an empty list of files rather than a 404 (which is an enhandled exception causing the fatal error).
Hopefully that means that this is no longer an issue here.

Thanks for the heads up @bennuttall !

@kebogaer is this working for you now?

Yes, zappa completes installation
thanks for the explanations


Move example revolver-config.yaml to non-default name

Otherwise local changes to enable running the code locally keep showing up as a diff.

Done in https://github.com/Innablr/revolver/pull/15


Add manual reference creation via GUI

Feature request: I haven't found this feature, but it may exist:  Add relationship between to entities within the GUI (without importing).  This would be good way to enable newbies to learn the proper syntax of the import/export files.

RTFM


Memory issues

After all we have learnt about memory usage with FMRIPREP, it is time to apply this to MRIQC and leverage the new features of nipype 1.0.

Duplicate of #703 .


Shortcuts for common trigger formulas, and reference lookups

There are common trigger formulas such as timestamps, authorship columns, detect duplicates and UUID which could be created via shortcuts.
Reference lookups, and aggregations on lookups that return record lists, can be challenging for new users. Would be great to make lookups and aggregations easier via the UI.

Thank you very much for this neat feature! I was wondering whether it would be possible to add an option to define such predefined functions in a per-document basis. A bit like Access Rules let one define a table for custom properties.

It would be nice if there is a snapshot of the feature in the issues when it is closed. So that we can understand what is being delivered - a link to some write-up or manual page would be helpful as well.


Fix issue with non-unique keys React warning

Details
Using dangerouslyDisableWhitespaceCollapsing=true was causing @native-html/transient-render-engine to produce a faulty tree in certain situations, where indexes are not reflecting real position, hence we were ending up with multiple elements that had index of 0. This PR removes dangerouslyDisableWhitespaceCollapsing, but we actully need to disable whitespace collapsing, so we set white-space: pre in global HTML renderer styles in order to achieve that.
Fixed Issues

https://github.com/Expensify/App/issues/8655
Tests

In any chat send a message that contains two code blocks and a line break between them, for example

```
some code
```
```
some more code
```

2.1 Web: Open JS console, verify that there is no warning saying Warning: Encountered two children with the same key, 0
2.2 Native platfroms: Launch the app, verify that there is no yellow box warning on the bottom of the screen that says Warning: Encountered two children with the same key, 0
3. All platforms: send the following message in any chat
0 spaces
 1 spaces
  2 spaces
   3 spaces
    4 spaces

Verify that spaces are preserved

[x] Verify that no errors appear in the JS console

PR Review Checklist

Contributor (PR Author) Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for Staging and/or Production testing in the QA steps section
[ ] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose and it is

[x] If a new CSS style is added I verified that:

[x] A similar style doesn’t already exist
[x] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

PR Reviewer Checklist

[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn’t already exist
[ ] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

QA Steps

Send the following message in any chat

0 spaces
 1 spaces
  2 spaces
   3 spaces
    4 spaces

Verify that spaces are preserved

[x] Verify that no errors appear in the JS console

Screenshots

Web

https://user-images.githubusercontent.com/9059945/168628801-abb2e88e-521b-4cc1-baf8-efb39dd50f25.mp4
Mobile Web

https://user-images.githubusercontent.com/9059945/168628895-5425b996-8b04-4339-a562-2cd6e30cdcb3.mp4
Desktop

I'm unable to launch the desktop app due to https://github.com/Expensify/App/issues/8888. It is not present if you downgrade to certain node and npm versions, but since I use MacinCloud, I'm unable to do so. So if someone with a mac could test it and upload a video, I would highly appreciate it.
iOS

https://user-images.githubusercontent.com/9059945/168629329-b2c06554-8086-46d2-b0fd-fd486d0469f0.mp4
Android

https://user-images.githubusercontent.com/9059945/168629361-ffca134a-da7d-4cc1-8cc0-10e108af07c8.mp4

Please update QA steps to test the Formatting of messages on all platforms. This change should not introduce any formatting changes.

Done

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by @AndrewGable in version: 1.1.63-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by @AndrewGable in version: 1.1.63-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by @AndrewGable in version: 1.1.63-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


update "objectVersion" attribute map list

Added additional version mapping for newer editions of Windows Server.

@LameITDude : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Error in development using the preact plugin

Hello!
I'm getting this issue when I access to my application in the development environment:
Cannot use 'in' operator to search for 'href' in undefined
TypeError: Cannot use 'in' operator to search for 'href' in undefined
    at ProxyComponent.render (node_modules/next/dist/lib/link.js:168:0)
    at ProxyComponent.hotComponentRender (node_modules/react-hot-loader/dist/react-hot-loader.development.js:579:0)
    at ProxyComponent.proxiedRender (node_modules/react-hot-loader/dist/react-hot-loader.development.js:587:0)
    at callMethod (node_modules/preact-compat/dist/preact-compat.es.js:491:0)
    at ProxyComponent.render (node_modules/preact-compat/dist/preact-compat.es.js:502:0)
    at renderComponent (node_modules/preact/dist/preact.esm.js:728:0)
    at setComponentProps (node_modules/preact/dist/preact.esm.js:676:0)
    at buildComponentFromVNode (node_modules/preact/dist/preact.esm.js:856:0)
    at idiff (node_modules/preact/dist/preact.esm.js:397:0)
    at innerDiffNode (node_modules/preact/dist/preact.esm.js:516:0)

At that point, the child variable in next/link doesn't have the proper props property initialized, so the in operator fails.
After some investigation, it seems the issue is related with react-hot-loader. There are an open issue about component initialization in Preact: https://github.com/developit/preact/issues/1007
@mopduan opened the same issue 1 month ago, but it was closed without any reply: #167.
Thanks for the help!

This was an UglifyJS bug, and has been fixed in Preact 8.3.0.

Thank you for solving it! :)


json_editor doesn't recognize "rx", "ry", "rz" and "or"

https://lottiefiles.github.io/lottie-docs/playground/json_editor/ doesn't recognize rotaiton related properties ("rx", "ry", "rz") and  Orientation ("or") properties
example file: https://github.com/LottieFiles/lottie-docs/blob/main/docs/examples/3d_parenting.json

My guess is it isn't handling schema conditionals correctly


ENYO-2222: SimplePicker does not handle item's active property after …

Added Group / GroupItem support for SimplePicker / picker child
Enyo-DCO-1.1-Signed-off-by: Igor Kuzko<EMAIL_ADDRESS>

Closing PR as jira has been closed.


Fix checkstyle issues and disable sourcemaps

ESLint is back, yay. But while it was gone, other PRs introduced checkstyle issues, oh no. This fixes those issues, so that builds may stop failing.
Secondly, this also disables sourcemaps. I was unable to build the project due to out-of-memory errors, and disabling sourcemaps proved a workaround. We can probably enable them again once we get rid of all the old dependencies that come with our current ESLint config.

Not having source maps is really annoying. II'm not a fan of disabling them

Where did you see the errors? I may just be that my machine has more RAM, but this just worked fine for me:
❯ git diff
diff --git a/vite.config.ts b/vite.config.ts
index cfb30b8b8b..7238421677 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -9,7 +9,7 @@ export default defineConfig({
     plugins: [react(), svgr(), viteTsconfigPaths(), preserveDirectives()],
     build: {
         outDir: "build",
-        sourcemap: false,
+        sourcemap: true,
     },
     server: {
         open: true,

opencast-admin-interface (c81ceb4) [!?] via  v20.12.2
❯ npm run build

What happened when building was
=============
vite v5.2.12 building for production...
✓ 2344 modules transformed.
rendering chunks (1)...
<--- Last few GCs --->

[14902:0x6a73ab0]    22156 ms: Mark-Compact (reduce) 2026.4 (2082.0) -> 2026.2 (2083.0) MB, 994.04 / 0.00 ms  (average mu = 0.176, current mu = 0.010) allocation failure; scavenge might not succeed

<--- JS stacktrace --->

FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----

 1: 0xb82c28 node::OOMErrorHandler(char const*, v8::OOMDetails const&) [node]
 2: 0xeed540 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [node]
 3: 0xeed827 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [node]
 4: 0x10ff3c5  [node]
 5: 0x1117248 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]
 6: 0x10ed361 v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node]
 7: 0x10ee4f5 v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node]
 8: 0x10cbb46 v8::internal::Factory::NewFillerObject(int, v8::internal::AllocationAlignment, v8::internal::AllocationType, v8::internal::AllocationOrigin) [node]
 9: 0x1527976 v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [node]
10: 0x7f9b8f699ef6
Abgebrochen (Speicherabzug geschrieben)

but now I can't reproduce it anymore. Maybe a hiccup in my system?

Maybe this is due to #709? 🤔

If we maybe can mitigate this with env exports if necessary, do we want to merge it like this and add the env exports to  the package.json and/or the CI scripts if necessary?

Looking at the CI workflows, we don't seem to run in memory issues there:
https://github.com/opencast/opencast-admin-interface/actions/workflows/test.yml


Method to update 'ContainerId' in 'performOpen' at start

Hi,
Thanks for AMQP1.0 library.
I am able to communicate with RabbitMQ, however I am looking for a methods to update field ContainerID when the connection is open.
Please advice on implementing a method or using existing method.
With thanks
Vinitha

The container ID is currently randomly generated. I'm happy to add an option to explicitly configure it if needed.
I'm not very familiar with the RabbitMQ implementation, does it use the container ID for some particular purpose?
Thanks

I am currently testing my communication with RabbitMQ, however the actual server implementation is designed to handle messages from different clients based on the Container ID.
It will be useful if you may provide the option of configuring Container ID. Highly appreciate your contribution.
Thanks for replying.

I added ConnContainerID to allow this. Please let me know if that adequately resolves the issue.

Thanks for updating the source.
I pass the "Container ID" when connection request is made, as below:
client, err := amqp.Dial("amqp://guest:guest@localhost:5672/", [amqp.ConnContainerID("my.Machine.1"))]

What I find is that the Dial function is not copying my container ID to the conn struct. when calling the function newConn. Hence the container ID is not passed in the frame.
Attached the screenshot for your reference. Please let me know if I am missing something.
Thanks
Vinitha

Thanks for confirming


update package.json link to match GitHub

Noticed this was outdated on npmjs.com

Codecov Report

Merging #209 (718a0fa) into master (edcddb7) will increase coverage by 0.15%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #209      +/-   ##
==========================================
+ Coverage   97.79%   97.95%   +0.15%
==========================================
  Files          10       10
  Lines         635      635
  Branches      146      163      +17
==========================================
+ Hits          621      622       +1
+ Misses         14       13       -1

Impacted Files
Coverage Δ

src/random.ts
97.39% <0.00%> (+0.86%)
: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 edcddb7...718a0fa. Read the comment docs.

Sorry, github is out of date, https://tinycolor.vercel.app is the right one.


Update of dependencies/repositories on devices flow

Hi everyone !
Motivation: update of repositories on devices
We need to discuss the flow of updates ! Here are my first thoughts on this process. I’d be glad to read your thoughts in this issue !
On master device
What are the possible things to be updated ?

pyro-engine as a repo i.e. the source code is ON the master rpi
pyro-vision as a package i.e. the source code is NOT ON the master rpi, it is only a library
… ?

How could it be updated ?

if repo, either:

DL the new source code using the tag or the hash of the commit for a given repo (in that case, we need to be careful with the .env file for instance, needs to be outside the repo so as not to be erased when DL again the source code)
use git (installed on the rpi) to pull the diff

if package: pip install latest version

How is the hash computed ?

if we have only one repo: take the latest tag or the latest hash of the commit
if we have multiple repo (the case for us I think): we need to have a way to know which repo needs to be updated !! For that I see a solution:

we add a parameter to the route in the API: the name of the repo for instance. The master rpi checks for all the repos it uses the hash it should have and compare it to the hash it currently has. Now if the repo needs to be updated, the rpi knows which repo it is. It does not have to update all the repos.

On camera device
What are the possible things to be updated ?

script to take picture
script to monitor the device (temp, etc)

How could it be updated ?

Master rpi gets the new script somehow
Master rpi ssh over camera device (for that we need to know IN ADVANCE what the ip addresses of the camera rpis are - probably need to open an issue on that)
New script is copy/paste on camera device

More general comments
Not necessary to use Ansible. Python scripts or bash scripts in cron jobs should be enough and probably simpler.

Hi Chloé, thanks for opening the issue !
About tools we want to be able to be updated

pyro-engine indeed —> so quite easy to update
pyro-vision : eventually the package is only a dependance in pyro-engine.
The only thing to keep updated is the version of torch and torchvision computed for ARM

Either we decide to not update version now (in the scope of the MVP) --> seems reasonable but need to validate this point with vision team
Or, we can when looking fo updates, identify the latest version of those builds in the lastest pyro-vision release, and updates consequently --> seems feasible
Or look in pyro-vision realeases for the version asked in pyro-engine requirements, and download it --> seems feasible

About the how

Okay with your propositions (repo or package)

Good point about the .env !

About hashing
Is having git really heavy ? (Sounds easier but DL source code is okay as well)
However, might be a bit more complicated when there is more than one repo/package.
So far, in the case of the MVP, we might only have direct dependance to pyro-engine. what do you think ?
And there could be a workaround to update pyro-engine, then, in the "updating process", update some requirements files (specifying which other dependences to update --> do you see my point ?)
But more general use case might need to be considered. With multiple repo, the API should not have a parameter for each potential dépendance ... except if we consider storing a dict of repo:hash as hash .. why not..
Updating camera devices :
Let us consider we only need to update these two scripts ( not adding a new script )
I was thinking it not so complicated to set up a fixed IP address, and it must be handled over an issue as long the central pi must have a fix address if we want pi caméra to reach the webserver. What do you think ?
Hence, I am okay with you suggestion

pi camera scripts are in pyro-engine, so by updating pyro-engine, we update those scripts
Copy paste (by scp / ssh)
Plus, need to handle updates dependencies (would be in a specific req file)of these scripts  (install on central and copy paste to pi cameras ? and install as well ? )

About using ansible
About using ansible, some parts are easier only with python/bash but to handle the pi caméra addresses and credentials, it would maybe easier to handle the fleet with ansible. But I implies to set up ansible on central pi as well, but sounds feasible.
Eventually, to update the fleet (adding or revoking a pi camera...)

revoking a camera. It might be handled by a new route on pyro-api/device (we store on device table, the list of the children of the central pi ..) to retrieve the pi camera id list, and update the local fleet consequently (by updating the config file hardcoded with devices ids and credentials --> not so much discussed and designed )
However, adding a pi implies to be able to retrieve creds from another devices in the api.. seems not possible to me —> a dirty workaround would be, by default set like 10 children devices for a central pi device, hence, we would have some jokers in the case of adding a pi. (And these perimeter would be properly updated when we go physically on site ...)

I will open the fleet update in another issue!

Hi @fe51,

Yes we need to update torchvision and pytorch (cf this playbook and enforce the versions of these two packages when installing pyro-vision (we might not be able to just use the requirements of pyro-engine directly, did not check that yet but there will probably be some issues).
In the case of having multiple repos, if the API does not have another parameter how will the rpi which repo to update ? My point is the following: let's say we have 3 repos thus 3 hashes. To get a unique hash we can either:
- compute the hash of the hashes: but then the rpi does not know which repo needs to be updated if the hash changes.
- concatenate hash1-hash2-hash3 (always in the same order !!): in that case, we compare the three hashes separetely and the rpi knows which repo to update (but I don't think this very clean)
another solution is to have a parameter in the route which corresponds to the name of the repo and each repo gets its hash (cleaner for me)
I don't think that Git is very heavy. In addition, we would need to be careful on what goes on the branch master. My suggestion would be to create another branch dedicated to what needs to be on the rpi and only update this branch when we are sure of what we are doing.
To get fixed IP adresses that might be more complicated. On creation of the device you can always ask the rpi to take a certain IP adress but it might be that this IP is already taken on the local network at the physical installation point (i.e. les "tours"). Ideally we should have a local network with ONLY our fleet of rpi on, otherwise we will be in a bad position 😅 For the main rpi, as it will have internet, it can always find its ip address and send it to a remote server (provided that we put a script in a cron job to do so). But for the rpi with camera that's a more complicated story ... in order to ssh on the main rpi to send their ip addresses, they need to know the IP address of the main rpi which might have changed if the IP address that we enforced was already taken ... To sum up, we should only have our rpis on the local network (i.e. connected to the switch).
One other solution which might be possible: have a DNS for each rpi (for instance raspberrymaster, rpicamera1, rpicamera2, ... and we would then use raspberrymaster.local etc so as not to use the ip addresses ... That's not garantee to work and we could use nmap as back-up (see this).
Anyways I think that this IP adress issue is way more important than the rest, we ABSOLUTELY need to be able to communicate with the rpis from the outside, without having to go on site. And I think that that's a more complicated issue than it seems.
To handle updates on the rpi with camera we could use Ansible (installed and ran on the main rpi yes) and all these tasks will be linked to cron jobs.


[FEATURE] Type theorems

Following the discussions in #162 and #179, it may be useful to produce THEOREMs after running type inference.
EXTENDS Sequences
CONSTANTS Range
ASSUME(Range <: "set(Int)")

VARIABLES list

Mem(e, es) ==
  \E i \in DOMAIN es:
    e = es[i]

Init ==
  list = <<>>

Next ==
  \E e \in Range:
    list' = Append(list, e)

If type inference computes the types of list and Mem, we can introduce the following theorems:
THEOREM list \in Seq(Int)
THEOREM \A e \in Int, es \in Seq(Int): Mem(e, es) \in BOOLEAN

Although the translation from types to the statements about sets looks straightforward, some attention should be paid to the following TLA+ values: records and sets of records (we can only compute supertypes of records) and operators (we cannot use operators as values).
The above theorems may be useful for writing manual proofs in TLAPS.

I don't think it's relevant anymore


feat: add export account

Describe the changes you have made in this PR
Introduces Export option in the accounts list.
Link this PR to an issue
Closes #669
Type of change (Remove other not matching type)

feat: New feature (non-breaking change which adds functionality)

Screenshots of the changes (If any)
If we have lightning address:

If we don't:

Add screenshots to help explain your problem
How has this been tested?
Ran all tests
Checklist

[x] My code follows the style guidelines of this project and performed a self-review of my own code
[x] New and existing tests pass locally with my changes
[x] I checked if I need to make corresponding changes to the documentation (and made those changes if needed)

Please fix conflicts. You think we should move the modals in to a separate file(s)?

The edit action also uses modals... will make a separate PR for both!

we should add i18n (@im-adithya maybe we do this in a new PR?)

Sure!


comparing the LSCP and LSCP-B results

Probably a plot(s) worth adding to the LSCP-B notebook is something showing the potential in results between the LSCP-B and LSCP solutions. This would go a long way in demonstrating the value of implementing an LSCP-B solution.

I see now that @erinrolson is already doing this in the lscpb and facloc-lscpb-real-world notebooks. I'll clean that up a bit in a PR I am working on now.


Commit characters broken in simple cases

Bug Report
🔎 Search Terms
vscode complete dot
vscode commit characters
typescript commit characters
🕗 Version & Regression Information
Most likely never worked properly
⏯ Playground Link
[<!--
A link to a TypeScript Playground "Share" link which shows this behavior
The TypeScript Workbench can be used for more complex setups, try
https://www.typescriptlang.org/dev/bug-workbench/
As a last resort, you can link to a repo, but these will be slower for us to investigate.
-->
Playground link with relevant code](https://www.typescriptlang.org/play?#code/PTAEHUFMBsGMHsC2lQBd5oBYoCoE8AHSAZVgCcBLA1UABWgEM8BzM+AVwDsATAGiwoBnUENANQAd0gAjQRVSQAUCEmYKsTKGYUAbpGF4OY0BoadYKdJMoL+gzAzIoz3UNEiPOofEVKVqAHSKymAAmkYI7NCuqGqcANag8ABmIjQUXrFOKBJMggBcISGgoAC0oACCbvCwDKgU8JkY7p7ehCTkVDQS2E6gnPCxGcwmZqDSTgzxxWWVoASMFmgYkAAeRJTInN3ymj4d-jSCeNsMq-wuoPaOltigAKoASgAywhK7SbGQZIIz5VWCFzSeCrZagNYbChbHaxUDcCjJZLfSDbExIAgUdxkUBIursJzCFJtXydajBBCcQQ0MwAUVWDEQC0gADVHBQGNJ3KAALygABEAAkYNAMOB4GRonzFBTBPB3AERcwABS0+mM9ysygc9wASkUAHEGMEVDhmh4yF5EOLnMD2DQvm4zMx2AxmJB+LBoOpEhz4HoRF4+XSGUzBHykti+eAHKgAOTCABykAkfKCKgA8l8yO9BO6tJAjqhHApXNI8KAnFadMMsPoUAhENDhJcHRJxdERAYONiFkxWBweEESkA)
💻 Code
const anExampleVariable = "Hello World"
console.log(anExampleVariable)
Ga<cursor>

🙁 Actual behavior
Typing Ga, then dot puts dot after Ga
🙂 Expected behavior
Whatever suggestion is selected (e.g. GainNode) must be completed and inserted in the code, followed by a dot

@RyanCavanaugh Why did you moved the issue? Don't you know that similar issues have been auto-closed in the vscode tracker?

Unfortunately we can't reliably compute commit characters on the VS Code extension side. This needs to come from the TypeScript server. Support for commit characters there is tracked by https://github.com/microsoft/TypeScript/issues/27623
https://github.com/microsoft/vscode/issues/110382#issuecomment-730702754

Works fine for me in VS Code. Is this only an issue in the TS playground?

@mjbvz
There are two snippets here: one fails in the playground, and the other is the real world example that fails in VSCode

Minimal example:
function foo() {
    const x = fo // trigger suggest and type . here
}

@RyanCavanaugh I still think TS needs to be the one computing the commit characters. This will align it more with the LSP and let editors have a consistent UX

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!

@mjbvz @RyanCavanaugh what info is needed exactly here?

@mjbvz is investigating what the next steps should be here in terms of whether TS server or VS code needs to change its behavior and how. We talked about this at the typescript vs code sync yesterday and everyone was in agreement that, ideally, dot is indeed a completion character here, we just need to work out the details of whether that's always the case and if not, how we figure out when it is.

@RyanCavanaugh  I investigated this further. We disable commit characters in this case because TypeScript returns isNewIdentifierLocation on the completionInfo response. This issue is actually already being tracked by https://github.com/microsoft/TypeScript/issues/31244
Closing this as a duplicate of https://github.com/microsoft/TypeScript/issues/31244. I still think it would make sense to have TS compute the commit characters instead of VS Code. For reference, here's where we compute these today:
https://github.com/microsoft/vscode/blob/5356e7ba59d49f27e78d5fc5285071eae927cb9f/extensions/typescript-language-features/src/languageFeatures/completions.ts#L495

Considering that no work has been done on #31244 for the last 4 years and based on my experience with other MS products support I'm guessing that Typescript is the new Xamarin now. Oh, well!


Gradient overflow detected problem (pretraining new model)

I'm using fairseq to pretrain a wav2vec self-supervised model on 11000 samples using one GPU (cuda 8.0). I obtained a 'Gradient overflow detected' warning and the loss is equal to 3.7.  I would be greatful if you can indicate to me if that is normal and my model learns well. Thank you in advance.
Learning rate =0.00005
batch size=8
I'm running the following command:
CUDA_VISIBLE_DEVICES=0 python train.py --distributed-world-size 1 --max-epoch 500 --batch-size 8 --distributed-port -1 "${manifest_path}"
--save-dir $dirPretrained --fp16 --fp16-scale-tolerance 0.25 --num-workers 4 --task audio_pretraining --criterion wav2vec --arch wav2vec2
--log-keys '["prob_perplexity","code_perplexity","temp"]' --quantize-targets --extractor-mode default
--conv-feature-layers '[(512, 10, 5)] + [(512, 3, 2)] * 4 + [(512,2,2)] * 2' --final-dim 256 --latent-vars 320
--latent-groups 2 --latent-temp '(2,0.5,0.999995)' --infonce --optimizer adam
--adam-betas '(0.9,0.98)' --adam-eps 1e-06 --lr-scheduler polynomial_decay --total-num-update 400000
--lr 0.00005 --warmup-updates 32000 --mask-length 10 --mask-prob 0.65 --mask-selection static --mask-other 0
--encoder-layerdrop 0.05 --dropout-input 0.1 --dropout-features 0.1 --feature-grad-mult 0.1
--loss-weights '[0.1, 10]' --conv-pos 128 --conv-pos-groups 16 --num-negatives 100 --cross-sample-negatives 0
--max-sample-size 250000 --min-sample-size 32 --dropout 0.1 --attention-dropout 0.1 --weight-decay 0.01
--max-tokens 1400000 --max-update 400000 --skip-invalid-size-inputs-valid-test --ddp-backend no_c10d
The output of the training stage is :
079:   5%| | 67/1403 [00:44<13:57,  1.59it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:45:58 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   5%| | 70/1403 [00:45<13:28,  1.65it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:00 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   5%| | 72/1403 [00:47<13:25,  1.65it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:01 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   5%| | 74/1403 [00:48<13:58,  1.59it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:02 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   5%| | 76/1403 [00:49<13:40,  1.62it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:03 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   5%| | 77/1403 [00:50<13:21,  1.65it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:04 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   6%| | 78/1403 [00:50<13:22,  1.65it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:05 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   6%| | 81/1403 [00:52<13:34,  1.62it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:06 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   6%| | 84/1403 [00:54<13:42,  1.60it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:08 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   6%| | 85/1403 [00:55<13:27,  1.63it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:09 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128
epoch 079:   6%| | 86/1403 [00:55<13:15,  1.66it/s, loss=3.697, ntokens=1466.24, nsentences=7.95, prob_perplexity=36.109, code_perplexity=36.078, temp=1.18, loss_0=3.542021-07-03 17:46:10 | INFO | fairseq.trainer | NOTE: gradient overflow detected, ignoring gradient, setting loss scale to: 128

Not use --fp16 may help

Not use --fp16 may help
@EricLina
This is also could be answer but, training with fp32 precision is needed a more memory about 2 times, So very slower..
another advices you have?


peer: launch persistent peer pruning in background goroutine

This PR is a follow up, to a follow
up of an initial concurrency issue fixed in the peer goroutine.
In #7938, we noticed that the introduction of p.startReady can cause Disconnect to block. This happens as Disconnect cannot be called until p.startReady has been closed. Disconnect is also called from InboundPeerConnected (the case of concurrent peers, so we need to remove one of the connections) while the main server mutex is held. If p.Start blocks for any reason, then this leads to the deadlock as: we can't disconnect until we've finished starting, and we can't finish starting as we need the disconnect caller to exit as it has the mutex.
In this commit, we now make the call to prunePersistentPeerConnection async. The call to prunePersistentPeerConnection eventually wants to grab the server mutex, which triggers the circular waiting scenario above.
The main learning here is that no calls to the main server mutex path can block from p.Start. This is more or less a stop gap to resolve the issue initially introduced in v0.16.4. Assuming we want to move forward with this fix, we should reexamine p.startReady all together, and also revisit attempt to refactor this section of the code to eliminate the mega mutex in the server in favor of a dedicated event loop.
Fixes https://github.com/lightningnetwork/lnd/issues/8039

Thx for the review, confirmed fix by the user the reported it. Looking forward to reworking this area entirely and getting rid of the mega mutex.

Hello,
May be fix was not fixed...


(chore) Switch my affiliation to Independent

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind documentation

/kind feature

/kind stable

/kind incubating

/kind sandbox

/kind deprecated

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area governance

/area proposals

/area utils

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: dwindsor
Once this PR has been reviewed and has the lgtm label, please assign leogr for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

dc8249a Revert "Change dwindsor to Independent"

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


appsettings.json doesn't get generated in Azure

2023-09-05T20:46:29.479476518Z    at Program.<Main>$(String[] args) in /home/runner/work/net-core-angular-store/net-core-angular-store/Program.cs:line 12
2023-09-05T20:46:32.705129911Z /opt/startup/startup.sh: line 19:    77 Aborted                 (core dumped) dotnet "BontoAPI.dll"
/home/LogFiles/2023_09_05_lw1sdlwk0009QG_docker.log  (https://ford-bonto.scm.azurewebsites.net/api/vfs/LogFiles/2023_09_05_lw1sdlwk0009QG_docker.log)
2023-09-05T20:46:16.631Z INFO  - Stopping site ford-bonto because it failed during startup.

Checked wwwroot contents, ony appsettings.development.json gets generated, hence the problem.

Solved this by copying appsettings.json contents to appsettings.development.json as quickfix for now.


dotnet Newtonsoft.Json failes to build on Hydra

http://hydra.nixos.org/build/22994539/nixlog/1
Error:
/tmp/nix-build-Newtonsoft.Json-6.0.8.drv-0/Newtonsoft.Json-6.0.8/Src/Newtonsoft.Json/Newtonsoft.Json.csproj (default targets) ->
error : Error building target GetReferenceAssemblyPaths: Access to the path "/nix/store" is denied.

Builds fine locally.  How to reproduce?
strace shows xbuild accessing /a, then /a/b, then /a/b/c, etc. when trying to get to /a/b/c/d.
But that happens for other dotnet libraries, not just for Newtonsoft.Json, so not clear why Newtonsoft.Json fails while the others build fine.
cc @lethalman
(Not on IRC this week so creating this issue to have the conversation)

I think this kind of errors are likely to be related to nixUnstable. cc @edolstra any idea?

Hydra now says it buidls fine... any idea what changed?
http://hydra.nixos.org/build/22994539

Yes @edolstra updated nix on hydra.
On Sat, Jun 13, 2015 at 6:55 AM, obadz<EMAIL_ADDRESS>wrote:

Hydra now says it buidls fine... any idea what changed?
http://hydra.nixos.org/build/22994539
—
Reply to this email directly or view it on GitHub
https://github.com/NixOS/nixpkgs/issues/8260#issuecomment-111670158.

--
NixOS Linux http://nixos.org

Btw that's only the i686 build, I'll wait until I see the x86_64 build before closing this issue.

Closing, builds fine on i686 and x86_64.


remove deprecated things

Let's remove things deprecated in 1.X.X version before switching to 2.X.X
NOTE: there is probably more TODO - feel free to add your commits

Coverage increased (+0.2%) to 81.487% when pulling fe4b1296e8d266e1cf8f474fcf6a1ca7d5300dec on deprecated into 14ed5bcfdf02f6fa825da51bf552dafd82c03f28 on master.

Coverage increased (+0.2%) to 81.527% when pulling b74e889013d48c468d5c5ede24de845c1909e6df on deprecated into 14ed5bcfdf02f6fa825da51bf552dafd82c03f28 on master.

closing in favor of #318


Automatic review assignment

This PR:

Adds a reviewers section to OWNERS

This change is

I branched off of a branch.


Add tabs for AST and sourcemap to demo

This fixes #360.

Codecov Report

Merging #400 (6310f16) into main (39cbd38) will increase coverage by 0.00%.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##             main     #400   +/-   ##
=======================================
  Coverage   92.20%   92.20%
=======================================
  Files          51       51
  Lines       14859    14865    +6
=======================================
+ Hits        13700    13706    +6
  Misses       1159     1159

Impacted Files
Coverage Δ

crates/crochet/src/lib.rs
1.36% <0.00%> (-0.13%)
:arrow_down:

crates/crochet_infer/src/util.rs
79.77% <0.00%> (+0.15%)
:arrow_up:

crates/crochet_parser/src/lib.rs
94.62% <0.00%> (+0.29%)
:arrow_up:

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


Fix relative positioning of Get Started Button #105

Closes #105

Coverage decreased (-0.2%) to 65.706% when pulling 066998ee4d1d5354e26fca680b60aec29785e1a4 on zackcarlson:master into 49c98e313d35ab39306c9a123749f1d20b1e817a on TIRaveler:master.


fix annotations

annotations missing in flexibleengine_cce_node_v3
this is related to the PR #24

@shoudusse
I would like to know if this pull request can be approved
Thanks in advance

The variable "nodes_list" declaration in variables.tf must also contain the new parameter.

The variable "nodes_list" declaration in variables.tf must also contain the new parameter.

Ok I will do it

@shoudusse : I have added the annotions to the variable node_list


feature(jv-ui-components): add skeleton

skeleton is provided by jv-ui-components now
jv styles for skeleton will be introduced in a later PR.
Related to #82

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: ecanchev-jaspersoft:x: aleeg-jaspersoftYou have signed the CLA already but the status is still pending? Let us recheck it.


Show a badge preview in user panel

Ideally, have a badge preview (we could use last year's design so people cannot print valid badges at home). This way, they can see if their tags, names work well and can make the necessary adjustments. On the preview badge, we can also highlight the ticket number one needs to remember for badge collection.

No need to use the exact design for last year, we could use a mockup of a badge with greyed our header and footer and just show the text as it would appear (more or less).

Since some attendees report that they are not aware that a QR code with their email is on the badge, a preview including the QR code could also help make people aware of this.


Improve makefile

I added a conditional install of wasm-pack to the Makefile, which should be relatively OS independent.
I use the solution found here: https://itecnote.com/tecnote/check-if-a-program-exists-from-a-makefile/
Therefore, I also remove the wasm-pack install from the CI workflow.

Looks good to me.


Vulnerability roundup 114: freetype-2.11.0: 3 advisories [9.8]

search, files

[ ] CVE-2022-27404 CVSSv3=9.8 (nixos-21.11)
[ ] CVE-2022-27405 CVSSv3=7.5 (nixos-21.11)
[ ] CVE-2022-27406 CVSSv3=7.5 (nixos-21.11)

CVE details
CVE-2022-27404
FreeType commit 1e2eb65048f75c64b68708efed6ce904c31f3b2f was discovered to contain a heap buffer overflow via the function sfnt_init_face.
CVE-2022-27405
FreeType commit 53dfdcd8198d2b3201a23c4bad9190519ba918db was discovered to contain a segmentation violation via the function FNT_Size_Request.
CVE-2022-27406
FreeType commit 22a0cccb4d9d002f33c1ba7a4b36812c7d4f46b5 was discovered to contain a segmentation violation via the function FT_Request_Size.

Scanned versions: nixos-21.11: 3c5ae9be1f1.
Cc @ttuegel

All fixed in 2.12, which both master and 22.05 have. 22.11 fixed in  #173991