Hardcoded ICE server URLs

Hi,
Firstly - thanks for creating matchbox - I love it :)
For me it takes ~30 seconds to establish a connection between peers using your library with wasm in a chromium browser and I tried to dig deeper until I found a nice log of the WebRTC implementation within the browser via chrome://webrtc-internals/.
I think I found the issue in these logs: Right after a ~30 seconds break in the log messages:
icecandidateerror
url: stun:stun.johanhelsing.studio:3478
address: [0:0:0:x:x:x:x:x]
port: 57086
host_candidate: [0:0:0:x:x:x:x:x]:57086
error_text: STUN binding request timed out.
error_code: 701

The url surprised me as I didn't configure it anywhere and then I found it quickly in the client code right here:
https://github.com/johanhelsing/matchbox/blob/0671bf1bd0be14f22bf838bfe1baf691017e802d/matchbox_socket/src/webrtc_socket/wasm/message_loop.rs#L287
As the request times out anyway probably it would work just as well if it was disabled entirely. However I suppose this part of the code originally made sense so I would like to suggest to make these URLs configurable.
I am quite new to Rust but if you like I could tackle this issue. Just let me know and I will try if I can get you a working PR

Hi, thanks for the kind words, and thanks for reaching out :)
So a stun server helps when peers are behind a NAT (like a ipv4 wifi router) and don't have their own public IP address. It does some magic hole punching that that I don't understand the details of.
Often people use google's stun servers, and I also did that at first. However, I encountered some cases where those failed to punch holes in my NAT, but my own instance running the stun part of coturn worked just fine, so I just changed the url and forgot about it.
So yeah :) You're right that this part of the code is a leftover from the early days of the project. The stun server needs to be there, but it definitely shouldn't be hard-coded to my domain. I think it would make sense to have it default a public stun server that has a good success rate, but still leave an option to override it somehow.
As for why it takes 30 seconds for you. Which version did you try? We implemented ICE candidate trickle in the main branch, which I think may help (it sends connection alternatives as they are gathered instead of sending all alternatives at once). So my hope is that in your case, it will just figure out that it can connect without stun and then stop trying to connect to the stun server. If you tried with 0.3.0, perhaps give the main branch a try instead?
I tried with https://helsing.studio/box_game (which currently runs matchbox 0.3.0) in Firefox and Chrome on Windows and for me it starts after about a second. If it's still an issue for you on the main branch, any info that would help us reproduce would be much appreciated!
As for the API for configuring the stun server, I'm open to suggestions (including breaking changes), but I'd prefer if it's still easy to use matchbox without having to know about it.
Also, somewhat related issue: #3
Feel free to give it a go, and let me know if you need pointers or hit any stumbling blocks :)

Thanks for your quick reply.
Yes I use the 0.3.0 version of the client. So I tried the code from the main branch but there was no improvement. For me (currently located in Vienna, Austria) I get the same timeout and the 30  seconds for your boxgame by the way with the same message in the logs
Alright then let me see if I can create a fix as easily as I imagine

Sorry, I realized shortly after posting that I didn't actually finish the WASM version of ICE trickle (see edit above).


Post-release 7.0 merge to master

Post-release 7.0 merge to master
Only #6806 is left to merge back
#no-changelog

@paulb777 and team, congrats on the release.


Update all.json

"automaticdexvalidate.com",
"dappresolve.io",
"iwalletsbrowser.net",
"networkchainid.com",
"rectbloks.org",
"metamasklinking.org",
"decentrala.cam",
"trustwalet.vip",
"syncingwallet.online",
"walletsconnect.gcf-online.com",
"gcf-online.com",
"updateswallets.com",

dappresolve.io

rectbloks.org

walletsconnect.gcf-online.com

updateswallets.com

Site
URLScan link

dappresolve.io
Site taken down before i was able to mirror it, but there is a screenshot

rectbloks.org
https://urlscan.io/result/43ea38ca-ddfc-4466-8679-c8d51c2686f7 Site taken down before I was able to mirror it, but there is a screenshot)

walletsconnect.gcf-online.com
https://urlscan.io/result/eddaccff-c9a9-4b30-9cc5-91335715ad8a/

updateswallets.com
https://urlscan.io/result/eddaccff-c9a9-4b30-9cc5-91335715ad8a/

Should be good to go now!


Fix warnings and a bug in unit test

Description
Fix flake8 warnings (except one related to type hints and the ones in __init__.py).
Further fix a bug in the unit tests which was revealed by this.  This currently make the test fail:
_____________________________________________________________________ test_conversions

duration_trajectory = (array([10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000,
       10000, 10000, 10000, 10000, 10000, 10000...0.        ],
       [0.35355338, 0.35355338, 0.        ],
       [0.35355338, 0.35355338, 0.        ]], dtype=float32))

    def test_conversions(duration_trajectory) -> None:
        .....

        # velocities
        for line in range(duration_trajectory[2][1:, :].shape[0]):
            v1 = duration_trajectory[2][line, :]
            v2 = reduration_trajectory[2][line, :]
>           np.testing.assert_almost_equal(v1, v2)
E           AssertionError:
E           Arrays are not almost equal to 7 decimals
E
E           Mismatched elements: 2 / 3 (66.7%)
E           Max absolute difference: 0.00020513
E           Max relative difference: 0.00058053
E            x: array([0.3535534, 0.3535534, 0.       ], dtype=float32)
E            y: array([0.3533483, 0.3533602, 0.       ])

src/context/tests/unit_tests.py:177: AssertionError

Since the error is relatively small, I'm not sure if this is just some expected inaccuracy (in which case I would increase the tolerance of the assert_almost_equal) or if it is an actual bug (in which case it should probably be fixed in a separate PR).
How I Tested
By running the unit tests.
I fulfilled the following requirements

[x] All new code is formatted according to our style guide (for C++ run clang-format, for Python, run flake8 and fix all warnings).
[x] All new functions/classes are documented and existing documentation is updated according to changes.
[x] No commented code from testing/debugging is kept (unless there is a good reason to keep it).

@vincentberenz Did you have a look at this already?  I'm not sure what to do with the now failing test.

@luator
finally fixed the test, sorry for the delay


Geolocation plugin / HTML5 API not working

I've been trying to set up geolocation (coarse) for my app. It always times out on WiFi and celltowers, which are the cases I'm interested in. The tests:
-local file with and without the cordova geolocation plugin
-hosted files with and without cordova geolocation plugin on secure origins
The code is pretty simple:
navigator.geolocation.getCurrentPosition(function(position) {
	console.log(position)
}, function (e){
	console.warn(e);
}, {
	enableHighAccuracy : false,
	timeout : 7000,
});

Is there anything I'm missing? I've checked for the right permissions a million times and no luck.
Thanks in advance!

Check this out:
https://stackoverflow.com/questions/28263008/cannot-get-geolocation-with-crosswalk-on-ionic-framework-no-errors-found


Added UMD wrapper to support AMD and CommonJS

If we can get a few people saying this is good, I'll merge it. Unsure on the details myself

Here is some good article in my opinion.
http://davidbcalhoun.com/2014/what-is-amd-commonjs-and-umd/
Also maybe https://github.com/Leaflet/Leaflet.markercluster/issues/769 is good try also?

Closing this PR because I have enough of waiting + I have added pane option support to my fork...

https://github.com/Leaflet/Leaflet/blob/master/PLUGIN-GUIDE.md#module-loaders


[package_info] Migrate package_info to federated design

This is the only plugin left that is using an odd structure for supplying macos functionality. Let's migrate it.

@ditman What is the proper set of steps to migrate a plugin to federated design? I assume I need to first write and publish the interface, then migrate the main plugin then finally migrate macos?

Also I would appreciate it if you review the interface and the front end design. PackageInfo is a bit unique among plugins since its primary class is actually a data class rather than a plugin class. I left most of the functionality intact and opted to provide a Map of values from a getAll function for the interface so the data class can populate itself. I was not sure if there was another way of making this non-breaking.

This plugin is being migrated off to package_info_plus and it seems like the work is already done. Closing this PR.

Thanks for understanding @mehmetf!


reorg depth 0 seen on event stream

It looks like we got both blocks, and set 775 to head before 774 was made head, then went back to 774 being head first...
https://beaconcha.in/block/4683774 (new head)
https://beaconcha.in/block/4683775 (old head)
{
  slot: '4683774',
  depth: '0',
  old_head_block: '0xb942665c2eb6093ce53e46db6f458fbd32f5ec44f320ad63b569854592cbd26e',
  new_head_block: '0xeed75ccb5201c46614121324c7203e23b22ca166741fdb59bb426482b76369c4',
  old_head_state: '0x5b3363a7d5d7e2d38400742402e0b7b9be2fe8ce57c814aa7c035b983a715570',
  new_head_state: '0xe73d572c268d568284c919bb4e25951d27dc0bca48ce6e99ccde3db386ea8603',
  epoch: '146367',
  execution_optimistic: false
}

side note - depth should also probably be using minusMinZero...

I've tested following ideas and now stuck:

could be imported in reverse order - impossible, checks parent execution root during import
updateHead could be called not only on import (ForkChoice.processHead() path):

it's called on invalid payloads
it's called when preparing for block production
Couldn't be raced there, runs on ForkChoiceThread
also updateHead is called on init - not our case

could be imported 774, 775, 774 by some reason. Could we import the block that is already imported?
Made a test

  @Test
  void onBlockReImport_shouldNotSendForkChoiceUpdatedNotification() {
    final SignedBlockAndState blockAndState = chainBuilder.generateBlockAtSlot(ONE);
    final SignedBlockAndState blockAndState2 = chainBuilder.generateBlockAtSlot(UInt64.valueOf(2));
    storageSystem.chainUpdater().advanceCurrentSlotToAtLeast(blockAndState.getSlot());
    final SafeFuture<BlockImportResult> importResult =
      forkChoice.onBlock(blockAndState.getBlock(), Optional.empty(), executionLayer);
    storageSystem.chainUpdater().advanceCurrentSlotToAtLeast(blockAndState2.getSlot());
    final SafeFuture<BlockImportResult> importResult2 =
      forkChoice.onBlock(blockAndState2.getBlock(), Optional.empty(), executionLayer);
    final SafeFuture<BlockImportResult> importResult3 =
      forkChoice.onBlock(blockAndState.getBlock(), Optional.empty(), executionLayer);
    assertBlockImportedSuccessfully(importResult, false);
    assertBlockImportedSuccessfully(importResult2, false);
    assertBlockImportedSuccessfully(importResult3, false);

    assertForkChoiceUpdateNotification(blockAndState, false);
    assertForkChoiceUpdateNotification(blockAndState2, false);
  }

It passes assertForkChoiceUpdateNotification(blockAndState, false);, so shouldn't be in issue. And even if we have race between 2nd and 3rd import before calling importBlockAndState, which only runs on ForkChoiceThread, we will not get such reorg as in issue.

there was a bug in code at the moment of creating issue, now fixed
ForkChoice.java - no changes, which could affect this behaviour
ForkChoiceNotifierImpl.java - some changes related to block production preparation, shouldn't affect
RecentChainData.java - identical
So miss again

the format is from EventSubscription in json, which is where it was reported by user to have a reorg depth 0...
I'm not sure if that code is generating a reorg for the above test case, but i'd suggest that's where we're interested in probing, maybe a log for when that reorg gets triggered with depth 0 or something...

Reorg Event *** New Head: b836ab11206d22c406e22e928242a79fcf0b8f911438ff7f558b47dd489197ea (4246125), Previous Head: 78029545df7a1c7105e9b38ae2f810e859809ef5149093566f9bdf2484769ea9 (4246126), Common Ancestor: 3a530a25df5ef52546d37f68a8d838d86cf9f0f2342b81587ed0cb0139b38a31 (4246123)
  |   | Nov 3, 2022 @ 17:11:16.257 | Reorg Event *** New Head: cf137ba0673f3013c8c071e37db0c80c9435ce71759fc9c71bef5b7635105c54 (4245956), Previous Head: d2e6c2c15111a057a58048371fee9f1c23220a4702849d4ff801299eeb15a2d3 (4245955), Common Ancestor: 941cf6629e2542dc159a0c240ad5651dc4d0dc0376e3edc7ba8980036df01e90 (4245954)

wouldn't be surprised if that reorg event came through event subscriptions poorly... but we don't subscribe so it's hard to know...

stuck with no evidence how this could happen

I think it is time to close this ticket. We don't really have a way of reproducing it and we haven't received any new reports about it.

Agreed, closing as can't reproduce. :(


enh/220-delta-task-count-metrics

In order to see if any of the urn models from Hamann2013 can be applied to #
robots partitioning/not partitioning or engaged in a task/not engaged in a task
(which I think they can), I need to capture the changes in most of the counts
that are currently tracked by task metric collectors. Should be easy to change
(just more columns to add to the .csv).

Moved to COSM with ta tree


Correct limits for GCCH

This page conflicts with other pages. For team member limits the [Limits and specifications for Microsoft Teams doc](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fmicrosoftteams%2Flimits-specifications-teams&data=05%7C01%7Cjeffbovee%40microsoft.com%7C08f5e9c0133740aba8a808da39c66287%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637885821479781577%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=8jVDGVHDupoAtp5NKGW8Z422weBY4iAJ8BI0W8E9ynU%3D&reserved=0) lists the number of members in a team at 25,000 but has no caveats for GCC High/Gov tenants, and was last updated 5/13/2022. But, the Microsoft Teams service description doc specifically calls out a footnote saying “Microsoft Teams in GCC-High and DOD support 2500 members in an individual team,” and was last updated 12/3/2021.

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

ID: 905e2c09-ef3e-07cc-0809-6ff171157c47
Version Independent ID: c0d33162-183d-fff8-32e9-a999f391ea51
Content: Limits and specifications for Microsoft Teams - Microsoft Teams
Content Source: Teams/limits-specifications-teams.md
Service: msteams
GitHub Login: @MicrosoftHeidi
Microsoft Alias: heidip

Hi @J227668, thank you for your feedback.
The note was removed because now the same limit applies to all the environments. Please check this link:
https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness/commit/7cbc31df920931db540b5fe3e56b07d9d519d416
The sentence about the limit was also removed from the Service Description article.


Example from the docs does not work

I was trying to reproduce this example:
In [2]: import callhorizons
   ...: eros = callhorizons.query('Eros')
   ...: eros.set_discreteepochs([2457446.177083, 2457446.182343])
   ...: eros.get_ephemerides(568)
   ...: print(eros['RA'], eros['DEC'])
   ...:
   ...:
CALLHORIZONS ERROR: run get_ephemerides or get_elements first
CALLHORIZONS ERROR: run get_ephemerides or get_elements first
None None

I understand that callhorizons is not going to be maintained anymore, but I tried to do the same thing in astroquery and found https://github.com/astropy/astroquery/issues/1192.

Problem fixed, both here and in astroquery/jplhorizons; thanks for the issue report!

Thanks for your prompt response!


fix(deps): update all lodash variants to 4.17.14

Description:
Update all lodash variants to 4.17.14. This is meant as a temporary override until all of our dependencies get around to upgrading.
Motivation and Context:
Update lodash dependencies to avoid CVEs found in the 'lodash' package.
How Has This Been Tested?
Manually
Types of changes:
Security upgrade
Checklist:

[x] My code follows the code style of this project.
[x] I have reviewed and updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes where needed.
[x] All new and existing tests passed.
[x] My commits have been squashed into a concise set of changes.

Coverage remained the same at 20.132% when pulling ed655488e33eafd1c61d5f7b35b9a77b14b30bea on mrfelton:fix/lodash-update into ba579f6df2245a53f4036e9ba7c77d200844ee7b on LN-Zap:master.


ERR! peerinvalid after running npm install

I just did a clean checkout of the skeleton-typescript (skeleton-navigation-1.0.0-beta.2.0.0) project and ran:
npm install

which resulted in:
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! node v4.4.6
npm ERR! npm  v2.15.5
npm ERR! code EPEERINVALID

npm ERR! peerinvalid The package<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>

This ERR is safe to ignore until TypeScript 2.0 is released (any time now).
I'll keep this open for reference.

Okay, thanks for the quick response.

@niieani

TypeScript 2.0 release (any time now)

Do You have more insight to the TS release dates than visible from TypeScript/milestones? Based on that I wouldn't bet that

any time now

is within one month ;)

@atsu85 Microsoft promised a June 2.0 release. There's only one day left in June. While I suppose that wasn't a literal deadline and it might still slip, I don't think they're too far behind, based on the ridiculously fast speed they're killing bugs and implementing features. ;) My bet is 2 weeks tops.

I got the same error and I just wonder...
package.json
    "tslint": "^3.11.0",
    "typescript": "^1.9.0-dev.20160622-1.0",

npm debug error message
npm ERR! peerinvalid The package<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>
Why 1.9.0-dev.20160624-1.0 isn't >=1.7.3? Is it something related to http://semver.org/ ?

Yes, according to SemVer -dev versions don't count in version ranges and there's no way to force them to count...

HMMM - https://github.com/Microsoft/TypeScript/releases - why not use 1.8.10 then? Is the framework written in 1.9.x?
Just changed my package.json and no errors when installing, when running:

Might be related to some warnings I was receiving:

typings WARN badlocation "github:aurelia/-___" is mutable and may change, consider specifying a commit hash

Now you have missing dts for Promise, because that is included in the lib setup for 1.9/2.0. Also, it is our understanding that the release for this is very, very close and it makes a big improvement for development.

@EisenbergEffect I've been keeping this open just for now, cause we're getting many duplicated. The hope is that people will see this issue first before opening new ones.

@stefek99, to resolve Your issue with TS ver 1.8(or earlier), add es6.d.ts to compile classpath


Coinmate stream WebSocket API 2.0

Migate stream-coinmate to use WebSocket API 2.0, which uses channel subscriptions over one connection instead of one connection per channel.

Please fix the test failures.

Please fix the test failures.


fix: wrong type.d

The goal of this PR is fix this issue https://github.com/hsynlms/fastify-guard/issues/7

@jtsamper thank you for your contribution.
Wouldn't it be good to add some TS tests in index.test-d.ts? Like:
expectType<preHandlerHookHandler>(fastify.guard.role('ceo', 'cto'))
expectType<preHandlerHookHandler>(fastify.guard.scope('profile', 'blog'))

Thank you @jtsamper


Chrome deletes fastforward on its own

Body
as said above the browser remove the extension on its own what to do
Version
0.2224
What browsers are you seeing the problem on?
Chrome
What OS are you seeing the problem on?
Windows
Anything else?
no

It shouldn't, if you're deleting the folder where FastForward is held, you're going to delete the extension; Chrome checks whether the folder is there every time it boots up, so if you delete the folder, the extension goes.


Some YT videos lack audio after 2023.03.03 update

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that a supported site is broken
[X] I've verified that I'm running yt-dlp version 2023.03.04 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
Ecuador/Latin America
Provide a description that is worded well enough to be understood
I have stumbled on many videos on youtube, which in version 2023.02.27 were working absolutely fine with all defaults (picking best video & audio stream), those were reporting in the API: Format/Protocol: multi/mkv. Then, after the update to 2023.03.03, yt-dlp.exe was still picking the best video stream, but was reporting no audio stream and the API recognizes the very same video as: Format/Protocol: multi/edl. Updating to 2023.03.04 does not fix the problem. However returning to 2023.02.27 resolves the issue.  There was a bug in mpv that's just been fixed that made it not play well with the new formats. Perhaps what you are seeing is a side effect of that?

latest yt-dlp works.  latest mpv (0.35.1), iina (1.3.1) using latest yt-dlp does not. if the video is downloaded first, all players have audio.  streaming using yt-dlp have no audio streams for some reason...

Provide verbose output that clearly demonstrates the problem

I am sorry but I can't, since it is a program for windows, which does not give output other, than what I gave already.

(Format/Protocol: multi/edl)

Sounds like you are using mpv. There was a bug in mpv that's just been fixed that made it not play well with the new formats. Perhaps what you are seeing is an effect of that bug?

Yes, it is mpv

If you are unable to provide verbose log, you shouldn't be reporting issue here. You can try reporting to mpv, but as I said above, I suspect this is a bug that has already been fixed - just not released.

latest yt-dlp works. latest mpv (0.35.1), iina (1.3.1) using latest yt-dlp does not. if the video is downloaded first, all players have audio. streaming using yt-dlp have no audio streams for some reason...
an example would be monday's colbert: https://www.youtube.com/watch?v=2YVZbbWGkYo

So, which version of mpv does not cause that behavior? Also that does not explain, why version 2023.02.27 works absolutely fine together with a recent version of mpv (from 2 weeks ago), while as soon as I update to version 2023.03.03 it breaks down audio for streaming for some YT videos, but not for other videos, like the one to follow, where both audio and video are recognized correctly as Format/Protocol: multi/mkv. When I check in terminal the streams reported to yt-dlp.exe, they all look exactly the same, when comparing between following correctly working video and the initial examples I posted.
https://www.youtube.com/watch?v=LPgZ4lKfBPw
Other users of the same windows program, have all confirmed the problem appearing as of version 2023.03.03.

I reported here, because the change from version 2023.02.27 to 2023.03.03 caused the break in functionality, while mpv has not been changed and is recent. As a matter of a fact all previous versions to 2023.03.03 work absolutely fine with that recent mpv version, therefore I disagree and it can not be automatically labeled a problem of mpv.

More details https://github.com/yt-dlp/yt-dlp/issues/6496


feat: Added example for how to use Styled-Components

I was very annoyed at finding out, that the "official" example for using Styled-Components with Remix doesn't actually work. To get proper hydration, you need the serverside rendered styles to use the same ID generation seed as the client-side ones.
This is possible using an official Babel plugin, and I found a wrapper for that Babel plugin as an esbuild plugin. Putting these things together, I managed to get this working, and I'm extremely happy that it does in fact work.
It supports all the things, that the Babel plugin for Styled-Components does including deterministic class name generation and display names included in class names while in debug. Though I didn't work on adding support for config, so that's left as an exercise for the reader.
This example is build on the vanilla-extract example.

Excellent! Thanks for your contribution!


robots.txt

Regarding our slack discussion and indexing for staging

robots.txt is generated by server.js in the codes below.
app.get('/robots.txt', (req, res) => {
  res.type('text/plain');
  res.send('User-agent: *\nDisallow: /status');
});

Suggest to generate the below content in non-production environment.
User-agent: *
Disallow: /


Docs: Fix broken annotations link in quick start

Just a quick docs fix of the annotations link in quick-start.md (/guide/previews/annotating vice /guide/previews/annotations)

Hey @waldrupm - really appreciate you taking the time to fix this. Many thanks :-)


Question: does a page have the resource-key at build time

Thanks for all this work!!
We (QGIS-project) use sphinx/sphinx-intl/transifex to build/translate our documentation
Eg: https://docs.qgis.org/3.10/ja/docs/
In an earlier version of the docs we created the 'resource-keys' for transifex ourselves, and in that way were able to generate a 'translate this page here' link into every page footer, linking to the exact resource in transifex.
Now we use sphinx-intl update-txconfig-resources
and .tx/config contains keys like:
qgis-documentation.docs--user_manual--introduction--qgis_gui
which can be found on transifex here:
https://www.transifex.com/qgis/qgis-documentation/translate/#ja/docs--user_manual--introduction--qgis_gui
So I was wondering if the machinery to 'create' these keys were also available (or put in some context) during the build of the html pages?
In that way it would be easy to construct direct links to transifex.
I am aware that the build of html and tx-config are two separate processes... so maybe it is harder then I hope :-)
TIA

Hi @rduivenvoorde. I don't think so. Transifex resource slugs are not visible for Sphinx when building a reST doc regardless of the file format (html, epub, etc.). Transifex resources slugs are available when interacting with Transifex, e.g. pulling or pushing translations or source strings.
The qgis-documentation.docs--user_manual--introduction--qgis_gui is a Transifex resource slug which is basically a conversion of the filepath into something compatible with URLs (directory separators become double-hyphens '--', dots become underscore '_' and file extension is removed).


Faces Schedule - 12/19

Ok this is the new faces schedule. Minor change
schedule_allfaces_12-19-22.csv

updated.


Mac DBeaver 7.1.3 not responding after upgrading.

System information:

Mac - 10.14.6
DBeaver version - 7.1.3

Connection specification:

Database name and version

Describe your question:
I've downloaded the mac installer and installed again on top of the existing a few months old version. Now the version number is upgrade, but the app isn't responding anymore. How do i completely uninstall/remove config files ?

https://github.com/dbeaver/dbeaver/wiki/Reset-UI-settings


Python does not properly/consistently contribute to Powershell environment

Type: Bug
Behaviour
Python does not properly/consistently contributed to Powershell environment. Two PCs with VS Code and Anaconda installations today with differing behaviors.
Steps to reproduce:
On PC 1:

Start VS Code from Windows Start Menu
Python in an Anaconda environment is already selected under Python: Select Interpreter
Open Powershell terminal
Hover over Powershell tab: See "Environment of PC 1" below
Type in pip
pip help is shown

All OK apart from the small fact that the Python virtual environment is not indicated in the Powershell prompt.
On PC 2:

Start VS Code from Windows Start Menu
Python in an Anaconda environment is already selected under Python: Select Interpreter
Open Powershell terminal
Hover over Powershell tab: See "Environment of PC 2" below.
Type in pip
Error message: pip : The term 'pip' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

Not OK.

Quit VS Code
In Anaconda prompt: conda activate ETH_CAS_AIS_2024_py310
In Anaconda prompt: code
VS Code is launched
Open Powershell terminal
Hover over Powershell tab: See "Environment of PC 2" below.
Type in pip
pip help is shown

All OK but steps 10 to 17 are probably indicative on what's going astray within VS Code.

Quit and restart VS Code
Open Powershell terminal
Hover over Powershell tab: See "Environment of PC 2" below.
Error message:
PS C:\Users\Marcel> C:/Users/Marcel/anaconda3/Scripts/activate
PS C:\Users\Marcel> conda activate ETH_CAS_AIS_2024_py310
conda : The term 'conda' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
conda activate ETH_CAS_AIS_2024_py310
CategoryInfo          : ObjectNotFound: (conda:String) [], CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException

All not OK again.
Diagnostic data
Hovering over Powershell tab at each indicated step:
Powershell Environment of PC 1:
Terminal Environment Changes
Extension: ms-python.python
Activated environment for ~\anaconda3\envs\ETH_CAS_AIS_2024_py310\python.exe

CONDA_DEFAULT_ENV=ETH_CAS_AIS_2024_py310
CONDA_EXE=C:\Users\Marcel\anaconda3\Scripts\conda.exe
CONDA_PREFIX=C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310
CONDA_PROMPT_MODIFIER=(ETH_CAS_AIS_2024_py310)
CONDA_PYTHON_EXE=C:\Users\Marcel\anaconda3\python.exe
CONDA_ROOT=C:\Users\Marcel\anaconda3
CONDA_SHLVL=1
PATH=C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310;C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310\Library\mingw-w64\bin;C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310\Library\usr\bin;C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310\Library\bin;C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310\Scripts;C:\Users\Marcel\anaconda3\envs\ETH_CAS_AIS_2024_py310\bin;C:\Users\Marcel\anaconda3\condabin;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;c:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;c:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Git\cmd;C:\Users\Marcel\AppData\Local\Microsoft\WindowsApps;C:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\bin;${env:PATH}
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL
PROMPT=(ETH_CAS_AIS_2024_py310) $P$G
PSMODULEPATH=C:\DATEN\My Documents\WindowsPowerShell\Modules;C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
PYTHONIOENCODING=utf-8
PYTHONUNBUFFERED=1
_CONDA_OLD_CHCP=437

Extension: vscode.git
Enables the following features: git auth provider

GIT_ASKPASS=c:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\askpass.sh
VSCODE_GIT_ASKPASS_NODE=C:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\Code.exe
VSCODE_GIT_ASKPASS_EXTRA_ARGS=
VSCODE_GIT_ASKPASS_MAIN=c:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\askpass-main.js
VSCODE_GIT_IPC_HANDLE=\\.\pipe\vscode-git-7cb2a134d4-sock

Powershell Environment of PC 2:
Terminal Environment Changes
Extension: vscode.git
Enables the following features: git auth provider

GIT_ASKPASS=c:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\askpass.sh
VSCODE_GIT_ASKPASS_NODE=C:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\Code.exe
VSCODE_GIT_ASKPASS_EXTRA_ARGS=
VSCODE_GIT_ASKPASS_MAIN=c:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\askpass-main.js
VSCODE_GIT_IPC_HANDLE=\\.\pipe\vscode-git-4d8f1d6a52-sock

Additional information
PC 1:
Extension version: 2024.4.0
VS Code version: Code 1.88.0 (5c3e652f63e798a5ac2f31ffd0d863669328dc4c, 2024-04-03T13:26:18.741Z)
OS version: Windows_NT x64 10.0.19045
Modes:

Python version (& distribution if applicable, e.g. Anaconda): 3.10.13
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Conda
Value of the python.languageServer setting: Default

User Settings

languageServer: "Pylance"

Installed Extensions

Extension Name
Extension Id
Version

JavaScript Debugger
ms-vscode.js-debug
1.88.0

JavaScript Debugger Companion Extension
ms-vscode.js-debug-companion
1.1.2

Jupyter
ms-toolsai.jupyter
2024.3.0

Jupyter Cell Tags
ms-toolsai.vscode-jupyter-cell-tags
0.1.9

Jupyter Keymap
ms-toolsai.jupyter-keymap
1.1.2

Jupyter Notebook Renderers
ms-toolsai.jupyter-renderers
1.0.17

Jupyter Slide Show
ms-toolsai.vscode-jupyter-slideshow
0.1.6

Pylance
ms-python.vscode-pylance
2024.4.1

Python
ms-python.python
2024.4.0

Python Debugger
ms-python.debugpy
2024.2.0

Table Visualizer for JavaScript Profiles
ms-vscode.vscode-js-profile-table
1.0.8

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz (8 x 1992)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
15.82GB (9.08GB free)

Process Argv
--crash-reporter-id 616eeb58-e3f2-48ba-ab71-98063679351e

Screen Reader
no

VM
0%

A/B Experiments
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscoreces:30445986
vscod805cf:30301675
binariesv615:30325510
vsaa593cf:30376535
py29gd2263:30899288
c4g48928:30535728
azure-dev_surveyone:30548225
962ge761:30959799
pythongtdpath:30769146
welcomedialogc:30910334
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
2e7ec940:31000449
pythontbext0:30879054
accentitlementst:30995554
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
bf62j303:30959262
cppperfnew:31000557
d34g3935:30971562
fegfb526:30981948
bg6jg535:30979843
ccp2r3:30993541
dsvsc020:30976470
pythonait:31006305
gee8j676:31009558
dsvsc021:30996838
gd77d436:30999572

PC 2:
Extension version: 2024.4.0
VS Code version: Code 1.88.0 (5c3e652f63e798a5ac2f31ffd0d863669328dc4c, 2024-04-03T13:26:18.741Z)
OS version: Windows_NT x64 10.0.19045
Modes:

Python version (& distribution if applicable, e.g. Anaconda): 3.10.13
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Conda
Value of the python.languageServer setting: Default

User Settings

languageServer: "Pylance"

Installed Extensions

Extension Name
Extension Id
Version

All Autocomplete
Atishay-Jain.All-Autocomplete
0.0.26

JavaScript Debugger
ms-vscode.js-debug
1.88.0

JavaScript Debugger Companion Extension
ms-vscode.js-debug-companion
1.1.2

Jupyter
ms-toolsai.jupyter
2024.3.0

Jupyter Cell Tags
ms-toolsai.vscode-jupyter-cell-tags
0.1.9

Jupyter Keymap
ms-toolsai.jupyter-keymap
1.1.2

Jupyter Notebook Renderers
ms-toolsai.jupyter-renderers
1.0.17

Jupyter Slide Show
ms-toolsai.vscode-jupyter-slideshow
0.1.6

Markdown All in One
yzhang.markdown-all-in-one
3.6.2

Pylance
ms-python.vscode-pylance
2024.4.1

Python
ms-python.python
2024.4.0

Python Debugger
ms-python.debugpy
2024.2.0

Spell Right
ban.spellright
3.0.122

Table Visualizer for JavaScript Profiles
ms-vscode.vscode-js-profile-table
1.0.8

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (16 x 3600)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
31.91GB (18.97GB free)

Process Argv

Screen Reader
yes

VM
0%

Hello @MarcelBigger Thanks for filing the issue.
What happens if you opt out of pythonTerminalEnvVarActivation?
try adding:
"python.experiments.optOutFrom": ["pythonTerminalEnvVarActivation"]

Can you replicate?

@MarcelBigger Apologies for late response. I am not able to repro this. Also not sure if this is specific issue to Python extension in VS Code.
We are having new experiment with the terminal activation where we would set the environment variables on behalf of user, so I suspected that had anything to do with your issue, but it seems like it is NOT since opting out of the experiment yield the same result for you.
Are you able to repro this outside of VS Code?

On the PC2 of the very first issue posting where pip is not recognized, are you able to echo $PATH and see everything looks correct in terms of the PATH to your Python executable is as expected and selected with VS Code Python extension?

The environment
$env:PATH
is suprisingly different between starting VS Code from Anaconda Navigator and starting VS Code from the Windows start menu. What does this tell us?
Anaconda Navigator start
C:\Users\Marcel\anaconda3;C:\Users\Marcel\anaconda3\Library\mingw-w64\bin;C:\Users\Marcel\anaconda3\Library\usr\bin;C:\Users\Marcel\anaconda3\Library\bin;C:\Users\Marcel\anaconda3\Scripts;C:\Users\Marcel\anaconda3\bin;C:\Users\Marcel\anaconda3\condabin;C:\Users\Marcel\anaconda3;C:\Users\Marcel\anaconda3\Library\mingw-w64\bin;C:\Users\Marcel\anaconda3\Library\usr\bin;C:\Users\Marcel\anaconda3\Library\bin;C:\Users\Marcel\anaconda3\Scripts;C:\Program Files (x86)\VMware\VMware Player\bin;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64_win\compiler;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files (x86)\Touch Portal\plugins\adb\platform-tools;C:\Program Files\Microsoft SQL Server\160\Tools\Binn;C:\Program Files\Git\cmd;C:\Program Files\Wolfram Research\WolframScript;C:\Program Files\Calibre2;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Microsoft SQL Server\140\Tools\Binn;C:\Ruby32-x64\bin;C:\Users\Marcel\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Nmap;C:\Program Files\JetBrains\PyCharm Community Edition 2023.2.1\bin;.;C:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Marcel\AppData\Roaming\Programs\Zero Install
Windows start
C:\Program Files (x86)\VMware\VMware Player\bin\;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64_win\compiler;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\Touch Portal\plugins\adb\platform-tools;C:\Program Files\Microsoft SQL Server\160\Tools\Binn\;C:\Program Files\Git\cmd;C:\Program Files\Wolfram Research\WolframScript\;C:\Program Files\Calibre2\;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Microsoft SQL Server\140\Tools\Binn\;C:\Ruby32-x64\bin;C:\Users\Marcel\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Nmap;C:\Program Files\JetBrains\PyCharm Community Edition 2023.2.1\bin;;C:\Users\Marcel\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Marcel\AppData\Roaming\Programs\Zero Install

@MarcelBigger Not much that are red-flag there. PATH can be different on depending on how you launch VS Code.
I am not still not able to repro this. Also not sure if this is specific issue to Python extension in VS Code.
We are having new experiment with the terminal activation where we would set the environment variables on behalf of user, so I suspected that had anything to do with your issue, but it seems like it is NOT since opting out of the experiment yield the same result for you.
Seems very highly likely how you set up your conda environment, pip are not correct.
Did you ever give it a try with other virtual environment other than conda?

PATH is different. Isn't THAT the problem?
With a Windows start, VS Code is not seeing the Python environment?

I see what you are saying.
Do you have the native locator to native? I wonder if changing to js will do any good for you:

I have no such setting.

@anthonykim1, any progress?

@anthonykim1, are you guys working on this issue?

I have no such setting.

Check your settings UI.

@anthonykim1, are you guys working on this issue?
Assuming environment contribution is the one that is failing this, we are working on API in VS Code itself so extensions have better knowledge of user's environment variable. Currently extension wont have context over your shell specific initialization file, and issues with preprending PATH are leading to issues. This is the API: https://github.com/microsoft/vscode/issues/227467

If adding "python.experiments.optOutFrom": ["pythonTerminalEnvVarActivation"] has no effect on your PATH, then this is really surprising because we Python extension won't be contributing/fiddling with your PATH variables. Then the problem likely resides outside of extension.
If the issue is coming from pythonTerminalEnvVarActivation, it will be worth tracking https://github.com/microsoft/vscode-python/issues/24567 as there are multiple issues with this experiment.


Not recognizing IDropdownOption from @fluentui/react & memory issues

We have an SPFX project with multiple webparts.  In one, we are using the dropdown from FluentUI.  On compile, spfx-fast-serve throws an error where it is not recognizing properties for IDropdownOption and will not run in workbench (gulp serve by itself has no issues with it).  Example:

If I define the interface for IDropdownOption myself in the .tsx file where it is called, there is not an error.  However, that is when I run into the second issue: anytime I save a change in a file while npm run serve is running, it runs out of memory and terminates.  We have --max_old_space_size=8192, but even when I tried bumping it up to --max_old_space_size=32000, it fails.

There are no memory issues when running gulp serve --max-old-space-size=8192

Could you say which SPFx version you use? How many webparts do you have?

For the out of memory issue, could you install cross-env:

npm i cross-env -DE

then add a new serve command:
"serve1": "gulp bundle --custom-serve --max_old_space_size=4096 && cross-env NODE_OPTIONS=--max-old-space-size=8192 fast-serve"
run npm run serve1 and see if it works. You can try increasing the memory size to 16GB.

For this project, we are using SPFX version 1.12.  We have 8 webparts.  Regular serve is probably around 3-5 minutes, fast serve is a matter of seconds once the initial compilation is done.
The cross-env fix did work for the memory issues.  Thanks!

This "property key does not exist" issue is quite weird, because on the line

tmpUserSpec.Litigation.includes(item.key)

it doesn't produce the error (at least it looks so), but on the next line, it does. I was not able to reproduce it, it seems it's something related to your project. In VSCode you can navigate to the file with interface definition when you hold down the left CTRL key and then click on the interface name in the source editor. In your case, which .d.ts file does it open?

Closing as no response received. Please reopen if needed.

Nice to know that other SPFX developers like to code into the late hours as well : )
From: Sergei Sergeev @.>
Sent: 14 June 2022 21:39
To: s-KaiNet/spfx-fast-serve @.>
Cc: Subscribed @.***>
Subject: Re: [s-KaiNet/spfx-fast-serve] Not recognizing IDropdownOption from @fluentui/react & memory issues (Issue #71)
Closed #71https://github.com/s-KaiNet/spfx-fast-serve/issues/71 as completed.
—
Reply to this email directly, view it on GitHubhttps://github.com/s-KaiNet/spfx-fast-serve/issues/71#event-6807773181, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMMQPOHBJIJXAB5SCAKPHH3VPDUYBANCNFSM5U43FJVQ.
You are receiving this because you are subscribed to this thread.Message ID<EMAIL_ADDRESS>


why the latest version can not run the example ? shit.

since the react native publish, the upgrade versions always have  some bug when using,  i know facebook is a well and open company , i only please the react-native team to make sure the publish version is avaliale, thanks ..

Are you having trouble upgrading your React Native version, or are you not able to run a new project with the latest version? I'm not sure what you're asking and need more details like a stack trace or screenshots to tell you what's happening. Provide more info if you expect to receive help.
As for upgrading, React Native's versions are currently 0.x releases which generally means that features may change between releases. However, the changes are usually documented in the release notes and no one is intentionally trying to make life hard for users. Maybe this isn't yet right for your use case if you require a very stable API that changes much more slowly or need to ship a production app and can't afford the technical risk. The native part of React Native is young compared to other frameworks and under heavy development in many areas, so there have been many changes and you should expect the framework to evolve.

@ide nailed it, not much else to be said here. I'm sorry that the experience wasn't seamless for you @philonpang. Closing this issue, feel free to re-open one with a detailed description of your problem, we'd be happy to help if we knew what was wrong! :smile:


In Python client, produce URIs to search results

A long-standing aim of Tiled is to provide URLs to arbitrary units of data. The URLs can be passed to curl or a data analysis program that speaks HTTP, shared with colleagues, associated with DOIs in publications, etc.
It would be nice if the Python client provided an easy way to obtain URLs that point to search results. We produce URLs to nodes, but not to their contents, filtered or otherwise:
In [14]: c['nmc_sim']
Out[14]: <Container {'22a5JHY7z5w', '22ACa4ELm3h', '22eMren2rdQ', ...} ~16467 entries>

In [15]: c['nmc_sim'].uri
Out[15]: 'https://aimm.lbl.gov/api/v1/metadata/nmc_sim'

In [16]: c['nmc_sim'].search(Key('sim_code') == 'fdmnes')
Out[16]: <Container {'22a5JHY7z5w', '22ACa4ELm3h', '22eMren2rdQ', ...} ~14740 entries>

In [17]: c['nmc_sim'].search(Key('sim_code') == 'fdmnes').uri
Out[17]: 'https://aimm.lbl.gov/api/v1/metadata/nmc_sim' <--- not what I wanted!

It's worth pointing out that you can handle the URIs to from_uri which will "navigate" directly to that node:
from_uri('https://aimm.lbl.gov/api/v1/metadata/nmc_sim')

I think the task here, then, would be two-fold:

Expose a contents_uri (name negotiable) that points to a /search/ endpoint, which may have filtering query parameters.
Teach from_uri what to do with a /search/ URL.


Break Prettier linting

@nf-core-bot fix linting

@nf-core-bot fix linting

@nf-core-bot fix linting

@nf-core-bot fix linting

@nf-core-bot fix linting

@nf-core-bot fix linting

@nf-core-bot fix linting

@nf-core-bot some other linting comment


Fix doc link false positives on stable builds

Thank you for helping out with embedded-graphics development! Please:

[ ] Check that you've added passing tests and documentation
[ ] Add a CHANGELOG.md entry in the Unreleased section under the appropriate heading (Added, Fixed, etc) if your changes affect the public API
[ ] Run rustfmt on the project
[ ] Run just build (Linux/macOS only) and make sure it passes. If you use Windows, check that CI passes once you've opened the PR.

PR description
Fixes the odd errors when building the docs with newer versions of Rust. This should make the beta build pass again too, as well as stable. I think the issue was caused by intra doc links being stabilised and/or doc  rendering changing slightly.

After some fettling, the only way I could find to fix both 1.40 and stable is to stop checking fragments which isn't ideal. When we migrate to intra-doc-links, we can remove all the fragment links anyway. We could also drop cargo-deadlinks at that point too, or use it to check external links, etc.
I've also had to pin Criterion to a specific version as it bumped the minimum MSRV to 1.46 in 0.3.5.


Implement skip_randao_verification backend

The API accept the param but we don't use it during the block creation

well, the truth is that we do not verify it, so there is nothing to skip. closing.


[Bug] Get error when using IB to transfer large size of message

Refer to these code:
https://github.com/microsoft/mscclpp/blob/391d6f84b14d58d5215f6c72fb68af34146fc3ed/python/mscclpp_benchmark/allreduce.cu#L618-L663
When registered 6GB memory for IB data transfer and each node using 8 IB interfaces to transfer 128MB data simultaneously. Got error:
mscclppd-dev-000000:28252:28457 [1] MSCCLPP INFO NUMA node of ProxyService proxy thread is set to 1
terminate called after throwing an instance of 'mscclpp::Error'
  what():  src is remote, which is not supported (Mscclpp failure: InvalidUsage)

Can be reproduced by using branch binyli/bug and run with command:
scp -r /root/mscclpp/* mscclppd-dev-000001:/root/mscclpp/>/dev/null 2>&1;mpirun --allow-run-as-root -np 16 --bind-to numa   -hostfile /root/hostfile -x MSCCLPP_DEBUG=INFO -x LD_LIBRARY_PATH=/root/mscclpp/build:$LD_LIBRARY_PATH   -mca pml ob1 -mca btl ^openib -mca btl_tcp_if_include eth0 -x NCCL_IB_PCI_RELAXED_ORDERING=1 -x NCCL_SOCKET_IFNAME=eth0   -x CUDA_DEVICE_ORDER=PCI_BUS_ID -x NCCL_NET_GDR_LEVEL=5 -x NCCL_TOPO_FILE=/root/ndv4-topo.xml   -x NCCL_NET_PLUGIN=none -x NCCL_IB_DISABLE=0 -x NCCL_MIN_NCHANNELS=32 -x NCCL_DEBUG=WARN -x NCCL_P2P_DISABLE=0 -x NCCL_SHM_DISABLE=0   -x MSCCLPP_HOME=/root/mscclpp -x MSCCLPP_DEBUG_SUBSYS=ALL  -np 16 -npernode 8 python3 /root/mscclpp/python/mscclpp_benchmark/allreduce_bench.py

Because of the trigger bit width limitation, only support 32bit offset, not a bug


Add GlyphIdentifier & Kerner + upgrate to ttf-parser 0.13

During the update to 0.13 I noticed performance regressions with glyph_index & kern. However, these lead to deeper discoveries that each call was causing subtables to be parsed per-call (ultimately as ttf-parser avoids all allocation).
By adding new kerner() & glyph_identifier() APIs these subtables can be parsed once and re-used. This delivers a performance improvement over previous versions.
layout_a_sentence       time:   [9.6248 us 9.6286 us 9.6325 us]
                        change: [-25.054% -24.964% -24.883%] (p = 0.00 < 0.05)
                        Performance has improved.

layout_a_sentence (FontVec::try_from_vec)
                        time:   [9.4146 us 9.4206 us 9.4267 us]
                        change: [-32.857% -32.783% -32.710%] (p = 0.00 < 0.05)
                        Performance has improved.

layout_a_sentence (FontArc::try_from_slice)
                        time:   [9.5985 us 9.6020 us 9.6056 us]
                        change: [-30.016% -29.897% -29.708%] (p = 0.00 < 0.05)
                        Performance has improved.

layout_a_sentence (exo2-otf)
                        time:   [5.1790 us 5.1808 us 5.1828 us]
                        change: [-17.342% -17.261% -17.179%] (p = 0.00 < 0.05)
                        Performance has improved.

layout_a_sentence (exo2-ttf)
                        time:   [5.2433 us 5.2454 us 5.2476 us]
                        change: [-16.252% -16.181% -16.118%] (p = 0.00 < 0.05)
                        Performance has improved.

The other option is to have owned-ttf-parser provide the ability to pre-parse and store these subtables alongside the font itself.


Besu always needs cluster level permissions for Kubernetes NAT manager on GKE

Description

Currently the Kubernetes NAT manager checks all namespaces to find the besu service here: https://github.com/hyperledger/besu/blob/9eb32836b710bd997887c5c1f77436710be9eff1/nat/src/main/java/org/hyperledger/besu/nat/kubernetes/KubernetesNatManager.java#L87
For this to work, we need to give cluster level permissions to the besu deployment for it to be able to scan all the namespaces
In some environments, granting cluster level permissions is not authorised (for example, in a lot of banks)
Even if the besu service is in the same namespace as the besu deployment the NAT manager errors out when we do not grant cluster level permissions since it ALWAYS lists services in all namespaces.
Falls back to NONE, the enode does not have the correct public IP address anymore, instead it is <IP_ADDRESS>

What we need is the NAT manager to work without the need of cluster level permissions on GKE.
Perhaps a fallback to just checking in the local namespace (i.e the namespace of the besu deployment) before throwing the error?
Acceptance Criteria

NAT manager works without cluster level permissions on GKE

Steps to Reproduce (Bug)

Deploy a besu deployment, service without cluster level permissions
The NAT manager errors out, throws the following error:

https://github.com/hyperledger/besu/blob/9eb32836b710bd997887c5c1f77436710be9eff1/nat/src/main/java/org/hyperledger/besu/nat/kubernetes/KubernetesNatManager.java#L97
and falls back to NONE.
3. The enode url of the node has <IP_ADDRESS> as the public IP
Expected behavior: [What you expect to happen]
If searching for the service across all namespaces fails, it should look for the service in the local namespace before falling back to NONE.
Actual behavior: [What actually happens]
If searching for the service across all namespaces fails, it errors out, and falls back to NONE.
Frequency: [What percentage of the time does it occur?]
100%
Versions (Add all that apply)

docker image we use: https://hub.docker.com/layers/hyperledger/besu/22.10.4/images/sha256-036331dda5c27e2d51524614cd628d6f55fc14583b48516e1e019aef0de92a21?context=explore
Software version: [besu --version]
Java version: [java -version]
OS Name & Version: [cat /etc/*release]
Kernel Version: [uname -a]
Virtual Machine software & version: [vmware -v]
Docker Version: [docker version]
Cloud VM, type, size: [Amazon Web Services I3-large]

Smart contract information (If you're reporting an issue arising from deploying or calling a smart contract, please supply related information)
N/A
Additional Information (Add any of the following or anything else that may be relevant)
N/A

@joshuafernandes - Any opinion here?

Hi @non-fungible-nelson yes this is an issue and I believe tied to how we do things with K8S RBAC (ie Besu doesn't respect RBAC). The NAT manager works perfectly fine as long as cluster wide RBAC is disabled, but when it is enabled (most cases & this should be the norm to be honest) the permissions it requires are too wide. Have discussed with @matkt a while ago but priorities changed I believe
https://github.com/hyperledger/besu/blob/main/nat/src/main/java/org/hyperledger/besu/nat/kubernetes/KubernetesNatManager.java#L87 should be limited to single namespace imho and we pass the namespace in as another cli arg. In the K8S repo I've turned NAT manager off altogether because of this and prefer to remain secure and manually pass in the addresses via DNS

Thanks for this - leaving open for now. Might make a docs change regarding this for your advice? @alexandratran ping me if you think this makes sense to open a ticket with in besu docs.

Hi @non-fungible-nelson yes this is an issue and I believe tied to how we do things with K8S RBAC (ie Besu doesn't respect RBAC). The NAT manager works perfectly fine as long as cluster wide RBAC is disabled, but when it is enabled (most cases & this should be the norm to be honest) the permissions it requires are too wide. Have discussed with @matkt a while ago but priorities changed I believe
https://github.com/hyperledger/besu/blob/main/nat/src/main/java/org/hyperledger/besu/nat/kubernetes/KubernetesNatManager.java#L87 should be limited to single namespace imho and we pass the namespace in as another cli arg. In the K8S repo I've turned NAT manager off altogether because of this and prefer to remain secure and manually pass in the addresses via DNS

How did you use the DNS without the NAT manager and cluster level permissions? I went through your DNS setup and I have the same configuration, but I still get this issue:
When I try:

Turning off the NAT manager by settingnat-method=NONE, besu doesn't start with the error:

The `--Xnat-kube-service-name` parameter is only used in kubernetes mode. Either remove --Xnat-kube-service-name or select the KUBERNETES mode (via --nat--method=KUBERNETES)

Using the K8s NAT manager and starting besu as:

exec /opt/besu/bin/besu --config-file=/etc/besu/config.toml --Xdns-enabled=true --Xdns-update-enabled=true --Xnat-kube-service-name=${name}

with the following p2p options in my config:
             'p2p-enabled': true,
            'discovery-enabled': true,
            'static-nodes-file': '/etc/besu/static-nodes.json',
            'p2p-interface': '<IP_ADDRESS>',
            'p2p-port': 30303,
            'max-peers': 25,

The NAT manager crashes and doesn't use the DNS config specified because it doesn't have cluster-level permissions.

Hi @snigdha920 it has been a good while since I used it last and maybe code is changed now, but the two should be treated seperate. In the setup I had in the repo, Besu's NAT manager would fail and then it would lookup things via DNS (more so given it was told what the service name was, it didn't need to do the whole lookup). If this has now changed and the DNS lookup isn't working, then this should be fixed @non-fungible-nelson - effectively Besu in K8S will not work

Hi @snigdha920 it has been a good while since I used it last and maybe code is changed now, but the two should be treated seperate. In the setup I had in the repo, Besu's NAT manager would fail and then it would lookup things via DNS (more so given it was told what the service name was, it didn't need to do the whole lookup). If this has now changed and the DNS lookup isn't working, then this should be fixed @non-fungible-nelson - effectively Besu in K8S will not work

Yes, it doesn't work even if I provide the service name. It tries to list services across all namespaces, which causes the permission issue. So effectively besu in k8s doesn't work (without the cluster level permissions)

@snigdha920 It has been long time since the PR raised. I was checking on this and there was a question whether NAT is required any more?
Apparently NAT is required to communicate cross clusters. We could use Besu for public network (mainnet,testnet) following solution setting nat=NONE.

Each Besu run on a single Node in Kubernetes cluster
All Kubernetes nodes(where Besu run) are public and have a public ip
Pod has a init container to find out the public ip
Public ip is configured in the Besu configuration

Please refer to the solution in the github repo ethereum-helm-charts. This is the initContainer getting the public ip of the node
statefulset.yml

closed due to inactivity


Broken building on windows with CMake Ninja generator.

Building on windows with Ninja generator is currently broken, caused by recent change: https://github.com/libuv/libuv/pull/2085
The changes in OUTPUT_NAME causes the rules for both shared and static libraries to try to generate a file with the same name, uv.lib, resulting in cmake generating an ill-formed build.ninja.
Ninja produces the following diagnostics:
ninja: error: build.ninja:1006: multiple rules generate uv.lib [-w dupbuild=err]

For reference, see the output of this failing job: https://github.com/libuv/libuv/actions/runs/6203070753/job/16843050538

Fixed by https://github.com/libuv/libuv/pull/4185


fullcalendar.js and custom.min.js clash

Hi,
we using gentelella admin template in project, and normal work without fullcalendar.js.
But now there is new reqirement,and need to add the fullcalendar.js into project, but fullcalendar.js and custtom.min.js clash, the fullcalendar event (dayClick & eventClick) unable work, how to fix? pls kindly advice,

tks.

Hi can you show us the console error, do you know if the fullcalendar include his own version of JQuery?

@Lucifer0601 you still have this issue ? If you do please provide that screenshot or close the ticket if you don't.

@AndreiCN  the issue also exist, now web loaded,but only show the header,like below screenshot, when we manual click the button, the calendar can show.
And the dayClick and eventClick unable work. can you help to remote our PC，and we can provide the teamviewer to you.


Add mappings  for most of the datafixer code

This was partly a way for me to dig into some of the guts of the data-fixing code, but there are some useful transformations here too.
Note that the DataFix class names are mostly copied verbatim from the source code, so may not be the most consistent with the rest of the codebase. However, if #200 is merged, I don't think this'll be an issue.

No worries about suffixing. A lot of stuff is already suffixed


Feature/cql

As per #451 the required changes to add cql extension. I basically made a copy of the sql extension and replaced the keywords with those from cassandra. The tests are copied over also but with a usernames table instead of users because the latter is a reserved keyword in cql.

@googlebot I signed it!


VNC password

It would be good to allow setting the password protection for VNC server.
If you don't plan this feature I would like to add it, are you accepting pull requests?

Yes, you can send a PR. Thanks @Mikaka27


Cannot find module node_modules\vite-plugin-sass-glob-import\dist\index.js

This plugin seems exactly what I'm looking for. Unfortunately, the /dist folder doesn't seem to exist, so it's impossible to import the plugin.

@maximedaoust Thank you for flagging this. Looks like I've always been using plugin directly as an ES module so I never even noticed that dist wasn't published. That should be fixed now - use version 1.2.0


How to overwrite the langdata?

Forexample:
In the 'eng.tessdata',There are nine file.
But i want delete some file and create a new 'eng.tessdata'.
what can i do?

see
https://github.com/tesseract-ocr/tesseract/blob/master/doc/combine_tessdata.1.asc

Please use tesseract use forum for askiny question. Please read wiki first.


Address doesn't return with Google format?

When I type  tokyo japan or 451 university ave palo alto california, it saves it exactly like that in my address column instead of like Tokyo, Japan or 451 University Ave, Palo Alto, CA 94301, USA, which is how it would look on Google Maps. Is this featured in this gem?

Google API's response includes a formatted address but you'll have to get it from the response and store it in your model--it doesn't happen automatically. Please see the Advanced Geocoding section in the README. You want geo.address.

Thank you Mr.Reisner I missed it.


TUF integration

Summary
Integrates the tuf-js library and wires it up to the Sigstore TUF repository.
The current implementation queries the TUF repo for the various Rekor/Fulcio/CTFE keys/certs and assembles them into a structure which matches TrustedRoot protobuf. At some point, the Sigstore TUF repo will provide a serialized version of the TrustedRoot directly and a lot of this code will go away (https://github.com/sigstore/root-signing/pull/584).

I'm wondering about is error handling in downstream users like npm. Will we be able to catch and show helpful errors or retry? Worth adding any tests around errors fetching these tuf files?

I updated things a bit so that errors thrown from our TUF client are caught and rethrown as something that will be more friendly to sigstore-js consumers. Retry on error is already something baked-in to the TUF client so we don't need to do anything here.

Nice job 👍

Awesome work getting this in! 🥳


HTTP routing does not work for a service with the service mesh sidecar

Summary
I'm trying to setup a HTTP application with the kong sidecar, which will be exposed via kong gateway in kubernetes. Basically the same as https://github.com/Kong/kong-mesh-dist-kubernetes, but with HTTP service instead of raw TCP.
Probably I'm missing the idea how exactly it is working internally, unfortunately the documentation is not comprehensive yet.
I've forked https://github.com/encircled/kong-mesh-dist-kubernetes and changed the serviceb manifest, the rest is the same. Serviceb now is a web app which exposes HTTP GET on 8080 port.
Default routing from the example is:
http --ignore-stdin put adminip:8001/services/service-b host=serviceb port=8080 protocol=tcp -f &&
http --ignore-stdin post adminip:8001/services/service-b/routes name=service-b sources[1].ip=<IP_ADDRESS>/0 protocols=tcp -f
I've also added the following http routing (+tcp default one):
curl -i -X PUT
--url http://adminip:8001/services/service-b-http
--data 'url=http://serviceb.test.svc.cluster.local:8080'
curl -i -X POST
--url http://adminip:8001/services/service-b-http/routes
--data 'name=service-b-http'
--data 'paths=/test'
--data 'protocols=http'
And it does work: http://ingressip:8000/test
But if I remove the example TCP routing, the sidecar will fail with the following:
2019/08/27 13:27:45 [error] 35#0: *856 stream [lua] handler.lua:905: before(): no Route found with those values while prereading client data, client: xxx.xxx.xxx.xxx, server: <IP_ADDRESS>:7000 │
│ 2019/08/27 13:27:45 [info] 35#0: *857 client xxx.xxx.xxx.xxx:38818 connected to <IP_ADDRESS>:7000
where xxx.xxx.xxx.xxx is IP of kong ingress node
If I get it correctly, the sidecar is trying to connect via raw TCP and it will fail to match the route then.
Moreover, https://github.com/Kong/kong-mesh-dist-kubernetes does not work at all with kong 1.3, probably due to this raw TCP communication and this commit which expects http/https https://github.com/Kong/kong/commit/6441e1d30fea18cfdfdd71214020889804f122b9
SUMMARY_GOES_HERE
Additional Details & Logs

Kong version 1.2.2
Azure AKS - ubuntu

I've tried it as well, but it is not really related to the configuration of routing I'm struggling with. Injector works fine for me, in the example I've left it directly in the k8s deployment manifest file for transparency.
What is not documented is how to configure the service/routing for a HTTP application (which I will do later once I understand how it works).

indeed there seems to be an wrong assumption on streams.

Since native mesh support was removed from the next branch, this issue no longer applies to the next release of Kong. Closing this one!


Allow the optional tune configuration

Q
A

New feature?
yes

API breaks?
no

Deprecations?
no

Related tickets
slack discussion

License
Apache 2.0

There are additional tuned configuration parameters that an auth method can provide.
See https://www.vaultproject.io/docs/commands/auth/tune.html or https://www.vaultproject.io/api/system/auth.html#tune-auth-method
Checklist

[x ] Error handling code meets the guideline
[x ] User guide and development docs updated (if needed)

To Do

[x ] If the PR is not complete but you want to discuss the approach, list what remains to be done here
Documentation

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

  Sorry for the inconvenience, and as usual we appreciate your open source contributions.

I am going to close this. It seems you already have this capability.
If you have a nested options map, it will be applied as the tune configuration.


Revert "Add env to Exec."

Reverts solar-jsoc/executor#2

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 2 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.1%) to 92.562%

Totals

Change from base Build<PHONE_NUMBER>:
-0.1%

Covered Lines:
112

Relevant Lines:
121

💛  - Coveralls


Freeze-graph not working, allocating too much memory for inference

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 16.04
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): ('v1.5.0-rc1-1783-g7d7dce1', '1.5.0-rc1')
Python version: Python 2.7.12
Bazel version (if compiling from source): Build label: 0.9.0
GCC/Compiler version (if compiling from source): gcc (Ubuntu 5.4.0-6ubuntu1~16.04.5) 5.4.0
CUDA/cuDNN version: N/A (CPU only)
GPU model and memory: N/A
Exact command to reproduce:

save_alexnet_checkpoint.py
import os

import numpy as np
import tensorflow as tf

from alexnet import AlexNet
from datagenerator import ImageDataGenerator
from datetime import datetime
from tensorflow.contrib.data import Iterator

"""
Configuration Part.
"""

num_classes = 1000
checkpoint_path = "path/to/ckpt"

# Create parent path if it doesn't exist
if not os.path.isdir(checkpoint_path):
    os.mkdir(checkpoint_path)

# TF placeholder for graph input and output

# Initialize model
x = tf.placeholder(tf.float32, [1, 227, 227, 3],name="input")
keep_prob=tf.placeholder(tf.float32,[],name="keepProbs")
model = AlexNet(x, keep_prob, num_classes, [])
softmax = tf.nn.softmax(model.fc8,name="softmax")

# Initialize an saver for store model checkpoints
saver = tf.train.Saver()

# Start Tensorflow session
with tf.Session() as sess:

	# Validate the model on the entire validation set
	sess.run(tf.global_variables_initializer())

	# Load the pretrained weights into the non-trainable layer
	model.load_initial_weights(sess)

	# save checkpoint of the model
	checkpoint_name = os.path.join(checkpoint_path,
		                       'original_alexnet.ckpt')
	save_path = saver.save(sess, checkpoint_name)

	tf.train.write_graph(sess.graph_def, checkpoint_path, 'alexnet_def.pb',as_text=False)

	names=[]
	for n in tf.get_default_graph().as_graph_def().node:
		names.append(str(n.name))

    	names = sorted(names, key=str.lower)
    	for n in names:
		print n

	print("Model checkpoint saved at {}".format(checkpoint_name))

Freeze saved graph_def and weights:
bazel build tensorflow/python/tools:freeze_graph
bazel-bin/tensorflow/python/tools/freeze_graph --input_graph=/path/to/alexnet_def.pb -- input_checkpoint=path/to/ckpt/original_alexnet.ckpt --output_graph=/path/to/frozen_alexnet.pb --output_node_names='softmax' --input_binary=True

Forward Inference:
import os
import cv2
import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
from alexnet import AlexNet
from tensorflow.python.client import timeline
from caffe_classes import class_names

frozen_graph='/path/to/frozen_alexnet.pb '

def load_graph(frozen_graph_filename):
    with tf.gfile.GFile(frozen_graph_filename, "rb") as f:
        graph_def = tf.GraphDef()
        graph_def.ParseFromString(f.read())

    with tf.Graph().as_default() as graph:
        tf.import_graph_def(graph_def, name="prefix")
    return graph

imagenet_mean = np.array([104., 117., 124.], dtype=np.float32)

current_dir = os.getcwd()
image_dir = os.path.join(current_dir, 'images')

img_files = [os.path.join(image_dir, f) for f in os.listdir(image_dir) if f.endswith('.jpeg')]

imgs = []
for f in img_files:
    imgs.append(cv2.imread(f))

g=load_graph(frozen_graph)
with tf.Session(graph=g) as sess:

    softmax=g.get_tensor_by_name('prefix/softmax:0')
    x = g.get_tensor_by_name("prefix/input:0")
    keep_prob = g.get_tensor_by_name("prefix/keepProbs:0")

    for i, image in enumerate(imgs):

        img = cv2.resize(image.astype(np.float32), (227,227))
        img -= imagenet_mean
        img = img.reshape((1,227,227,3))

	options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
	run_metadata = tf.RunMetadata()

        print 'Begin session:'
        probs = sess.run(softmax, feed_dict={x: img, keep_prob: 1}, \
			options=options, run_metadata=run_metadata)
        print 'Ended session'
	print 'Class: ' + str(class_names[np.argmax(probs)]) \
	+ ', Prob: ' + str(probs[0,np.argmax(probs)])
	fetched_timeline = timeline.Timeline(run_metadata.step_stats)
	chrome_trace = fetched_timeline.generate_chrome_trace_format(show_memory=True)
	with open('./forward_timeline.json', 'w') as f:
		f.write(chrome_trace)

log_alexnet.sh
#!/bin/bash

logpid() { while sleep 0.1; do ps -p $1 -o pcpu= -o pmem= ; done; }
python frozen-infer.py &
logpid $! | tee ./pid.log

Describe the problem
I ran my own Alexnet frozen model and the forward inference script I had required a large amount of RAM, around 2.466 GB rather than the memory required to load model size which was (243.9 MB).
Essentially I took scripts from finetune_alexnet_with_tensorflow, including alexnet.py, datagenerator.py, caffe_classes.py, and heavily modifying validate_alexnet_on_imagenet.ipynb to save a checkpoint of the Alexnet-implementation for TensorFlow. The weights were taken from this link. I ran save_alexnet_checkpoint.py first to generate a binary proto graph definition of the AlexNet file and corresponding checkpoint files. Using the default freeze_graph tool from TensorFlow compiled by Bazel, I created a frozen graph. I then ran log_alexnet.sh to see how much of my RAM a forward inference uses on my laptop. The image I used was from the above mentioned github repo, llama. The script outputs the percentage of CPU and memory the python script frozen-infer.py  uses.
My CPU: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
My RAM is 8 GB, but according to the free command, it is 7.909 GB, where htop reports it as 7.54 GB. The maximum RAM allocated by sess.run and the python script was thus, 0.327*7.54 = 2.466 GB (see below log). This is insanely larger than the 243.9 MB model I had. The chrome_trace I generated reports a maximum of around 235 MB, which is no where near what was actually happening.
forward_timeline.json.tar.gz
My question is why does the session run require such memory, and how am I able to reduce it down to only consume the required memory to load the model, which would be ~250 MB? I am concerned about this because I will to transferring this code to a Raspberry Pi 3 soon.
It seems someone else had the same issue on stackoverflow here.
Source code / logs
The output I got is such from log_alexnet.sh:
 0.0  0.7
 0.0  1.0
 0.0  1.2
/usr/local/lib/python2.7/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
  from ._conv import register_converters as _register_converters
 0.0  1.4
 0.0  1.8
 0.0  2.0
 0.0  2.2
 0.0  7.7
 194  5.3
Begin session:
 204 10.4
 215 16.8
 226 17.7
 236 22.1
 248 25.8
 259 30.7
 269 32.7
 280 27.7
 145 29.4
 151 27.3
 156 29.2
 162 24.6
 167 28.9
 172 27.0
 178 27.8
 183 17.1
 188 18.5
 194 18.1
Ended session
Class: llama, Prob: 0.99927825
 134 21.3

I'll get to memory-mapping the model soon, here is the profiler output for the time being:
Line #    Mem usage    Increment   Line Contents
================================================
    10  194.477 MiB  194.477 MiB   @profile
    11                             def infer():
    12  194.477 MiB    0.000 MiB   	frozen_graph='frozen-graphs/frozen_alexnet.pb'
    13
    14  196.004 MiB    0.000 MiB   	def load_graph(frozen_graph_filename):
    15  196.004 MiB    0.000 MiB   	    with tf.gfile.GFile(frozen_graph_filename, "rb") as f:
    16  196.004 MiB    0.000 MiB   		graph_def = tf.GraphDef()
    17  431.656 MiB  235.652 MiB   		graph_def.ParseFromString(f.read())
    18
    19  431.656 MiB    0.000 MiB   	    with tf.Graph().as_default() as graph:
    20  433.652 MiB    1.996 MiB   		tf.import_graph_def(graph_def, name="prefix")
    21  433.652 MiB    0.000 MiB   	    return graph
    22
    23  194.477 MiB    0.000 MiB   	imagenet_mean = np.array([104., 117., 124.], dtype=np.float32)
    24
    25  194.477 MiB    0.000 MiB   	current_dir = os.getcwd()
    26  194.477 MiB    0.000 MiB   	image_dir = os.path.join(current_dir, 'images')
    27
    28  194.477 MiB    0.000 MiB   	img_files = [os.path.join(image_dir, f) for f in os.listdir(image_dir) if f.endswith('.jpeg')]
    29
    30  194.477 MiB    0.000 MiB   	imgs = []
    31  196.004 MiB    0.000 MiB   	for f in img_files:
    32  196.004 MiB    1.527 MiB   	    imgs.append(cv2.imread(f))
    33
    34  433.652 MiB    0.000 MiB   	g=load_graph(frozen_graph)
    35  435.652 MiB    2.000 MiB   	with tf.Session(graph=g) as sess:
    36
    37  435.652 MiB    0.000 MiB   	    softmax=g.get_tensor_by_name('prefix/softmax:0')
    38  435.652 MiB    0.000 MiB   	    x = g.get_tensor_by_name("prefix/input:0")
    39  435.652 MiB    0.000 MiB   	    keep_prob = g.get_tensor_by_name("prefix/keepProbs:0")
    40
    41 1664.207 MiB    0.000 MiB   	    for i, image in enumerate(imgs):
    42
    43  437.680 MiB    2.027 MiB   		img = cv2.resize(image.astype(np.float32), (227,227))
    44  437.680 MiB    0.000 MiB   		img -= imagenet_mean
    45  437.680 MiB    0.000 MiB   		img = img.reshape((1,227,227,3))
    46
    47  437.680 MiB    0.000 MiB   		options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
    48  437.680 MiB    0.000 MiB   		run_metadata = tf.RunMetadata()
    49
    50  437.680 MiB    0.000 MiB   		print 'Begin session:'
    51  437.680 MiB    0.000 MiB   		probs = sess.run(softmax, feed_dict={x: img, keep_prob: 1}, \
    52 1663.305 MiB 1225.625 MiB   				options=options, run_metadata=run_metadata)
    53 1663.305 MiB    0.000 MiB   		print 'Ended session'
    54                             		print 'Class: ' + str(class_names[np.argmax(probs)]) \
    55 1663.305 MiB    0.000 MiB   		+ ', Prob: ' + str(probs[0,np.argmax(probs)])
    56 1663.305 MiB    0.000 MiB   		fetched_timeline = timeline.Timeline(run_metadata.step_stats)
    57 1664.207 MiB    0.902 MiB   		chrome_trace = fetched_timeline.generate_chrome_trace_format(show_memory=True)
    58 1664.207 MiB    0.000 MiB   		with open('./forward_timeline.json', 'w') as f:
    59 1664.207 MiB    0.000 MiB   			f.write(chrome_trace)

Nagging Assignee: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @petewarden: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @petewarden: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @petewarden: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Going to close this issue for now, I've gotten preoccupied with other things at the moment.

I have the same problem. Session.run consumes more memory than it should.


fix: prevent leaking home when building without sandbox

Multiple times when I tried to get my WSL image build working on a self-hosted GitHub Action running in a rootless docker container. I ended up with the super annoying message and failure:
error: home directory '/homeless-shelter' exists; please remove it to assure purity of builds without sandboxing

It was quite hard to pin-point where this came from, but I managed to reproduce it and saw that in this environment /homeless-shelter was writable and thus this derivation ended up writing some of it's cargo cache to there. When I set the HOME variable like this, the issue disappears and I am finally able to build my configuration.
In this latest case it was via nix-portable within a rootless docker container:
runner@chameleon:/$ ls /home/runner/.nix-portable/emptyroot/homeless-shelter/.cargo/.package-cache
.package-cache         .package-cache-mutate

I think you need to solve this at your runner level otherwise many other packages will also encounter this issue.

I haven't run into this for any other packages, so I don't think it is that common with things that tries to write to the unwrite-able home. But I guess in the normal/strict sandboxed environment it will prevent the writing without failure and in the unsandboxed environment it will just be allowed to write wherever.
I do remember having issues like this when I had unsandboxed environments that I added sandbox to and several tools failed because they tried to write to HOME.
I guess the cargo is lenient and don't blow up when trying to write to unwritable location.

I guess the cargo is lenient and don't blow up when trying to write to unwritable location.

Yeah, it probably falls back to another path or doesn't write the cache at all.


Extract storage modules from core.

Reduces the amount of dependencies included for a leaner JAR. Current size is an atrocious 50MB.

ElasticSearch support is now an optional feature - com.github.codingchili.chili-core:elastic:*


Convert Configuration from YAML to JSON

Convert to JSON to remove dependency on YAML module.

Resolved in feature/rewrite.


When is rewrite finished??

Try to finish rewrite by Feb 7th

No deadline but "try" to finish by March (so I wont have to do work lol)


Window Taskbar Progress (closes #1183)

This is my implementation for window taskbar progress support, which would resolve #1183.
What's new

glfwSetWindowTaskbarProgress() function to display the progress of some action in the taskbar.
GLFW_TASKBAR_PROGRESS_DISABLED value to stop displaying the taskbar progress.
GLFW_TASKBAR_PROGRESS_INDETERMINATE value to display the taskbar progress in an indeterminate state (on Windows this cycles the progress from 0% to 100% repeatedly).
GLFW_TASKBAR_PROGRESS_NORMAL value to display the user given progress status (0%-100%) on the taskbar.
GLFW_TASKBAR_PROGRESS_ERROR value to display an error taskbar progress.
GLFW_TASKBAR_PROGRESS_PAUSED value to display a paused taskbar progress.

Platform differences
Windows
On Windows the ITaskbarList3 interface is used to set the taskbar progress which is available since Windows 7.
Linux
On Linux the Unity LauncherAPI is used via DBus. A valid application .desktop file with the same name as the executable is required for the API to work. As far as I know only KDE and the Unity DE use this API.
For the DBus communication I added an implementation which loads the needed functions at runtime from the libdbus-1.so.3 shared library, see posix_dbus.h and posix_dbus.c.
GLFW_TASKBAR_PROGRESS_INDETERMINATE, GLFW_TASKBAR_PROGRESS_ERROR and GLFW_TASKBAR_PROGRESS_PAUSED are not supported by the Unity LauncherAPI so they instead behave like GLFW_TASKBAR_PROGRESS_NORMAL.
macOS
On macOS the NSProgressIndicator class is used to set the dock icon progress which is available since macOS 10.0.
GLFW_TASKBAR_PROGRESS_ERROR and GLFW_TASKBAR_PROGRESS_PAUSED are not supported by the NSProgressIndicator class so they instead behave like GLFW_TASKBAR_PROGRESS_NORMAL.
Implementation status

[x] Windows (supported since Windows 7)
[x] Linux (X11 & Wayland)
[x] macOS (supported since macOS 10.0, Thanks to @ws909 for the implementation)

Tested Platforms
As of 9f17a69

[x] Kubuntu 22.10 (X11 & Wayland)
[x] Kubuntu 22.04 LTS (X11 & Wayland)
[x] Windows 11 Pro (Visual Studio 2022)
[x] Windows 10 Pro (Visual Studio 2019)
[x] Windows 8.1 (Visual Studio 2013)
[ ] Windows 7
[x] Windows Vista Ultimate (Visual Studio 2010)
[ ] Windows XP
[ ] macOS

I'll help with the MacOS implementation in the next few days. :)

@ws909 Reading the Microsoft docs also indicates this behavior. They prioritize based on the progress state (error, paused, normal and indeterminate in this order). When two windows in a group try to set the normal progress value then the least progress gets used.

So, I created a quick working implementation. I'll create a PR for this branch hopefully tomorrow, when it's finished, but while I looked at it, I wondered why you chose to use integers for the progress bar? Using float or double provides a higher precision. This is also what NSProgressIndicator uses (double).
The default progress bar in Cocoa is very thin. Some applications such as IntelliJ, use a much thicker progress bar, but doing this requires subclassing NSProgressIndicator with custom drawing. So while an extra thickness parameter could be added to the function, providing an implementation is much more complicated. It is also possible to add a new separate function; glfwSetTaskbarProgressBarThickness later in the future, if this is needed. It's also possible to modify the vertical position of the progress bar, but this requires a new parameter (or separate function) for GLFW users to set. I also tried setting a tooltip and accessibility names for the indicator, but this seemed to have no effect, so my initial idea to add that as a parameter, serves no purpose.
I figured a better way of displaying the progress when multiple windows are using the progress bar, is to calculate the combined completion of all of them. This can be improved if each progress is given a weight, which would require a new parameter (defaults to GLFW_DONT_CARE), but this is not needed.

I'll create a PR for this branch hopefully tomorrow, when it's finished

:+1:

I wondered why you chose to use integers for the progress bar?

I did this because on Windows the ITaskbarList3::SetProgressValue() function only allows setting the progress value as a ULONGLONG. Now that you mentioned this, I also think it would be better to use a double (also used in the Unity LauncherAPI) instead and round the value to the nearest integer in the Windows implementation.

So while an extra thickness parameter could be added to the function, providing an implementation is much more complicated.

This feature would be macOS specific, the Unity LauncherAPI and the ITaskbarList3 interface both do not provide such functionality.

It's also possible to modify the vertical position of the progress bar, but this requires a new parameter (or separate function)

Same as above.

I figured a better way of displaying the progress when multiple windows are using the progress bar, is to calculate the combined completion of all of them.

Something like this? double progressValue = combinedWindowProgress / (windowCount * 100.0) so we keep the 0% to 100% range.
Should this value then be set for each window which doesnt use the GLFW_TASKBAR_PROGRESS_DISABLED state?
Should we also set the same state for each window (prioritizing error, paused, normal and indeterminate in this order)?
On Windows the windows can be ungrouped (so each can display its own progress data), this would result in each window displaying the same progress and state. :/

Something like this? double progressValue = combinedWindowProgress / (windowCount * 100.0) so we keep the 0% to 100% range.
Should this value then be set for each window which doesnt use the GLFW_TASKBAR_PROGRESS_DISABLED state?
Should we also set the same state for each window (prioritizing error, paused, normal and indeterminate in this order)?

Well, it was a comment on the MacOS implementation I’ll write, so apply that formula to the Dock tile’s NSProgressIndicator (Which there only exists one of). And windowCount will not be the application’s total window count, but the number of windows with a progress state other than DISABLED. And it doesn’t make sense to have this order of priorities for the tile’s state on MacOS. If any window has normal/paused/error (those are equal on MacOS), use that for the indicator, else the indeterminate state, and then disable it if no window uses it. So, in short, that part of the comment was completelt unrelated to the API itself, and all the other platform implementations.

macOS (supported since macOS 10.0 [...]

The oldest version of MacOS that GLFW supports, is 10.8, so there shouldn't be any problems with the Dock progress indicator on any versions of MacOS. Cocoa replaced Carbon in 10.0 (first version of OS X), which was used in classic Mac OS. GLFW hasn't had a Carbon implementation since GLFW 2.

Would GLFW_PROGRESS_INDICATOR_ be a better prefix than GLFW_TASKBAR_PROGRESS_, for the defines?

Would GLFW_PROGRESS_INDICATOR_ be a better prefix than GLFW_TASKBAR_PROGRESS_, for the defines?

I named it GLFW_TASKBAR_PROGRESS_ to make it clear that it should be used with glfwSetWindowTaskbarProgress().
I can rename it but then we maybe should also rename the glfwSetWindowTaskbarProgress() function itself?.

A GLFW_PROGRESS_INDICATOR_ prefix specifies that this enum value is applicable to any progress indicator.
This means that if GLFW ever adds progress indicators in any spots other than the taskbar/dock, this enum can be used for those as well. The likelihood of GLFW ever providing any other progress indicators, though, is very small.
glfwSetWindowTaskbarProgress() specifies that the specific progress indicator in question, is the one on the taskbar icon.
Personally, I would prefer changing Taskbar to Dock (simpler, shorter), or just remove it entirely.
glfwSetWindowProgressIndicator() could work.
These are really not big issues.

My choice would be:

A GLFW_PROGRESS_INDICATOR_ prefix specifies that this enum value is applicable to any progress indicator.

:+1:

glfwSetWindowProgressIndicator() could work.

:+1:

@elmindreda The PR should now be feature complete and ready to be reviewed and merged (see updated first comment).

@GamesTrap Thank you, will review as soon as I'm able!


Bump nokogiri to a secure version

Includes a fix for CVE-2018-8048.

Hi @greysteil Thanks for the fix, we have a few more third party deps we'll need to upgrade as well, just haven't had a chance to work through the migration.

Rad. Would you be up for using Dependabot to get those updates done?
I wrote it and can help out, but it's got a few thousand users now so should be relatively smooth sailing. It's totally free for open source (obviously), and should save you some time.
You'd also be helping out the community by having it run on this repo - it collects the CI results from each update PR it creates to create a compatibility score for each new version. Having big open source repos with good test suites using it means we can then feed back any bugs in new versions to the maintainers, including a link to the test run as a reproduction case.


Updated webui to support logs correct url

but correctly this time

as a note this ended up not being necessary, see gempir/justlog@6138493


Setup Code Signing using Fastlane

We are using fastlane create app id, certificates and provisioning files for iOS project.
In this issue, we need to discuss what should we do here to config code signing into project.

App ID: Debug, Staging and Release schemes
Certificates: Development and Distribution
Provisioning: Development, Ad-hoc, AppStore

Task:

[ ] Using CodeSigningManager.rb
[ ] Write scripts to run automatically fastlane match
[ ] Move these files above (manager, scripts) into templates

Done in this pull request: https://github.com/nimblehq/ios-templates/pull/128


Ensure we are in accept state in DTLSv1_listen

Checklist

[x] CLA is signed

Description of change

Calling SSL_set_accept_state() after DTLSv1_listen() clears the state, so
SSL_accept() no longer works. In 1.0.2 calling DTLSv1_listen() would set
the accept state automatically. We should still do that.
Fixes #1989

+1

Pushed. Thanks.


Issue: Could not import pystray: Bad display name ""

Since 3.1.38 until latest version 3.1.41 I get the following error.

2020-03-21 01:54:43.751 | WARNING  | flexget.tray_icon::19 - Could not import pystray: Bad display name ""

I've downgraded to last version 3.1.37 without this error

seems not critical, but would be nice if we have an option to disable for headless use like running in docker.

This was introduced as part of a new tray icon feature. Level should be a debug message in latest version and its completely harmless.
I'll improve the message to be a bit more informative but adding logic to disable the tray icon completely would raise complexity while not solving any issues.

Added ability to disable tray icon by adding --disable-tray-icon to daemon start

@liiight is that argument required in order not to crash? That would suuuck :)

AFAIK, it doesn't crash currently, just throws that log message. I'll encapsulate all the import though under this option in order not to even show that

Oh, it,s a crasher if you have gtk3 installed.
[flexget@liten ~]$ ./bin/flexget --version
Unable to init server: Could not connect: Connection refused
Unable to init server: Could not connect: Connection refused
3.1.42
You are on the latest release.

Without gtk3 installed:
[flexget@liten ~]$ ./bin/flexget daemon start
2020-03-22 09:31:40.583 | DEBUG    | flexget.tray_icon:<module>:20 - Could not import pystray: Bad display name ""
2020-03-22 09:31:47 INFO     scheduler                     Starting scheduler

With gtk installed:
[flexget@liten ~]$ ./bin/flexget daemon start
Unable to init server: Could not connect: Connection refused
Unable to init server: Could not connect: Connection refused
2020-03-22 09:36:48 INFO     scheduler                     Starting scheduler

(flexget:451802): Gtk-CRITICAL **: 09:36:48.053: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(flexget:451802): Gtk-CRITICAL **: 09:36:48.053: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(flexget:451802): Gtk-CRITICAL **: 09:36:48.054: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed
Segmentation fault (core dumped)

Yikes. Will handle asap, thanks.

@Xake can you paste debug logs of that crash please?

using --disable-tray-icon should now completely disable it.
Please let me know if it works

We should not crash or have shitty UX without arbitrary arguments.

I've been meaning to write my own downloader script for a while. This might just push me over the edge. This level of bloat is unacceptable.

@jbalyork are you under the impression that someone owes you anything? Are you aware that this is an open source project? Your comments and tone is what is unacceptable and you are more than welcome to get lost if you have a problem with anything

we appreciate your efforts @liiight

MY tone? Christ. I hope your day is as pleasant as you are.

This issue has been mentioned on Forum - FlexGet. There might be relevant details there:
https://discuss.flexget.com/t/fail-start-server-after-updagte-to-3-1-42/5074/4


[#2433] improvement(trino-connector): simplify dynamic catalog names

What changes were proposed in this pull request?
Support omitting metalake prefix for Trino connector.
Why are the changes needed?
Gravitino register a dynamic catalog with name like some_metalake.some_catalog. It is long and must be quoted to use. Besides, if one wants to manage file-based catalogs with Gravitino, users need to adjust their SQL for catalog name changing. With this patch, Trino admins can add a Gravitino connector property gravitino.simplify-catalog-names=true to keep the catalog name as it is without some_metalake. prefix.
Fix: #2433
Does this PR introduce any user-facing change?
No for default settings. If gravitino.simplify-catalog-names=true is set, the catalog names will change when using Trino with Gravitino.
How was this patch tested?
UT

test cases will be added...

I think we should consider these factors:

If the configuration gravitino.simplify-catalog-names=true is set, users can only configure one Gravitino connector.
Check if the catalog name conflicts with other connectors.

Thank for your worksI
There are two issues that need to be explained.
1、Multiple Gravitino connectors can work in CatalogConnectorManager. All the Gravitino-managed catalog creations need to call GravitinoConnectorFactory#create again. We name these catalogs as dynamic catalogs. The dynamic catalog will be added to CatalogConnectorManager when it is created.

Ignore duplicated catalog is ok.  Graviton-managed catalogs are unique, so they might duplicate user-configured catalogs. And that loaded after Trino manager catalogs. .If that happens, we should currently ignore the duplicate catalog and log the error.

@xiacongling Is your pull request ready now? I think it still lacks some tests and checks for name conflicts.

@diqiu50
Don't forget to track an issue that makes the default value of this configuration true.

I would suggest to make this configuration enabled by default, which is a convention for users to use Trino, and also aligned with Spark, what's your opinion @diqiu50 @yuqi1129 @xiacongling ?

@jerryshao , I agree in general,  but should it include in release 0.5.0, I fear that many changes to tests need to be made.

let me think about this, but at least you should create an issue to track this.


Feature request: compatibility with the {crosstalk} package

{crosstalk}  allows filtering markers on a leaflet map without needing a full blown shiny server is a great feature of leaflet.
Is it possible to add this feature to rdeck?
https://rstudio.github.io/crosstalk/widgets.html

Would be useful, particularly when combined with #48.


➡ Migrate core package 'one-light-ui' into ./packages

Description of the Change
This PR migrates the core one-light-ui package into atom/atom.  See issue #17856 for more information.

do you mind adding that?

Sure thing. Added in 6ab16392344509151eeb1bde8671668b3d96e241.

⚡