Google Authentication using firebase

I would like to implement Google authentication using Firebase. This feature would allow users to log in quickly and securely using their Google accounts, streamlining the authentication process and improving user experience. It can also enhance security by relying on Google’s authentication infrastructure, which is well-established and trusted.

@GVishnudhasan Could you please assign this issue to me under gssoc-ext and hacktoberfest

@GVishnudhasan I am sorry but due to personal commitments, I will not be able to continue with the project at this time. I sincerely apologize for any inconvenience this may cause

@samriddhitiwary   Can you please! assign me to work on this issue.

@GVishnudhasan if the issue is still open , could you assign me this'


Remove appcelerator reference

Motivation
As per ticket FH-3250 we are no longer supporting Titanium/appcelerator apps. Removing them from ups also.

@sedroche sorry ... I did rebase - can you update your PR ?

version bumps, we tend to only do when doing an actual release.


Buffering flag in not working

controller.isBuffering is false when video is still buffering.
Functionality is stopped due to this things.Please help asap.

@pratapvikram
Can you provide flutter doctor -v , video_player plugin version you are using along with a minimal code sample that shows the issue you are reporting ?
Also as a note, when you open an issue, please use new issue template and fill out requested details so that we'll have enough details to work with.
Please help asap.  we can't help if there's not enough details provided, so please be patient.


reviewnb

given that this repo is going to be all notebooks, shall we use reviewNB?

I set this up: https://app.reviewnb.com/xarray-contrib/xarray-tutorial/ but the bot isn't commenting on PRs yet. Maybe I needed to have created the PR after connecting the app?


Add timezone to snapshot timestamp

old: 2018-02-14T15:13:46.391829
new: 2018-02-14T15:13:46.391829+00:00

...required to display the correct time on frontend (without dirty hacks)

Can you export this as function into utils/dt.py?


fails to run "/snopsboot/cloneGitRepos.py" on CENTOS / RHEL 7

Looks like /tmp is empty when running in RHEL/CENTOS 7
docker.io/f5devcentral/f5-super-netops-container   base                981a467f7318        5 weeks ago         206.7 MB
$ docker --version
Docker version 1.12.6, build 0fdc778/1.12.6

[cloneGitRepos] Retrieving repository list from https://github.com/f5devcentral/f5-super-netops-container.git#master
[updateRepos] Processing /tmp/snops-repo/images/base/fs/etc/snopsrepo.d/base.json
[updateRepos] Processing /tmp/user_repos.json
[updateRepos][error] Open of file "/tmp/user_repos.json" failed: [Errno 2] No such file or directory: '/tmp/user_repos.json'
[cloneGitRepos] Loading repositories from /home/snops/repos.json
Traceback (most recent call last):
  File "/snopsboot/cloneGitRepos.py", line 34, in <module>
    repo_file = safe_open(args.filename)
  File "/snopsboot/cloneGitRepos.py", line 20, in safe_open
    print "Open of file '{0}' failed({1}): {2}".format(args[0], e.errno, e.strerror)
TypeError: 'Namespace' object does not support indexing

same here
[cloneGitRepos] Retrieving repository list from https://github.com/f5devcentral/f5-super-netops-container.git#master
[updateRepos] Processing /tmp/snops-repo/images/jenkins/fs/etc/snopsrepo.d/jenkins.json
[updateRepos]  Processing /tmp/snops-repo/images/base/fs/etc/snopsrepo.d/base.json
[updateRepos] Processing /tmp/user_repos.json
[updateRepos][error] Open of file "/tmp/user_repos.json" failed: [Errno 2] No such file or directory: '/tmp/user_repos.json'
[cloneGitRepos] Loading repositories from /home/snops/repos.json
Traceback (most recent call last):
File "/snopsboot/cloneGitRepos.py", line 34, in
repo_file = safe_open(args.filename)
File "/snopsboot/cloneGitRepos.py", line 20, in safe_open
print "Open of file '{0}' failed({1}): {2}".format(args[0], e.errno, e.strerror)
TypeError: 'Namespace' object does not support indexing
[root@ansible ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
Client:
Version:         1.13.1
API version:     1.26
Package version: docker-1.13.1-103.git7f2769b.el7.centos.x86_64
Go version:      go1.10.3
Git commit:      7f2769b/1.13.1
Built:           Sun Sep 15 14:06:47 2019
OS/Arch:         linux/amd64

Repository Archived


prefill and decode rate acquisition

❓ General Questions
I now hope to use a scripted software to test mlc in multiple loops and record the prefill and decode rates after each input. Is there any way to capture the corresponding prefill and decode rates after each input? ?

This is identical question to #1161. See the reply: https://github.com/mlc-ai/mlc-llm/issues/1161#issuecomment-1787268899


Extract a method for locating Bazel

bazelisk can be thought of as two separate pieces. The first of these is a mechanism for locating a particular bazel version, possibly downloading it from the Web, or using a local install. The second piece is the additional functionality for flag flipping and finding out where problems have occurred within commits to the project.
This PR extracts the location of the bazel binary into its own method which can be used by other tooling that also needs to locate the binary.

Running the failing //:go_bazelisk_test test on HEAD of master locally also times out for me. I'm not sure the test failure is related to this PR.

Thank you!


Color logic

Adding color logic!

It should be a dot from current color to the color you are trying to absorb and then check the distance like < 0.9?
In case it pass you should add the color to the color of the character something like character.mass() * character.color() + target.mass() * target.color()?
Add twicks from color?

Yellow and Green should be light you get life while been on the sun and loose in the shadow?
Magenta and Blue darkness you get life while been in the shadow and loose in the sun?
Red you get a speed increase in the ground?
Cyan you get a speed increase in the jump?

Diminish your mass by giving it away? Then you need some immunity or something, or low enough 0.1?
In case this is another character you should take both mass and divide it by 2.

I added a variable to enable color matching from the color we see on the ground.
enum ColorEnum {
    COLOR_ERROR = 0;        // Error in the function?
    COLOR_NO = 1;           // No change of color.
    COLOR_YES = 2;          // Change of color.
    COLOR_CIRCLE = 3;       // Change of color in a circle.
}

The color circle is not implemented yet but could be in the future. This is a new variable in the player parameter.
    // Change color when you eat.
    ColorEnum change_color = 7;


[UPDATE] No Code v3, now available on Google Play Store

Finally! "No Code" is now available on Android platform!
You can download "No Code" app from Google Play.
100% devices compatibility!
secure coding
no ads
no registration required
link: https://play.google.com/store/apps/details?id=com.secure.nocode.nocode
SHA256 :
MD5:
Thank you!

Found one issue. Icon has {nocode}. It should be {}

I can bet, that "Info" button has code, so it's now not "No Code"

Yes @ivan770 I know... damn bug! I promise, I will fix in the next release!
Please rate the app on Google Play.
Todo:

update icon
fix button

Good job getting to release after receiving all that VC investment over the years!
I just spotted a critical bug however, the app has a title bar and a FAB button, both of which contain code...
If you review the NoCode 1.0 specs, they specify a pure blank white (or black) screen that can only be exited by using the OS software (swiping from the bottom upward, to reveal the back button).

floating button include whether include no code?

I've also just read in the specs that the phone must be switched off whenever NoCode is running.

We are working on nocode best practices. Next week will be probably available the new version.

Excellent, I look forward to seeing no code produced whatsoever for the next release 👍

** ++ UPDATE 02 March 2018 ++ **
NEWS

New NoCode release Up to version 3!

new secure features
less code
no coding skill required
now you can create your blockchain without coding
bug fixing

Our Apologies

We decided to not change NoCode app icon because is not coding... is just a picture!
Thank you all!
Please download and enjoy!

noice

No App


Switch SPM to use Swift 5.2

Since if you install Starscream via Cocoapods, it will use Swift 5.0, and the project file also uses 5.x. So there doesn't appear to be a reason for SPM to be limited to 4.2.

Thanks! Appreciate the PR!


fix: correct android makefile relative paths

This fixes relative paths to node_modules in CMakeLists.txt that caused build failure on Android.
Closes https://github.com/serenity-kit/react-native-libsodium/issues/43 https://github.com/serenity-kit/react-native-libsodium/issues/45
Tested on following system:
CMake: 3.22.1

System:
    OS: macOS 13.4.1
    CPU: (8) arm64 Apple M1 Pro
    Memory: 116.34 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.16.0 - ~/.nvm/versions/node/v18.16.0/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 9.5.1 - ~/.nvm/versions/node/v18.16.0/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Managers:
    CocoaPods: 1.12.1 - /opt/homebrew/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 22.4, iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4
    Android SDK: Not Found
  IDEs:
    Android Studio: 2022.2 AI-222.4459.24.2221.9862592
    Xcode: 14.3.1/14E300c - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.20 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.2.0 => 18.2.0
    react-native: 0.71.7 => 0.71.7
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Thanks @pwltr, will cut a new release tomorrow

Hey @pwltr, sorry took me a bit longer. You change broke other cases and I now added a dynamic node_modules finding solution that works for other projects as well https://github.com/serenity-kit/react-native-libsodium/pull/47
I cut a release and hopefully works as expected now

Hey no worries, thanks for taking a look.


[fix][controllers]Add all annotation needed by OLM

Add all annotation needed by OLM on all controllers

It's ok


3D option for ladder page

podium with the winner's names and icons superimposed somewhere?
trophies?

 Tried to super-impose people's names onto each podium and it looked like hot garbage and barely worked


Preparations for Kodi repo

Check if this PR fulfills these requirements:

[x] My changes respect the Kodi add-on development rules
[x] I have read the CONTRIBUTING document.
[x] I made sure there wasn't another one Pull Requests opened for the same update/change
[x] I have successfully tested my changes locally

Types of changes

[ ] New feature (non-breaking change which adds functionality)
[ ] Feature change (non-breaking change which change behaviour of an existing functionality)
[x] Improvement (non-breaking change which improve functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
These are the final changes for inclusion into the Kodi repository.
This fixes #191

This should not be merged until we have everything else sorted out.

Waiting for your confirmation to merge
i also still have to better understand how works all this changes

We haven't made any real changes to the add-on, and it should work as before. (It does for me)
You can try and run make run in your master branch on your local system to see if the integration tests work. (You may want to add a test/userdata/credentials.json with your username and password)

Sorry, the make run you have to do in the 'integration-tests` branch.

So now this PR also removes enum34 and mysql-connector-python, but includes it in Travis.
(And adds it as a requirement for Kodi)


Security Issue?

I just installed the EXO V2 module.  When I launch it, I'm immediately greeted with the following warning:
Due to a security issue, this version of client module will be deprecated and stop working after 8 Jan, 2020. Please update to latest version on or after 8 Jan, 2020.
I ran the Update-Module -Name ExchangeOnlineManagement command, but I still receive that warning.
Why is that warning being presented?  The way that warning reads, this module will stop working on Jan 9 (five days away as of the writing of this feedback), unless I update only on or after Jan 8th.  Is that correct?    Why can't the update be performed now?
There is also no information provided regarding what the security issue is.  A link would have been helpful to get more information around this.

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

ID: de2836a0-0af3-c147-2d4a-78220ac4e0f1
Version Independent ID: 2cde9735-6281-bb9f-bf07-b30b2f6c7f37
Content: Exchange Online PowerShell V2
Content Source: exchange/docs-conceptual/exchange-online/exchange-online-powershell-v2/exchange-online-powershell-v2.md
Service: exchange-online
GitHub Login: @chrisda
Microsoft Alias: chrisda

@officedocsbot assign @yogkumgit

Hi @Gideon122, thank you for your feedback.
@chrisda could you kindly help here?
I have been seeing this warning for 1 o 2 weeks.

@Gideon122, as described in the topic, direct any questions or comments regarding the V2 module to exocmdletpreview[at]service[dot]microsoft[dot]com.
Thanks for the feedback.


ambfPose now acts like an lps transform and vol rendering more user f…

…riendly

Previously, the "AMBFPose" transform acted within Slicer's coordinate frame choice (RAS). The user had to realize this and align visually based on the AMBF_X, AMBF_Y, AMBF_Z axes provided. This was not very intuitive to the user. So instead, under the hood, that transform will get applied as if it was a transform in LPS (the coordinate frame choice from AMBF).
Before the visuals matched, but the transformation matrix in Slicer was in RAS not LPS.
Now both should match (visuals AND numbers)


Feature: ability to unset/change built-in defines

There's an issue with some libraries that, instead of using process.env.NODE_ENV they use globalThis.process.env.NODE_ENV, and, and the default define behavior (not sure if it's this plugin or SWC) results in code like globalThis."development" === "development".
See: https://github.com/graphql/graphql-js/issues/3928
I've tried to override this behavior using vite's define config option, but it doesn't seem to work.

This is working at least when in source code in dev. Probably a mismatch from Vite at build time or optimize deps time. Please open an issue with a small repro on stackblitz on the Vite core repo


add rule (vue-strong): Full-word component names

https://vuejs.org/style-guide/rules-strongly-recommended.html#full-word-component-names

3 consonants

Hi @rrd108 I created a PR for this issue #75

And I used magic-regexp 👌


Extraction error on vimeo.com/channel/staffpicks/ URLs

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2021.05.16
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

youtube-dl --verbose https://vimeo.com/channels/staffpicks/507304309
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://vimeo.com/channels/staffpicks/507304309']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.05.16
[debug] Python version 3.8.5 (CPython) - Linux-5.8.0-53-generic-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg N-102461-g8649f5dca6, ffprobe N-102461-g8649f5dca6
[debug] Proxy map: {}
[vimeo] 507304309: Downloading webpage
ERROR: Unable to extract config URL; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/veikk0/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "/home/veikk0/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "/home/veikk0/.local/lib/python3.8/site-packages/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/home/veikk0/.local/lib/python3.8/site-packages/youtube_dl/extractor/vimeo.py", line 682, in _real_extract
    config_url = self._html_search_regex(
  File "/home/veikk0/.local/lib/python3.8/site-packages/youtube_dl/extractor/common.py", line 1021, in _html_search_regex
    res = self._search_regex(pattern, string, name, default, fatal, flags, group)
  File "/home/veikk0/.local/lib/python3.8/site-packages/youtube_dl/extractor/common.py", line 1012, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract config URL; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description

youtube-dl errors on extraction when a URL from the Vimeo Staff Picks channel is provided. "Non-channelified" URLs to the same videos work fine though.

Works: https://vimeo.com/539298497
Doesn't work: https://vimeo.com/channels/staffpicks/539298497
Works: https://vimeo.com/556349462
Doesn't work: https://vimeo.com/channels/staffpicks/556349462

There seems to be something special about these staff picks channel pages, since URLs from other channels I've tried work fine. For example, there's no issue with these URLs:

https://vimeo.com/channels/musicvideoland/496270099
https://vimeo.com/channels/booooooom/552912710

for this link - https://vimeo.com/channels/staffpicks/539298497
try with youtube-dl --force-generic-extractor https://vimeo.com/channels/staffpicks/539298497
same goes for this link - https://vimeo.com/channels/staffpicks/556349462

I have the same error:
youtube-dl https://vimeo.com/channels/staffpicks/287117046
[vimeo] 287117046: Downloading webpage
ERROR: Unable to extract config URL; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

My youtube-dl is the latest in this moment:
youtube-dl --version
2021.06.06

https://github.com/ytdl-org/youtube-dl/issues/29764


Add handling of MeasureLoadingException

@c-monkey decided we shouldn't be displaying the line numbers of where the translator is crashing to the user. No longer need the front end code that supports this.

rock on!


Delegation: Updating a current delegation

Task description
If an account already has a registered delegation, it is possible to make updates to it. A transaction to update a current delegation can be started from the delegation status page.
When making an update to the delegation, the parameters of the ConfigureDelegation transaction are optional, so the user can pick whichever parameters to update. If they end up in a situation where they are about to submit no changes, the user will be notified so they don't waste a transaction fee.
Examples of such a transaction flow can be seen in Flow 3 and 7 in Figma.
Flow 3 is an example of decreasing the delegation amount, with no other changes to the delegation. Pressing the "Update current delegation" button in Delegation status scenario 1, will start the flow of updating the delegation. At first the user will be met by a carousel explaining delegation concepts, and the rest of the pages equals what we have in the register delegation transaction..
Flow 7 in Figma shows three special scenarios, that will have an effect on the update delegation transaction flow.

Scenario 1 is when the user is setting the delegation amount to 0, which means they are effectively stopping the delegation. This will yield a notification, letting the user know about this.
Scenario 2 is when the user has made no changes to the delegation, yielding a notification letting them know about this.
Scenario 3 shows the situation, where the user decides to delegate to the L-pool, hence no pool information / limits will be shown on the amounts page.

Verified.
Versions

Software Version: 3.0.0 (39)
OS:14.8.1
Browser
Mobile device: iPhone SE


{event.target} in Bounty Awarded may be wrong?

In scripts such as Ship Purchased, {event.ship} gives the real name of the ship in question.  However, in Bounty Awarded, {event.target} gives the game variable version of a ships name. For example, the Diamonback Explorer is called 'diamondbackxl' in {event.target}, or the Federal Assault Ship is called 'federation_dropship_mkii'.
When purchasing a ship, the journal entry uses the game variable name, but the script uses the real ship model name for {event.ship}.  Is it possible to make Bounty Awarded {event.target} do the same?
Would it also be possible to add the targets pilot name (for NPC or CMDR) as a variable for Bounty Awarded too?

I'm unable to reproduce the issue.  Elite 2.2.02 does not provide any target information, and when testing 2.2.03 it gives the correctly parsed ship name.
There is no information about target names provided in the bounty journal entries.

My apologies, you are quite correct.  Something must have changed since I last played in the Beta, which was some time before the Christmas Community Goal.  I had been writing a function to return the correct ship names from the given game variable, and had tested it extensively before Christmas.  Now it seems that it is no longer needed. Oh well! :) Thanks anyway.


Revisit the gas price selection mechanism and unit tests

https://github.com/omisego/elixir-omg/pull/1258 brought in a refactor of BlockQueue.CoreTest where a more behavior-driven approach was taken.
This brought to light several surprising edge-cases in how BlockQueue.Core operates the gas prices. (see NOTEs left in the test file, for example here: https://github.com/omisego/elixir-omg/blob/master/apps/omg_child_chain/test/omg_child_chain/block_queue/core_test.exs#L275, here: https://github.com/omisego/elixir-omg/blob/master/apps/omg_child_chain/test/omg_child_chain/block_queue/core_test.exs#L442 and in following lines ).
Despite this being the case, the gas price selection mechanism seemed to have behaved fine in the testnet deployments we ran, so I'm reluctant to file this as a bug without digging deeper in.
What needs to be done in this issue is:

analyze the flows that BlockQueue.Server has and how it calls into it's logic module BlockQueue.Core with respect to the gas price selection mechanism
in this context, rethink the annotated test cases and decide if the test is off or there in fact are edge cases where the gas price selection won't work as intended
fix (possibly both impl and tests if the test just verify an incorrect behavior)

From logs recently, I have observed that it would try to re-submit same block with lower gas.
I am not 100% following what should be the "right logic" to submit now, but retrying with lower gas seems not making much sense to me. Lower gas should be applied to next submission instead, right? No miner is going to accept the lower gas price tx anyway if seeing the previous tx already.

From logs recently, I have observed that it would try to re-submit same block with lower gas.
I am not 100% following what should be the "right logic" to submit now, but retrying with lower gas seems not making much sense to me. Lower gas should be applied to next submission instead, right? No miner is going to accept the lower gas price tx anyway if seeing the previous tx already.
ref this to #1527

I think there's a potential bug here where if eth block time is longer than usual it will go into gas_price_lowering_factor: https://github.com/omgnetwork/elixir-omg/blob/master/apps/omg_child_chain/lib/omg_child_chain/block_queue/core.ex#L433
      with ..,
           true <- eth_blocks_gap_filled?(parent_height, lastchecked_parent_height, eth_gap_without_child_blocks),
           .. do
        gas_price_raising_factor
      else
        _ -> gas_price_lowering_factor
      end

This is addressed in the new PR where it will not lower the price: https://github.com/omgnetwork/elixir-omg/pull/1575/files#diff-170e6f539bb8104a78455877a4ff7e85R148
    cond do
       latest.parent_height - state.last_parent_height < state.eth_gap_without_child_blocks ->
         state
    ..

Closing as it's being tracked in another issue


Reorganize files/folders

For better readability and discoverability, I propose the following changes:

[ ] Move the main README.md under NHI.PortableText Where it belongs.
[ ] Create an overview README.md that talks about the repository and its elements rather than only the parser (we not only have a NuGet package, but tests that are run against it, a .NET backend using that package and exposing the parser as a REST API, and a React front-end as an example to experiment with the results. We should name all these in the main README.md.)
[ ] create three additional README.md files in NHI.PortableText.Example, server and frontend folders
[ ] Clarify the purpose of the NuGet directory. Is it necessary to have it in source control, can we move it under NHI.PortableText, etc.
[ ] rename the folders for readability

So the proposed structure would be:
  |_ src (prev. /NHI.PortableText)
     |_NHI.PortableText (either a folder should be created with the source code, or the source code could live directly under `/src`)
     |_tests (prev. /NHI.PortableText.Test)
     |_NuGet(prev. /NuGet)
     |_README.md
  |_example (prev /NHI.PortableText.Example)
     |_frontend (prev. /NHI.PortableText.Example/frontend)
        |_README.md
     |_backend (prev. /NHI.PortableText.Example/server)
        |_README.md
     |_README.md
  |_README.md

I agree to move parts of the main readme into the folder NHI.PortableText, specific everything down of and including Configuration. The main purpose of this repo is the code/package to convert HTML to PortableText and it should be easy to understand from the main readme.
Then the main readme will now be so long and we can add the overviwe you propose.
The rest I agree to :-)
The NuGet folder is no longer needed now that the GitHub action publish the package for us


Update tools leftnav

Match leftnav Tools under /resources/ to the list at /resources/tools/.

How can these be ordered to match the list in the content?

We can add weights in the title header for each page. This is how we've ordered the Reources section. Lower numbers are placed first.
---
title: Getting Started with ReproNim
weight: 2
---


ERROR [G:4106155a, S:0] Gateway client error

Describe the bug
I am using MC2Discord for 1.20.1, version 4.2.3, and I have put in my discord bot secret, guild intent, and message intent. After I invited it to the server as Admin, I added the channel ids and guild id, and started my server, only to be greeted with this error: java.lang.RuntimeException: Failed to load class file for 'fr.denisd3d.mc2discord.shadow.discord4j.discordjson.json.ImmutableUnavailableGuildData$InitShim'! and INFO at fr.denisd3d.mc2discord.shadow.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[mc2discord-fabric-1.20.1-4.2.3.jar:?]
Your config file
http://m2d.denisd3d.fr/uploads/view?key=22137119-39c2-4dc7-9948-b1b1c2613d6b

Switched to Modrinth Release


Node location cache: off-heap storage and “array” implementation that supports parallel inserts

Add more options for node location storage (aka LongLongMap since lat/lon gets packed into a 64-bit long for storage):

[x] Add off-heap storage option for existing implementations using ByteBuffer.allocateDirect
[x] Add "array" nodemap type that supports parallel inserts from multiple threads
[x] Refactor osm_pass1 phase to support a sequential and parallel execution model, based on if the node map implementation supports parallel inserts
[x] Include off-heap (direct/mmap) usage during resource usage checks at startup
[x] Add enums for nodemap storage and implementations
[x] Memory usage estimation
[x] Array mmap cleanup (is there a better way to do sliding window limit?)
[x] Are primitive arrays any faster than HeapByteBuffer getLong/putLong? If not then simplify to one ByteBuffer implementation that switches whether it uses allocate vs. allocateDirect
[x] Check direct memory limit -XX: MaxDirectMemorySize if set, otherwise Runtime.getRuntime().maxMemory().
[x] When nodes/ways/relations done, print # per second (and a summary at the end of osm pass1/2)

Are you noticing a significant gains with the parallel version? I guess that the machine used to produce the benchmarks displayed in the issue has a limited number of cores.
When experimenting with your code to replace lmdb in baremaps, I tried to make the memory and the serialization of records pluggable. The resulting AlignedDataList class is almost identical to your AppendStore and illustrates this relatively well.  The constructor takes two parameters: an AlignedDataType (a fixed size data type aligned to the memory); a 'Memory' (which can be on-heap, off-heap, and memory-mapped).
https://github.com/baremaps/baremaps/blob/8cabb72922480fbe7d6b2ad8130a2704b52bf210/baremaps-collection/src/main/java/com/baremaps/collection/AlignedDataList.java#L51
As the Memory interface solely rely on ByteBuffers it is relatively easy to provide the on-heap, off-heap and on-disk implementations with byteBuffer.allocate, byteBuffer.allocateDirect, and channel.map. When it comes to DataTypes, the idea is to solely rely on absolute positions to access the content of the buffer to enable zero-copy serialization and deserialization. I guess that you don't need this for your use case, but I would be really intereseted to know what you think about it.

Are you noticing a significant gains with the parallel version? I guess that the machine used to produce the benchmarks displayed in the issue has a limited number of cores.

Yes, the parallel version is quite a bit faster (for writes at least) - but only when running over the whole planet. I ran on a machine with 32GB RAM and 16 cpus, and the memory-mapped sparse array took about 11 minutes (15-17 million nodes per second, 4-6 million ways per second) but the parallel array implementation took 4m44s (40-50 million nodes per second, 6-10 million ways per second).  And the data storage ends up only a little bit larger (74 instead of 68gb). The RAM parallel array implementation only takes 4m10s.
AlignedDataList looks pretty close to this! Once writes are positional though, they no longer have to be sequential can happen from parallel threads. I'm curious how the write performance is on memory-mapped byte buffers? In general I've seen that reads from memory mapped byte buffers are fast, but writes are slower than other mechanisms (some more details here).
I am also curious if there's any noticeable difference using getLong/putLong on a HeapByteBuffer instead of int[] or long[]? My assumption was that regular arrays would be fastest, but if there's no difference then it would be nice to just have one ByteBuffer implementation that changes by whether it calls allocate or allocateDirect.

I just tried to run a benchmark to answer the question about write performance. Most of the benchmark I saw online were quite outdated (4 years and older).
Writing data on-disk with mapped buffers looks suspiciously fast on my 2020 macbook pro (I use the force method to ensure that the changes are written to the storage device).
When it comes to byte arrays and heap buffers, an overhead can be noticed when writing less than 1mb.
 For now, the result suggest that using ByteBuffers would be a good solution as they could be used to access on-heap, off-heap and on-disk memorier.

Thanks @bchapuis! I did some testing too with long[] vs. ByteBuffer.putLong() and they seem to be close enough, so I just dropped the int[] and long[] storage options for the append store and array implementations.

Ran some performance tests on a c5ad.16xlarge (64 cpu, 128gb ram) instance:
tl;dr) The parallel array nodemap implementation shaves about 5 minutes off of OSM pass 1 (8->3m) when storage=ram or 4 minutes when storage=mmap (8->4m).  Also node read performance in pass 2 is about the same when RAM or MMAP storage is used, so switching to MMAP and using a smaller Xmx setting (~45g or less) will only add about 1 minute to generation time.
Xmx=115g nodemap=array/ram

full planet generation took 47m8s (cpu:26h53m3s gc:3m46s avg:34.2) - full logs in planet-logs/v0.3.0-planet-c5ad-128gb.txt
osm_pass1 took 2m58s (cpu:1h57m gc:35s avg:39.4)
osm_pass2 took 21m49s (cpu:19h14m46s gc:2m18s avg:52.9)

0:03:53 DEB [osm_pass1] - Processed 18,767 blocks:
0:03:53 INF [osm_pass1] -   nodes: 7,546,573,682 (108M/s) in 1m9s cpu:58m23s gc:10s avg:50.5
0:03:53 INF [osm_pass1] -   ways: 841,994,745 (8.5M/s) in 1m39s cpu:55m56s gc:24s avg:34
0:03:53 INF [osm_pass1] -   relations: 9,718,612 (1.1M/s) in 9s cpu:1m20s avg:9.3
0:03:53 INF [osm_pass1] - Finished in 2m58s cpu:1h57m gc:35s avg:39.4
0:03:53 INF [osm_pass1] -   read     1x(32% 58s sys:35s wait:1m11s done:9s)
0:03:53 INF [osm_pass1] -   process 63x(38% 1m8s sys:3s block:1m10s wait:8s)

0:25:42 DEB [osm_pass2] - Processed 18,767 blocks:
0:25:42 INF [osm_pass2] -   nodes: 7,546,573,682 (26M/s) in 4m45s cpu:4h4m2s gc:37s avg:51.4
0:25:42 INF [osm_pass2] -   ways: 841,994,745 (971k/s) in 14m27s cpu:12h32m24s gc:1m33s avg:52.1
0:25:42 INF [osm_pass2] -   relations: 9,718,612 (61k/s) in 2m38s cpu:2h39m41s gc:8s avg:60.6
0:25:42 INF [osm_pass2] - Finished in 21m49s cpu:19h14m46s gc:2m18s avg:52.9
0:25:42 INF [osm_pass2] -   read     1x(4% 50s sys:31s wait:17m48s done:2m40s)
0:25:42 INF [osm_pass2] -   process 63x(72% 15m40s block:51s wait:2m15s)
0:25:42 INF [osm_pass2] -   write    1x(64% 13m52s sys:1m16s wait:5m40s)

Xmx=115g nodemap=sparsearray/ram

osm_pass1 took 8m10s (cpu:2h22m54s gc:1m6s avg:17.5)
(killed during pass2, but it was progressing at about the same rate)

0:09:07 DEB [osm_pass1] - Processed 18,767 blocks:
0:09:07 INF [osm_pass1] -   nodes: 7,546,573,682 (23M/s) in 5m18s cpu:1h10m24s gc:39s avg:13.3
0:09:07 INF [osm_pass1] -   ways: 841,994,745 (5.2M/s) in 2m42s cpu:1h11m16s gc:26s avg:26.4
0:09:07 INF [osm_pass1] -   relations: 9,718,612 (1M/s) in 9s cpu:33s avg:3.7
0:09:07 INF [osm_pass1] - Finished in 8m10s cpu:2h22m54s gc:1m6s avg:17.5
0:09:07 INF [osm_pass1] -   read     1x(6% 31s sys:21s wait:7m8s done:7s)
0:09:07 INF [osm_pass1] -   parse   62x(8% 40s wait:7m16s done:7s)
0:09:07 INF [osm_pass1] -   process  1x(86% 7m1s)

Xmx=45g nodemap=array/mmap/madvise=true

osm_pass1 took 4m11s (cpu:1h48m24s gc:30s avg:26)
psm_pass2 took 21m41s (cpu:19h59m35s gc:2m8s avg:55.3)

0:05:08 DEB [osm_pass1] - Processed 18,767 blocks:
0:05:08 INF [osm_pass1] -   nodes: 7,546,573,682 (53M/s) in 2m20s cpu:45m4s gc:9s avg:19.3
0:05:08 INF [osm_pass1] -   ways: 841,994,745 (8.2M/s) in 1m41s cpu:1h1m30s gc:21s avg:36.4
0:05:08 INF [osm_pass1] -   relations: 9,718,612 (1.1M/s) in 8s cpu:1m12s avg:8.7
0:05:08 INF [osm_pass1] - Finished in 4m11s cpu:1h48m24s gc:30s avg:26
0:05:08 INF [osm_pass1] -   read     1x(17% 42s sys:25s wait:1m57s done:10s)
0:05:08 INF [osm_pass1] -   process 63x(23% 57s sys:2s block:1m17s wait:1m32s)

0:26:50 DEB [osm_pass2] - Processed 18,767 blocks:
0:26:50 INF [osm_pass2] -   nodes: 7,546,573,682 (28M/s) in 4m27s cpu:3h51m59s gc:30s avg:52.2
0:26:50 INF [osm_pass2] -   ways: 841,994,745 (962k/s) in 14m35s cpu:13h29m22s gc:1m30s avg:55.5
0:26:50 INF [osm_pass2] -   relations: 9,718,612 (60k/s) in 2m42s cpu:2h39m26s gc:8s avg:59.2
0:26:50 INF [osm_pass2] - Finished in 21m41s cpu:19h59m35s gc:2m8s avg:55.3
0:26:50 INF [osm_pass2] -   read     1x(4% 49s sys:31s wait:17m33s done:2m43s)
0:26:50 INF [osm_pass2] -   process 63x(76% 16m23s sys:8s block:43s wait:10s)
0:26:50 INF [osm_pass2] -   write    1x(55% 11m58s sys:1m13s wait:7m39s)

MMap's reading performences are impressive. Is your use of madvise significantly impact performence or do you think something changed in the way memory mapped files are implemented in Java 17?

MMap's reading performances are impressive. Is your use of madvise significantly impact performance or do you think something changed in the way memory mapped files are implemented in Java 17?

Before Java 13 you needed to set the position on byte buffers then read in separate calls, then Java 13 added positional get methods so multiple threads can read from the same file without synchronization so I think that helped use cases like this. Now as long as you have more free memory than the file, it should be almost as fast as reading from RAM. Madvise probably didn't make much of a difference here, but it should help when the amount of free ram is less than the node cache file.

Thanks a lot for the clarification, I was aware about the positional get methods, but I would not have thought that it would have such an impact, even if a lot of ram is available.


[Proposal] Ignore/Exclude files/folders

I think we should have an option to ignore files. Notably

node_modules
__pycache__

And maybe respect .gitignore.
I put this as an issue first, if I have time I may try to put this to work.
What files do you think we should exclude? Is there a list anywhere are we should just default to .gitignore?

Would be nice to use .ignore and .gitignore


Udemy videos don't show up

System Details
MacOS Sonoma 14.0
Thorium Version 116.0.5845.169 (Official Build) (arm64)
Problem
There is a gray square in place of a video on Udemy and play/pause button doesn't seem to do anything.
Screenshots

Is this page working on chrome?
@art-stankov

@gz83 Same issue from me!

Is this page working on chrome?

Yes. I'm using brave browser.

@gz83 Same issue from me!

Is this page working on chrome?

Yes. I'm using brave browser.

Does this page use widevine?
@Ok9xNirab

@gz83  Yes. Google DRM (Widevine)

What I mean is whether this webpage uses Widevine to process audio and video.  If so, then I'm sorry, it may be because of Widevine's VMP verification. Currently, Thorium cannot perform VMP verification, so it cannot play audio and video that require VMP verification.  To conduct VMP verification, we need to pay a large fee to Widevine, which we are temporarily unable to pay.
@Ok9xNirab

Thank you @gz83 for describing this issue.

@gz83 As I see on the Internet, the Widevine is indeed used as DRM on Udemy

@gz83 As I see on the Internet, the Widevine is indeed used as DRM on Udemy

Please see my previous reply
@art-stankov

According to Alex, a fee of US$5,000 needs to be paid to Widevine, but whether this number is calculated on a monthly or annual basis I am not clear yet.
@jcraig999

Based upon my own research, I can surmise that it is probably annual because there are services out there where you can get a license for around $99 a month. I wouldn't be able to pay the $5000 out right, but if Alex set up some kind of pool where people can donate (I know you can do this on PayPal), I would definitely donate on a monthly or bimonthly basis.
@gz83

I could do $10/month

I have a friend that already has a Widevine key, and he said that you all can implement it into the project. Do you have discord or telegram so he can reach out or should he contact Alex via email?
@gz83

Thank you very much for your and your friends' help. If this key is valid, it will solve many problems related to widevine.
Please contact Alex via email and CC me on the email, thank you.
@jcraig999

What is your email? I don't see it in your profile.
@gz83

I have temporarily made my email address public, can you see my email address?  My email address may appear in my profile or in your email.
@jcraig999

Got it. You can make it private again. He will reach out as soon as possible. Feel free to ping me if you don't hear anything.
@gz83

Has your friend emailed us? I haven't received an email from your friend yet.
@jcraig999

Probably not yet. I will follow up.

Sorry it took me so long to reply. He said that, unfortunately, he can't give you all the key without losing access to it himself.
@gz83

It doesn't matter
@jcraig999

Sorry for the late reply. What doesn't matter?
@gz83

Sorry for the late reply. What doesn't matter? @gz83

What I mean is: we don't feel any dissatisfaction or frustration that your friend was unable to provide a key for widevine, and we still appreciate the time and effort you and your friend put into solving the widevine problem, despite ultimately failing to share the key for widevine with us.
@jcraig999

@gz83 @jcraig999 Yeah, what gx83 said lol.


Offline Plugin does not support providing style via local files on device, only via remote URLS

The implementations of OfflineRegionDefinition don't have support for setting the style from a local file or something of the sort. I need to define my styles dynamically (the map sources will be selected by the user) and then cache tiles for later offline use. MapboxMap can have its style set via local file and asset urls, so why not the same support for the offline module?

@langsmith @tobrun @LukasPaczos
I have recently stumbled upon this issue of not being able to download an offline region specifying a locally stored JSON StyleSpec. I contacted support and they confirmed the issue but linked me here for the public discussion.
I'm a little confused about why this is an issue with the OfflinePlugin (which we do not use) rather than an issue with mapbox-gl-native-android. To me, it seems like the feature would need to be added to the OfflineManager or FileSource.
We also have an iOS app, which I confirmed this morning that they are passing a locally stored JSON StyleSpec path that has a prefix of file://. Is this working on iOS and not Android? The iOS SDK is a little different setup but they define a region and pass a style URL the same ask the Android SDK.
Any insight on the root cause of the issue would be helpful, thanks!

sorry for late reply @codeversed, correct that this needs to be addressed first upstream. The underlying code in offline_download.cpp uses a direct reference to the online file source and not an abstraction that would allow to use a local file or assets hosted file. This means that this shouldn't work for iOS either except if NSUrl is able to handle local files (I'm not an iOS developer so IDK).

@tobrun this is a needed feature for us. I have a support ticket in but it's marked low priority. What can I do to help get this done? It currently does work on iOS.


Allow 'keybase encrypt' to function offline

Use-case console log:
$ keybase track username
(...)
info: ✔ Wrote tracking info to remote keybase.io server
info: Success!
$ nmcli c down 4542afb8-5b06-471f-a5e3-4f0feb0b75ad # or lose wifi, whatever
$ keybase encrypt username
error: Could not access URL: https://api.keybase.io:443/_/api/1.0/sesscheck.json

Some level of offline access should be acceptable for tracked users, and a more descriptive error message should be used.
Copy: Offline, user not tracked

Error: Could not contact Keybase servers
This user is not tracked locally, so encryption is not possible. Please reconnect to the internet to  retrieve username's public key.

Copy: Offline, tracking is old

Warning: Could not contact Keybase servers
You asserted username's identity 3 weeks ago. If you believe the key is not compromised, you can proceed with encryption.
Continue? [y/N]

Copy: Offline, tracking is new

Warning: Could not contact Keybase servers
You asserted username's identity less than 24 hours ago, so encryption will continue if the system time is correct.
The current date is: 08 June 2015
Continue? [Y/n]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

I very much agree with this. I just noticed this problem today.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJVfH7eAAoJEP7XbztLgAUt/jgQAIXYGAgHgG8Qa6yq22AiHN/8
hmLa1JTodSa1Cb4wq9fHXvvWwsxgLTlyu5l5EukrPt22MW0GqyPdQL7KGfZic8Xd
j3lIQYhV0zs0RyJkBuBZGSQRSeg6laokSd9t2adRn+Z48nSvpA0rqemDP5ftsQEk
bWvJmMWsbI89WltjKa14uB+pIRp9pF4aJ6jo03MCMo7jr+axN5//FaLMbWSttHo1
Uy7eMQWjn+UhjoodNqUt/9ZyvVWuPaVQqJ8VTaDbq+ZA704HDnlDYzvjRVOpzTcX
jZLM9c51RQDCJdvc8jlkCMa49t8dFNDrymONcCHdFYYDjudknA1xjdW8Yr2ZeEe5
zbQp2/83xKtBgdqeCGZnlMjvHyVtw66pU7Z1hjJlv5RLhxQ9NhV3UhRTdIFRpl60
WlsKkjngtuvVgjgZDRtggxYjnmcTUqWwKWcda9ezZOMkR7ij8ek8LRoXdCqeboPq
mzy/uXsGNEpm7AZTrq+bpoVcyvT6l9wVQZJEr9b0MGFjnIOFQSiH0DqDWzQSp48f
pPmbTAR8hAPYLAZM+cid4wBTGpNnJoKJOZwsjdOcw71X7g4/FECXL2fNKTZDnsFY
+dtqaJ/LgowvCGEYbFe/E4TjCAtMRs4SCmwwsMWhtp3paNWVMSSvjscIvW8JMjBy
uNc/qEwT4LBL6sbwE0qz
=A2gX
-----END PGP SIGNATURE-----

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Part of tracking is that those users are added to your GPG keyring when you use the console client. If you're offline, just encrypt your message using GPG. If it's important enough that you want to verify again, you'll wait to write to them until you're online again. Or you'll keybase id username again manually when you're online and before you send it. Besides, it's not like you'll be sending them anything while you're offline, anyway. (And if you're doing something important enough that it involves sneaker net and dead drops, you're probably pretty certain of their keys (and also possibly shouldn't be using keys that are tied to your identity...))
For example:
echo "Hello" | gpg -aer username
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
iQIcBAEBCgAGBQJVnD7LAAoJEHw0JneH3YtGc4oQAIjXaEgCn79oYZ89w69R3P+K
AD4boY985ykBZXye4/AICHSlFB/gDFsaFCI9ISy9nNNbWcd+LxKPNc1Ie69QXSrP
fi4zDFG5gY8DAwa3Dgo5THx02fZqvwuEM7pKCLCzB3vwI93+bzuDJW1OueP0C/iQ
W1ZiTdtam/PwF88ZrQV3YdwBd55uB0vxouDxsfaL2G+RM4OOsnyHC/OmsGJqHidg
kIsxCIb8UOIZjHthMffM1PXB0FfcXWkckVj0aC8AlBH4Ntb1Yk/aCf53T2axHtaE
p17M1WRcjbOsb6SFYW3x9S/x3WRrrk7KmzUr+tflb/BBMGgrs3vTtccoEHo6WYXl
X3/FqBxFMEGc6m4OCmR7dMHggXDAAG3rvxSS8nMSiZ9CPG1s3eWN4vxFqUBI0Fxr
eFn2KEx14CBG/IV+ZdHs03Z1c/eADYUvgznhezKRD8VrmCSnAoq7TWuLL17c9s+/
MFxpk8x3VTWuk4DPBSKmW7ssYiC2hvKcbFesiVWKngHAGmF6/tbQbzBV442qpv8f
sAcCCvEPvAqwpHnpqrn5X67Vmz2EWQr4x/6jT4RLgMBsCsj/eAgs28QKJ2aygv6z
XSt3CR6db7g1ovKGiZgZYaahD6qB/PAGSZ4dNbMUSFoXeCGXDFycjQBIUdbVyFUo
7i+2zpo8a58BAmhtES1l
=/1qu
-----END PGP SIGNATURE-----

Hm, not entirely true. I'm using it in a network with restricted IPs and I can only use keybase when tunneled through another server. So encrypting and sending to one of the available IPs is important.
I know, I could use other encryption solutions but then I chose keybase because it is so dead simple to encrypt. I don't want to miss it.

Does keybase pgp encrypt function offline?


CCPACSWIngSegment::GetEtaXsi does not use proper eta xsi interpretation

CCPACSWIngSegment::GetEtaXsi operates on chord face:
https://github.com/DLR-SC/tigl/blob/a00eba27266528f67eef3b6e4e8b0c523105ba19/src/wing/CCPACSWingSegment.cpp#L883-L890
For consistency, it should use the same interpretation as the GetPoint functions:
https://github.com/DLR-SC/tigl/blob/a00eba27266528f67eef3b6e4e8b0c523105ba19/src/api/tigl.h#L349-L353

Duplicate of #808 , hence closing this issue

Fixed with #811


playground demo doesn't work with zero changes

Your playground demo doesn't work with zero changes. Makes it hard to use this if this is the first experience with Dioxus. This is the third time I have considered using it (over 1+years)

and the first step always has bugs.

Playground never really worked and has not been officially released (despite being available on the website). It's currently undergoing a big overhaul, which will fix it.
https://github.com/DioxusLabs/playground/pull/13

The playground was temporarily removed from the website until the overhaul is ready.


Cutting wires should have a do_after

I love it when I get a mispredict or there's 1 transparent pixel in the middle of a simple mob and click the wire underneath it in combat and get stunned. Should just have a short do_after of say 0.5s or 1s.

They already have a hardcoded default of .25 hun.
Are you implying this should be higher, or did you add them and forgot about this issue? lmao


Validate Password Reset Token On Reset Password Page

Check Validity of The Password Reset Token when the user visits the Password Reset page.
By default, password reset is always shown regardless of whether the reset token is valid/invalid. In this pull request, i have modified the flow as follows:
Checks Whether The Reset Token Exists in the Database.
If token is found, then token expiration datetime is calculated. If expiration datetime is greater than the current datetime, then token is considered valid. Otherwise the token is invalid.

You can't use facades in the core, and your usage of the DB facade was wrong anyway.

@GrahamCampbell can you advise whats the best way to interact with DB in Laravel core?


Ubuntu 12.04, Kernel 3.19 - UVCIOC_CTRL_QUERY:UVC_SET_CUR error 5

I have a R200 Realsense camera attached to a Linux box running Ubuntu 12.04, however I have upgrade the kernel to 3.19.
I have built librealsense using the Video4Linux backend and the camera sometimes works however often it fails with the following error (or similar errors):
Realsense Error: UVCIOC_CTRL_QUERY:UVC_SET_CUR error 5, Input/output error
According to this thread https://github.com/teknotus/depthview/issues/1 the issue arises because the ioclt commands do not match video4linux commands, however the solutions provided there do not work.
Can anybody help?
(It is not a possibility to upgrade the system from 12.04 and Linux 3.19 is as far as I can go on a 12.04)

There are patches to the UVC driver that have been upstreamed in later versions of the kernel which is why we recommend upgrading. I suspect the absence of this patch is burning you: https://patchwork.linuxtv.org/patch/25668/
I would recommend modifying our 3.19 uvcvideo script to apply this additional patch as well. Based on some anecdotal evidence, I think diff can still correctly apply it with the included pixel formats patch. Give it a go and let us know.

I have a similar issue with Ubuntu 14.04.4, running Linux 3.19.0-51-generic.  I also tried an older kernel that was mentioned in issue #1 as tested by @ddiakopoulos, 3.19.0-33-generic.  I applied the patch above as well as the patch in the librealsense scripts directory.
$ uname -r
3.19.0-33-generic
$ git show | grep commit
commit a6df77892550b8250341f5465c34094ae7071067
$ ./cpp-enumerate-devices
RealSense error calling rs_create_context(api_version:4):
    UVCIOC_CTRL_QUERY:UVC_SET_CUR error 2, No such file or directory

I'm kinda stuck on this version of the kernel for my target application, unfortunately.  Is there any chance that you, @mremir, have figured out what is going wrong?

@emulvaney-aevena Sorry but we have not been able to solve the problem.
It seems like there is huge problems with using the Realsense on 14.04 (or 12.04) with standard (3.19) kernels.
If we stop the software from using the camera we cannot connect to the camera again without re-plugging the camera.

Hmm, so you can use the camera at least once.  I can't access it at all with the example programs.  I get that error the first time I try any example.

@emulvaney-aevena could you do the following:
sudo modprobe -r uvcvideo
dmesg | tail -n 30 => copy output into this issue
sudo modprobe uvcvideo
dmesg | tail -n 30 => copy output into this issue again
I would like to verify that the uvc driver has been correctly patched and loaded by the system.

$ sudo dmesg --clear
$ sudo rmmod uvcvideo
$ dmesg; sudo dmesg --clear
[70392.669428] usbcore: deregistering interface driver uvcvideo
$ sudo modprobe uvcvideo
$ dmesg
[70427.359334] uvcvideo: Found UVC 1.10 device Intel RealSense 3D Camera R200 (8086:0a80)
[70427.373128] uvcvideo: Found UVC 1.10 device Intel RealSense 3D Camera R200 (8086:0a80)
[70427.376494] uvcvideo: Unable to create debugfs 2-2 directory.
[70427.379490] uvcvideo: Found UVC 1.10 device Intel RealSense 3D Camera R200 (8086:0a80)
[70427.383554] uvcvideo: Unable to create debugfs 2-2 directory.
[70427.383674] input: Intel RealSense 3D Camera R200 as /devices/pci0000:00/0000:00:0c.0/usb2/2-1/2-1:1.4/input/input10
[70427.385783] usbcore: registered new interface driver uvcvideo
[70427.385787] USB Video Class driver (1.1.1)
$

@ddiakopoulos, is that enough to demonstrate that the kernel is patched correctly?  I actually didn't try it without the patch, so I'm not sure what the output would have been.
Ubuntu doesn't provide the source for older patched kernels in the regular fashion.  You can "apt-get source" for an older edition, but you'll always get the source for the latest patch.  This is probably the safe way to go, but I wanted to reproduce your 3.19.0-33 experience.  So I cloned their GitHub repository, git://kernel.ubuntu.com/ubuntu/ubuntu-trusty.git, where they have 3.19.0-33 tagged as Ubuntu-lts-3.19.0-33.38_14.04.1.  I patched that and then followed their instructions to build new .debs and installed them, and selected the rebuilt kernel at startup.
I'm currently testing this on another machine running a variant of Linux 3.10.40, and I get the same error.  Thanks again, Dmitri, for your help with this.  I hope to get this camera working soon, so any random ideas would be appreciated.

Yeah, it looks like the kernel is appropriately patched. I'm wondering about your hardware though (embedded system? if you're tied to a specific kernel). The USB host controller could be getting in the way.
I don't often recommend this, but maybe you should try with the libuvc/libusb backend (can configure it in the makefile with a flag). Although this backend isn't as stable as the V4L2, you might actually be able to stream some data.

Yeah, my main target is embedded, hence the restriction.  But the system I've tried various 3.19 kernels on is just VirtualBox on a MacBook Air.  Neither work, and they fail in the same way.
I'll give libuvc a go, but I can't do without V4L2 since I have other cameras dependant on it.  If I recall correctly from your instructions, these are mutually exclusive, but I'll tinker with it, anyway.
Thanks for the tip, Dimitri.

Hmm! I've tested in the past on Virtual Box and the USB 3.0 software translation layer is really buggy. It was a long time ago, but I believe I ran into the same issue. VMWare's hypervisor does at least work, but we still don't recommend it because of streaming timeouts after 30-60 seconds. Best bet is to try on the native hardware!

@ddiakopoulos, libuvc does work for me.  And after some consideration, I don't think I'll need the uvcvideo module for my other USB camera: I can use libuvc for that, too.  Maybe @mremir could try that, too.
Thanks for helping out.

@mremir do you need any further assistance here, or can I close this issue?

I would really like for the camera to work on a Ubuntu 12.04 but it does not.
We can get it to work the first time we plug in the camera using the uvc backend, but then we need to replug the camera every time the software needs to be restartet.
But I guess you can close this issue...

@mremir I will update this issue when we have a potential work around posted to the repository sometime in the next few weeks. There is rarely used software reset function which will cause the R200 to reset itself without the unplug/replug on the libuvc backend (known issue...)

@ddiakopoulos That is really good news! Are there any chance that we can fix this ourself if you point us in the right direction?!?
Btw. If you give us a fix for this soon and email me your mailing address I'll make sure some chocolate or similar will find its way to you :-)

There's a half-complete branch in this repository called reconnect (the only other one besides Master that the moment). It introduces an entrypoint rs_reset_device(rs_device * device, rs_error ** error)
Slightly intuitively, you would call this right before your application exits. It's not clear to me how functional the branch is, but it boils down to calling this function: https://github.com/IntelRealSense/librealsense/blob/master/src/r200-private.cpp#L403 It basically causes the firmware to nuke itself and re-enumerate on the OS. Early in this project before the V4L2 backend existed, we would call the firmware_reset function in the destructor of the R200 device (!)

Yep, @mremir, adding r200::force_firmware_reset(get_device()) to ~r200_camera() fixes the restart issue with libUVC.


Improve JWT APIs as public

Purpose
Improve some JWT APIs as public.
Check List

[x] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #17856 into master will increase coverage by 4.95%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #17856      +/-   ##
==========================================
+ Coverage   15.14%    20.1%   +4.95%
==========================================
  Files          46       51       +5
  Lines        1208     1328     +120
  Branches      189      209      +20
==========================================
+ Hits          183      267      +84
- Misses       1011     1047      +36
  Partials       14       14

Impacted Files
Coverage Δ

...s/vscode/src/project-tree-view/project-overview.ts
0% <0%> (ø)
:arrow_up:

composer/packages/tracing/src/ToolBar.tsx
71.05% <0%> (ø)

composer/packages/tracing/src/TraceList.tsx
94.44% <0%> (ø)

composer/packages/tracing/src/DetailView.tsx
79.31% <0%> (ø)

composer/packages/tracing/src/TraceLogs.tsx
70.83% <0%> (ø)

composer/packages/tracing/src/index.ts
0% <0%> (ø)

Continue to review full report at Codecov.

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


Arch simplification

I needed the IProjectLabHardware interface exposed so I could extend it in a consumer application.
Removed the Lazy<x> initialization. They didn't speed anything up and they convoluted the code a whole lot.

wrong branch. i'll tackle this again another time.


Polymeshschema

result simplify

Thank you, but I already took care of all of these (not just the one in polymesh) in https://github.com/Traverse-Research/ogawa-rs/pull/20 :slightly_smiling_face:


Use a dedicated configuration directory to isolate settings & workspaces

Fixes point 1 and point 2 of #226 (making the Desktop app use independent workspaces and independent settings from the system-wide installation)
Fixes another failure mode causing server startup error (#238) which turned out to be caused by a competing configuration from previous installations: users would have different notebook settings in their home which were masking the settings that we wanted. This is a bit drastic step, so I also added an environment variable to allow to change it back to something else and documented it.
Edit: this will also close #240 which was a case of a configuration from previous installation breaking JupyterLab Desktop UI

I am not sure if the documentation should go to README or User guide - this will be a prominent change for existing users so maybe README?

Thanks for the merge! Let's remember to add instructions on copying settings over in the release notes. Draft follows:

Please note that starting with this version of JupyterLab Desktop the configuration (jupyter-server settings, jupyterlab settings and workspaces, etc) is no longer shared between previous installations of Jupyter(Lab) and JupyterLab Desktop to avoid workspace leakage, user confusion, and errors such as reported by users who had a pre-existing configuration clashing with a newer version of Jupyter that was shipped with JupyterLab Desktop. You can keep your previous JupyterLab settings by copying them over to the new configuration path:

Run jupyter --paths to determine where your config is stored.
Find directory called lab in one of these paths.
If there is a user-settings directory in lab, you can copy the lab directory over to the configuration path of JupyterLab Desktop to keep your old JupyterLab settings. If there is workspaces directory you can decide if you want to keep or remove it.

For example, on Linux it could (depending on installation) require the following:
cp -r ~/.jupyter/lab/ ~/.config/jupyterlab-desktop

Warning: If you copy over settings from an older major version of JupyterLab (e.g. 2.x) those might cause an error on startup. We only recommend to copy settings over if you already had 3.x installed and are upgrading from previous JupyterLab Desktop version which was using the shared Jupyter configuration.


Cannot switch python interpreter

I've been trying to switch from one python interpreter to another on a .py file on different remote servers (using SSH remote development) but didn't succeed... I've tried to install previous versions of python's extension but didn't solve the issue. Maybe something related to VSCode?
More context: happens when using workspaces in VSCode
Has anyone got the same issue?

@dani-capellan This can happen if python extension is not able to execute code using the selected python . Please provide logs from Output > Python


Working copy, asset and tradetype on chart

Do not merge

Do you think this is an improvement?

Not really. I thought about it, but not really.
For example:
Why exactly over chart?
Why under the range controls, logically they should be separate.
And also: the flow is for the user to select these two first, then trade params.
So from left to right and from top to bottom, moving.


Store/GridModel slow to reload large Datasets

Seen on a client app -- Reloading 50,000 records into the store of a GridModel,  can get strangely
slow.
But clearing the data first, then wait(0) before loading into an empty store fixes the problem !?
Not obvious if this is the Store, the GridModel, or the Grid, or the AGGrid.....  but something to do with reconciling the two states is very slow

Would be curious if you saw an immediate difference here if we commented out the force refresh:
https://github.com/exhi/hoist-react/blob/110a17d09a9a6f2ca57d276edd0eea9d05c75ac3/cmp/grid/Grid.js#L303
Obviously not a solution, but would be a data point.

Also wonder if we could be getting an anti-optimization out of our use of deltaRowDataMode, in the cases where we are reloading data with all new object references. Could we be taking a hit from the grid attempting to do an incremental update by comparing row node IDs, finding they match in almost all cases, then doing the object comparisons and finding that they have in fact changed and having to tear it all down anyway...  (Re-reading this section of their docs.)
Apologies in advance if these comments are a series of red herrings...

I am closing this.  This problem has gone away with our latest upgrade to ag-Grid and refactor of grid columns.
We have a different issue with treeMode:true being slower to load, but that really seems like a seperate  issue.


Catching download exception causes app crash

I use electron-builder to build and autoupdate my app. When new update is found, updater tries to download it differentially and fails:
Cannot download differentially, fallback to full download: Error: EBADF: bad file descriptor (string from logs)
If I remove @sentry/electron, the app is updated successfully with full download. But with sentry it unexpectedly crashes without any bug reporting, without user warning. I suppose that exception is handled with error by sentry. So app can't update and work correctly. I had to replace with Raven again since this is critical to me

Issue is reproduced with v0.9.0

@alxmiron Thanks for the update.
I suppose creating a minimal repro case for this is a bit more effort since it requires an endpoint to download the update, right?!
We try to make time for this to find out what's going on here.

Yes, this bug is hard to catch because it can be reproduced only in production mode (autoupdate is not working in dev mode)
Here is my test app v3.1.4, where you can see the error: launch it on windows 10 and wait 1-2 minutes. I will look for updates in cdn.hitask.com/desktop/testask/windows/latest.yml and try to upgrade to v3.1.5 (or newer). Once it finds the update - it crashes. Nothing is tracked in sentry.io. Logs are in "%USERPROFILE%\AppData\Roaming\Hitask-Test\log.log"
Sentry initialized as in tutorial:
import * as Sentry from '@sentry/electron';

Sentry.init({
	dsn: __SENTRY_PUBLIC_DSN__,
	release: __APP_VERSION__,
	environment: __ENV__,
});

Hope it will help

Closing as it sounds fixex


MSID: 89023 Version: 1 DOI: 2<IP_ADDRESS>3136

"msas": "Neuroscience"
"msid": "89023 "
"preprintDoi": "10.1101/2<IP_ADDRESS>3136"
"Reviewed Preprint posted": "2023-07-26"
"Sent for peer review": "2023-05-17"
"Posted to bioRxiv": "2023-06-01" (link: "Go to bioRxiv": "https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>3136v1/")
[PLACE PDF URL HERE WHEN AVAILABLE] See step 7
Step 1. Inform bioRxiv
Who can help: @QueenKraken, @nlisgo, @scottaubrey

[x] Manuscript is in data hub index (https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v1/by-publisher/elife/get-by-manuscript-id?manuscript_id=89023)

Step 2. Create preview of manuscript
Who can help: @fred-atherden, @nlisgo, @scottaubrey

[ ] Manuscript is available for preview (https://prod--epp.elifesciences.org/preview/89023/v1)

[ ] Trigger import for staging: https://prod--epp.elifesciences.org/import
[ ] Sync data folder with s3://prod-elife-epp-data/data
[ ] Trigger import for staging: https://staging--epp.elifesciences.org/import
[ ] Sync data folder with s3://staging-elife-epp-data/data
[ ] Pull request created to enhanced-preprint-data
[ ] Post link to pull request below

Pull request: [PLACE LINK TO PULL REQUEST HERE]
Detailed instructions: https://github.com/elifesciences/enhanced-preprints-data#add-a-manuscript
Step 3: Awaiting public reviews and QC
Who can help: Production team

[ ] QC passed or QC not needed

Who can help: Editorial team

[x] Public reviews available on sciety (https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>3136)
[x] Manuscript and editor details at the top of this issue (Supplied by Editorial team)
[ ] Reviews returned by EPP - https://prod--epp.elifesciences.org/api/reviewed-preprints/89023/v1/reviews

Example
"msas": "Genetics and Genomics", "Neuroscience"
"msid": "84628"
"version": "1"
"preprintDoi": "10.1101/2<IP_ADDRESS>4241"
"articleType": "Reviewed Preprint"
"status": "Published from the original preprint after peer review and assessment by eLife."

"Reviewed Preprint posted": "2023-01-02"
"Sent for peer review": "2022-10-28"
"Posted to bioRxiv": "2022-11-21" (link: "Go to bioRxiv": "https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>4241v1")

Editors:
Reviewing Editor
Michael B Eisen
University of California, Berkeley, United States
Senior Editor
Michael B Eisen
University of California, Berkeley, United States

Step 4: Modify manuscripts.json (no PDF)

[ ] Reviewed preprint is published to EPP (https://elifesciences.org/reviewed-preprints/89023)

[ ] Pull request created to enhanced-preprint-client
[ ] Pull request switched to "Ready for review"
[ ] Post link to pull request below

[ ] Request that a doi be registered

[ ] Post link to #enhanced-preprint comment below

Pull request: [PLACE LINK TO PULL REQUEST HERE]
#enhanced-preprint comment thread: [PLACE LINK TO COMMENT HERE]

Instructions to modify manuscripts.json

Visit: https://github.com/elifesciences/enhanced-preprints-client/actions/workflows/publish-manuscript.yaml
Click: Run workflow
Complete the form and click "Run workflow"
A successful run should result in a new pull request at https://github.com/elifesciences/enhanced-preprints-client/pulls
Open the pull request and click the "Ready for review" button to trigger tests
Once the tests pass and you are happy with the changes the PR can be merged

Example pull request: https://github.com/elifesciences/enhanced-preprints-client/pull/334/files
Once the pull request is merged in it should be available a few minutes later.

Request that a doi
Post the following in #enhanced-preprint:
@Fred can you register a doi for https://elifesciences.org/reviewed-preprints/89023

Step 5: Awaiting search reindex

[ ] Reviewed preprint is avaliable on journal homepage (https://elifesciences.org)

The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.

Additional info
If needed, the jenkins pipeline to reindex search can be triggered sooner.
https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 6: Published! Request PDF generation

[ ] Post the link to the PDF url at the top of the issue

[ ] Post link to #enhanced-preprint comment below

#enhanced-preprint comment thread: [PLACE LINK TO COMMENT HERE]
Post the following to the #enhanced-preprint on slack:
@Ryan Dix-Peek please can you generate a PDF for https://elifesciences.org/reviewed-preprints/89023

Step 7: Introduce PDF to data folder and git repo

[ ] PDF is avaliable at https://github.com/elifesciences/enhanced-preprints-data/raw/master/data/89023/v1/89023-v1.pdf

Detailed instructions: https://github.com/elifesciences/enhanced-preprints-data#add-a-pdf
Step 8: Add PDF url to manuscripts.json

[ ] Reviewed preprint PDF is available for download (https://prod--epp.elifesciences.org/reviewed-preprints/89023)

[ ] Pull request created to enhanced-preprint-client
[ ] Pull request switched to "Ready for review"
[ ] Post link to pull request below

[PLACE LINK TO PULL REQUEST HERE]

Instructions to add PDF url to manuscripts.json

Visit: https://github.com/elifesciences/enhanced-preprints-client/actions/workflows/add-pdf-url-to-manuscript.yaml
Click: Run workflow
Complete the form and click "Run workflow"
A successful run should result in a new pull request at https://github.com/elifesciences/enhanced-preprints-client/pulls
Open the pull request and click the "Ready for review" button to trigger tests
Once the tests pass and you are happy with the changes the PR can be merged

Example pull request: https://github.com/elifesciences/enhanced-preprints-client/pull/397/files
Once the pull request is merged in it should be available a few minutes later.

Step 9: Done!

[ ] Kettle is on!

Fix in https://github.com/elifesciences/enhanced-preprints-biorxiv-xslt/pull/68


ActiveDirectoryAuthProvider

Why the ActiveDirectoryAuthProvider class is not inside the framework?

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

ID: 692d8637-4033-767b-aa29-3859f301b7b8
Version Independent ID: de143a26-3dd6-a513-6854-604e4f68c52f
Content: ActiveDirectoryInteractive connects to SQL
Content Source: articles/sql-database/active-directory-interactive-connect-azure-sql-db.md
Service: sql-database
GitHub Login: @GithubMirek
Microsoft Alias: MirekS

@RudyCo Thank you for the detailed question. I am investigating and will get back to you with an update.
Reference: Microsoft.IdentityModel.Clients.ActiveDirectory

@RudyCo It has to do with token-based authentication versus services that support Azure Active Directory in a more direct manner.
As stated in document, Starting in .NET Framework version 4.7.2, the enum SqlAuthenticationMethod has a new value - ActiveDirectoryInteractive. The C# code snippet is the client C# program and the enum value directs the system to use the Azure AD interactive mode supporting MFA to connect to an Azure SQL Database.
Now the ActiveDirectoryAuthProvider class is used to acquire token based authetication using created Azure AD service principle (Azure AD application). The token acquired is returned as the instance of class is created which is in main program as (var provider = new ActiveDirectoryAuthProvider();) . In this case, provider will have token which is now used as value while using SqlAuthenticationMethod.ActiveDirectoryInteractive.
It doesn't answer your question directly but there is definitely a direction the .NET Framework is navigating towards. This is a great item to post on the .NET Framework Uservoice forum.

@RudyCo We will now proceed to close this thread. If there are further questions regarding this matter, please comment and we will gladly continue the discussion.


added a new prank response

I decided it was time for a new prank response given how popular nier automata is within the dudes of 708

Seems good to me. Even passes all test cases


Node v12.13.1 is on local PC, Node 12 LTS is running on Azure

Repro steps:

Action: appService.StartRemoteDebug
Error type: Error
Error Message: Azure Remote Debugging is currently only supported for Node.js version >= 8.11 on Linux.
Version: 0.16.1
OS: win32
Product: Visual Studio Code
Product Version: 1.40.1
Language: en

Call Stack
Object.t.checkForRemoteDebugSupport extension.bundle.js:157:366496
extension.bundle.js:323:880961extension.bundle.js:323:880961
o extension.bundle.js:323:880314
processTicksAndRejections task_queues.js:89:5

This should be resolved with the latest release, v0.16.2.
Please let me know if it hasn't! 😃


Fix examples in doc/flit_ini.rst

Hello Thomas Kluyver,
I think flit is a great tool, thank you!
This old doc file hasn't kept up with the others, so it bit me when I missed the note at the top. The lists in it are not valid at least according to the parsing lib pytoml. Also added spaces around =-operators because you do that in your pyproject.toml and it looks more like Python :)
Have a nice day,
Carl

Thanks Carl - there's actually a new file for the new format:
https://github.com/takluyver/flit/blob/master/doc/pyproject_toml.rst
I'm keeping the old documentation page around for now because the flit.ini format still works, but there's a note on it about switching to pyproject.toml. So we don't need to update the syntax on that page. :-)


Add Truffleruby head to CI

Your checklist for this pull request
🚨Please review the guidelines for contributing to this repository.

[ ] Ensure all commits include DCO sign-off.
[ ] Ensure that your contributions pass unit testing.
[ ] Ensure that your contributions contain documentation if applicable.

Description
Please describe your pull request.

I believe this is already included in the GitHub Actions here:
https://github.com/ruby-git/ruby-git/blob/v1.9.1/.github/workflows/continuous_integration.yml#L20-L21
You can see it run here:
https://github.com/ruby-git/ruby-git/runs/4564507769?check_suite_focus=true
Please reopen if I didn't understand what you were after.


ITweet.Text and Suffix returns wrong value when the DisplayTextRange is { 0, 0 }

The ITweet.Text should be "", but Text returns "h" and Suffix is "ttps://...".
https://github.com/linvi/tweetinvi/blob/c6d02c900c0d2a863e96dda559dc8e28a36a439f/Tweetinvi.Logic/Tweet.cs#L121

Hello,
Could you share the id of the tweet that is causing this bug please?
Cheers,
Linvi

Try this https://twitter.com/pgrho/status/912490987422748673

Thank you for the feedback. This is now fixed :)


Scbasset tutorial is not working due to connections issues in ucsc

atac/scbasset.ipynb & atac/scbasset_batch.ipynb  used to run on Berkeley workstations, and it is also working running it locally, but it is not working now from WIS workstations due to some connectivity issues with UCSC.
For now we can upload running it localy

File ~/.conda/envs/scvi/lib/python3.11/site-packages/mysql/connector/connection_cext.py:339, in CMySQLConnection._open_connection(self)
    337         self.converter.str_fallback = self._converter_str_fallback
    338 except MySQLInterfaceError as err:
--> 339     raise get_mysql_exception(
    340         msg=err.msg, errno=err.errno, sqlstate=err.sqlstate
    341     ) from err
    343 self._do_handshake()
    345 if (
    346     not self._ssl_disabled
    347     and hasattr(self._cmysql, "get_ssl_cipher")
   (...)
    352
    353     # `get_ssl_cipher()` returns the name of the cipher being used.

DatabaseError: 2003 (HY000): Can't connect to MySQL server on 'genome-mysql.soe.ucsc.edu:3306' (110)

Versions:
1.2

didn't work with other genome providers as well.


When I create a resource, There is an error.

I don't understand why nor how to solve it. The documentation seems more complicated to me than before. I don't know if the problem is with the doc or with angular-library. We don't understand anything


/etc/resolver and DNSCrypt bypasses

Every time DNScrypt on OSX changes its config, it scribbles all over /etc/resolver with a bunch of domain-specific resolver config files, most of which are for weird domains. Huh?
Why do I care? Well, it's because this is how DNScrypt configures bypasses, but it seems to be doing it wrong. It inserts the DNS resolver address of my home router into etc/resolver/* files when that's incorrect for the bypasses I need.
Now, if it just left manually-configured bypasses in /etc/resolver alone I'd be fine with that, but it overwrites anything in that directory every time the config changes. So again you ask, why do I care?
Well, my company uses split horizon DNS (don't vomit) so some names ending in the company domain are't resolvable unless you're inside the perimeter (directly or via VPN, which of course also tries to screw around with your DNS settings). What I'd like to have is an /etc/resolver/example.com file which forces DNSCrypt to bypass tits normal resover choice in favor of the corporate internal DNS servers.
So, I create this file, but every time DNSCrypt turns on or off or changes its config this file gets blown away.
Therefore:
(a) am i doing something wrong/stupid and there's a better way to accomplish bypass for domains with split-horizon DNS?
(b) if not, can I somehow prevent DNSCrypt from scribbling all over the files I put in /etc/resolver?
(c) if not, can I somehow cajole DNSCrypt to write correct bypass files when I put bypass domains into the config in the DNSCrypt pref pane on OSX.

Hi Dave,
dnscrypt-proxy doesn't change anything to the /etc/resolver directory, which doesn't even exist on most operating systems.
Since you are talking about OSX and a preference pane, it looks like you opened a ticket in the wrong project. The one you are using is probably https://github.com/alterstep/dnscrypt-osxclient

Thanks - sorry for the noise - will post there.


Consecutive changes do not emit distinct documents

When a handle is changed, the change event emits as expected. We can then resolve the handle value to get underlying document.
However, if two changes are made in quick succession, only the final value is resolved:
const TEST_ID = "test-document-id" as DocumentId
const handle = new DocHandle<{foo: string}>(TEST_ID, { isNew: true });

handle.on("change", async ({ handle }) => {
  const d = await handle.value();
  console.log(d);
});

handle.change((doc) => {
  doc.foo = "bar";
});

handle.change((doc) => {
  doc.foo = "baz";
});

will log
{ foo: 'baz' } <-- should be 'bar'
{ foo: 'baz' }

A simple solution to this would be to include the document in the event parameter object? Happy to put together a PR if this is acceptable.

That's interesting. Are you sure the listeners are registering in order?
Try listening to on("patch")? Is the old value of foo: "bar" by any chance?
On Tue, Apr 11, 2023 at 2:16 AM Alex Currie-Clark @.***>
wrote:

When a handle is changed, the change event emits as expected. We can then
resolve the handle value to get underlying document.
However, if two changes are made in quick succession, only the final value
is resolved:
const TEST_ID = "test-document-id" as DocumentIdconst handle = new DocHandle<{foo: string}>(TEST_ID, { isNew: true });
handle.on("change", async ({ handle }) => {
const d = await handle.value();
console.log(d);});
handle.change((doc) => {
doc.foo = "bar";});
handle.change((doc) => {
doc.foo = "baz";});
will log
{ foo: 'baz' } <-- should be 'bar'
{ foo: 'baz' }
A simple solution to this would be to include the document in the event
parameter object? Happy to put together a PR if this is acceptable.
—
Reply to this email directly, view it on GitHub
https://github.com/automerge/automerge-repo/issues/43, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAAWQEIHL3FOFZ6IYXGF7LXAUONVANCNFSM6AAAAAAWZ73U54
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Peter van Hardenberg
"Everything was beautiful, and nothing hurt."—Kurt Vonnegut

Listening to patches is how I am currently working around this.
I have even tried it with a pause between adding the listener and making the 2 changes. Only the final change is reflected in the handle.


Reduce threads spawned for codegen

Before:
30.59user 45.65system 0:36.92elapsed 206%CPU (0avgtext+0avgdata 946896maxresident)k
0inputs+532768outputs (0major+824582minor)pagefaults 0swaps

After:
29.47user 3.11system 0:22.75elapsed 143%CPU (0avgtext+0avgdata 945240maxresident)k
0inputs+531824outputs (0major+497122minor)pagefaults 0swaps

Note that the system time is reduced from 45 seconds to 3 seconds: this time is almost pure overhead spent copying pages.

Hi!
I tried your changes in Mac and they result in a slowdown. Here's what I'm doing:

Compile the compiler in release mode, for example bin/crystal build src/compiler/crystal.cr -o crystal-new --release
Copy the compiler to the .build directory so bin/crystal picks it up: mkdir .build; cp crystal-new .build/crystal
Make sure to remove all cached data from previous compilations: rm -rf .crystal
Test the new compiler's performance: time bin/crystal build src/compiler/crystal.cr -o crystal-test -s

You can do steps 1 to 4 for the current compiler and the compiler with your changes applies to see if there's a difference. At least in my case the "Codegen (bc+obj)" takes a few seconds more (about 4 seconds).
Would there be a reason that in Mac forking many times is faster than in linux? If so, we might use an ifdef to choose one strategy or another. I still have to try your changes on linux, but first I want to be sure that you aren't accidentally reusing cached data.

$ uname -a
Linux jhass-laptop 4.0.4-2-ARCH #1 SMP PREEMPT Fri May 22 03:05:23 UTC 2015 x86_64 GNU/Linux
$ rm -rf .crystal
$ time make clean crystal FLAGS="--release --stats"
rm -rf .build
rm -rf ./doc
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr
Parse: 00:00:01.0255180
Type inference: 00:00:07.6041620
Codegen (crystal): 00:00:01.5148260
Codegen (bc+obj): 00:03:01.5516630
Codegen (clang): 00:00:03.8879810
make clean crystal FLAGS="--release --stats"  190.57s user 2.04s system 98% cpu 3:16.47 total
$ hub checkout https://github.com/manastech/crystal/pull/745
...
$ rm -rf .crystal/
$ time make clean crystal FLAGS="--release --stats"
rm -rf .build
rm -rf ./doc
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr
Parse: 00:00:00.1183640
Type inference: 00:00:04.6174130
Codegen (crystal): 00:00:01.4481470
Codegen (bc+obj): 00:03:00.8868770
Codegen (clang): 00:00:01.4102650
make clean crystal FLAGS="--release --stats"  189.60s user 1.61s system 101% cpu 3:08.88 total

This does not seem to provide a performance improvement in release mode as there is only one unit and codegen_many_units is never called:
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr
Using compiled compiler at .build/crystal
Parse: 00:00:00.1299530
only one
Type inference: 00:00:05.1728430
Codegen (crystal): 00:00:01.6467940
only one
Codegen (bc+obj): 00:03:03.6434620
Codegen (clang): 00:00:01.8393460

      timing(msg) do
        if units.length == 1
          puts "only one"
          first_unit = units.first

          codegen_single_unit(first_unit, target_triple, multithreaded)

          if emit = @emit
            first_unit.emit(emit, original_output_filename || output_filename)
          end
        else
          puts "many"
          codegen_many_units(units, target_triple, multithreaded)
        end
      end

While I'm unable to track down exactly where this happens, I assume it's because LLVM needs access to the whole program at the same time if it's going to perform optimizations like inlining or devirtualization.
My results at the top represent compilation of the compiler in debug mode, which is significantly sped up.

Right, disregard my above test, it's flawed anyway since not actually using the compiler from this branch.

Yes, please profile this without --release (yes for creating the first compiler, not for the second one).
@jhass I think you also erase the temporary compiler by doing make clean, maybe you should do bin/crystal build ... instead.

/h/u/d/c/crystal-lang git:reduce-forking ❯❯❯ rm -rf .crystal; make clean crystal FLAGS="--release"
rm -rf .build
rm -rf ./doc
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release -o .build/crystal src/compiler/crystal.cr
/h/u/d/c/crystal-lang git:reduce-forking ❯❯❯ rm -rf .crystal; \time make crystal FLAGS="--stats" -B
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --stats -o .build/crystal src/compiler/crystal.cr
Using compiled compiler at .build/crystal
Parse: 00:00:00.1226660
only one
Type inference: 00:00:04.7116780
Codegen (crystal): 00:00:01.6854260
many
Codegen (bc+obj): 00:00:06.1880670
Codegen (clang): 00:00:02.3525730
23.39user 1.83system 0:15.45elapsed 163%CPU (0avgtext+0avgdata 945444maxresident)k
0inputs+532048outputs (0major+292418minor)pagefaults 0swaps

/h/u/d/c/crystal-lang git:reduce-forking ❯❯❯ gco master --force
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
/h/u/d/c/crystal-lang git:master ❯❯❯ rm -rf .crystal; make clean crystal FLAGS="--release"
rm -rf .build
rm -rf ./doc
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release -o .build/crystal src/compiler/crystal.cr
/h/u/d/c/crystal-lang git:master ❯❯❯ rm -rf .crystal; \time make crystal FLAGS="--stats" -B
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --stats -o .build/crystal src/compiler/crystal.cr
Using compiled compiler at .build/crystal
Parse: 00:00:00.1205280
Type inference: 00:00:04.7666540
Codegen (crystal): 00:00:01.7140080
Codegen (bc+obj): 00:00:11.0089870
Codegen (clang): 00:00:02.3609520
25.07user 22.92system 0:20.35elapsed 235%CPU (0avgtext+0avgdata 947320maxresident)k
0inputs+531784outputs (0major+645582minor)pagefaults 0swaps

$ rm -rf .crystal
$ time make clean crystal FLAGS="--release --stats"
rm -rf .build
rm -rf ./doc
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr
Parse: 00:00:00.1133590
Type inference: 00:00:08.4715020
Codegen (crystal): 00:00:01.5372070
Codegen (bc+obj): 00:03:28.9384850
Codegen (clang): 00:00:06.4842070
make clean crystal FLAGS="--release --stats"  220.28s user 2.54s system 98% cpu 3:46.21 total
$ touch src/compiler/crystal.cr
$ rm -rf .crystal
$ time make crystal FLAGS="--stats"
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --stats -o .build/crystal src/compiler/crystal.cr
Using compiled compiler at .build/crystal
Parse: 00:00:00.4365590
Type inference: 00:00:09.4770200
Codegen (crystal): 00:00:03.9863990
Codegen (bc+obj): 00:00:12.5514720
Codegen (clang): 00:00:01.9006570
make crystal FLAGS="--stats"  37.61s user 26.60s system 222% cpu 28.824 total
$ hub checkout https://github.com/manastech/crystal/pull/745
...
$ rm -rf .crystal
$ time make clean crystal FLAGS="--release --stats"
rm -rf .build
rm -rf ./doc
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr
Parse: 00:00:00.1392960
Type inference: 00:00:04.9105870
Codegen (crystal): 00:00:01.5402750
Codegen (bc+obj): 00:03:31.4144840
Codegen (clang): 00:00:01.4782640
make clean crystal FLAGS="--release --stats"  220.10s user 1.79s system 100% cpu 3:40.01 total
$ touch src/compiler/crystal.cr
$ rm -rf .crystal
$ time make crystal FLAGS="--stats"
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --stats -o .build/crystal src/compiler/crystal.cr
Using compiled compiler at .build/crystal
Parse: 00:00:00.1106770
Type inference: 00:00:04.9089220
Codegen (crystal): 00:00:01.8094630
Codegen (bc+obj): 00:00:07.0417690
Codegen (clang): 00:00:01.8946120
make crystal FLAGS="--stats"  29.84s user 2.28s system 197% cpu 16.236 total

So ~16s vs ~28s for me.

Taking a look back on this, running with recent master, on OSX:
$ uname -a
Darwin wing 15.4.0 Darwin Kernel Version 15.4.0: Fri Feb 12 15:56:47 PST 2016; root:xnu-3248.40.183~6/RELEASE_X86_64 x86_64

$ time make clean crystal FLAGS="--release --stats"
time make clean crystal FLAGS="--release --stats"
rm -rf .build
rm -rf ./doc
rm -rf src/llvm/ext/llvm_ext.o
rm -rf src/ext/sigfault.o src/ext/libcrystal.a
c++ -c -o src/llvm/ext/llvm_ext.o src/llvm/ext/llvm_ext.cc `/usr/local/bin/llvm-config-3.5 --cxxflags`
cc -fPIC   -c -o src/ext/sigfault.o src/ext/sigfault.c
ar -rcs src/ext/libcrystal.a src/ext/sigfault.o
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr -D without_openssl -D without_zlib
Parse:                             00:00:00.1382580 (  50.41MB)
Semantic (top level):              00:00:00.0799790 (  66.41MB)
Semantic (abstract def check):     00:00:00.0009700 (  66.41MB)
Semantic (type declarations):      00:00:00.0077000 (  74.41MB)
Semantic (main):                   00:00:07.1716160 ( 562.85MB)
Semantic (cleanup):                00:00:00.0001270 ( 562.85MB)
Semantic (recursive struct check): 00:00:00.0011330 ( 562.85MB)
Codegen (crystal):                 00:00:02.9087470 ( 699.35MB)
Codegen (bc+obj):                  00:04:30.0751160 ( 699.35MB)
Codegen (linking):                 00:00:00.6957770 ( 699.35MB)

real	4m42.225s
user	4m36.965s
sys	0m3.485s

$ touch src/compiler/crystal.cr
$ rm -rf .crystal
$ time make crystal FLAGS="--stats"
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --stats -o .build/crystal src/compiler/crystal.cr -D without_openssl -D without_zlib
Using compiled compiler at .build/crystal
Parse:                             00:00:00.1474360 (  50.28MB)
Semantic (top level):              00:00:00.1068450 (  74.28MB)
Semantic (abstract def check):     00:00:00.0009770 (  74.28MB)
Semantic (type declarations):      00:00:00.0087020 (  74.28MB)
Semantic (initializers):           00:00:00.0207510 (  74.28MB)
Semantic (main):                   00:00:06.2693800 ( 626.71MB)
Semantic (cleanup):                00:00:00.0001230 ( 626.71MB)
Semantic (recursive struct check): 00:00:00.0011770 ( 626.71MB)
Codegen (crystal):                 00:00:03.6329920 ( 676.21MB)
Codegen (bc+obj):                  00:00:15.6289320 ( 676.21MB)
Codegen (linking):                 00:00:01.1216190 ( 676.21MB)

real	0m27.443s
user	1m2.879s
sys	0m7.495s

Manually applying the proposed patch (no longer mergable directly, needed some syntax changes), and running the same test:
$ time make clean crystal FLAGS="--release --stats"
time make clean crystal FLAGS="--release --stats"
rm -rf .build
rm -rf ./doc
rm -rf src/llvm/ext/llvm_ext.o
rm -rf src/ext/sigfault.o src/ext/libcrystal.a
c++ -c -o src/llvm/ext/llvm_ext.o src/llvm/ext/llvm_ext.cc `/usr/local/bin/llvm-config-3.5 --cxxflags`
cc -fPIC   -c -o src/ext/sigfault.o src/ext/sigfault.c
ar -rcs src/ext/libcrystal.a src/ext/sigfault.o
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --release --stats -o .build/crystal src/compiler/crystal.cr -D without_openssl -D without_zlib
Parse:                             00:00:00.1490020 (  50.51MB)
Semantic (top level):              00:00:00.0842270 (  66.51MB)
Semantic (abstract def check):     00:00:00.0008460 (  66.51MB)
Semantic (type declarations):      00:00:00.0073360 (  74.51MB)
Semantic (main):                   00:00:05.0246380 ( 562.95MB)
Semantic (cleanup):                00:00:00.0001560 ( 562.95MB)
Semantic (recursive struct check): 00:00:00.0012300 ( 562.95MB)
Codegen (crystal):                 00:00:02.6866090 ( 691.45MB)
Codegen (bc+obj):                  00:04:32.6508970 ( 691.45MB)
Codegen (linking):                 00:00:01.2189160 ( 691.45MB)

real	4m42.940s
user	4m35.450s
sys	0m3.778s

$ touch src/compiler/crystal.cr
$ rm -rf .crystal
$ time make crystal FLAGS="--stats"
time make crystal FLAGS="--stats"
CRYSTAL_CONFIG_PATH=`pwd`/src ./bin/crystal build --stats -o .build/crystal src/compiler/crystal.cr -D without_openssl -D without_zlib
Using compiled compiler at .build/crystal
Parse:                             00:00:00.3199260 (  50.27MB)
Semantic (top level):              00:00:00.1099910 (  74.27MB)
Semantic (abstract def check):     00:00:00.0009440 (  74.27MB)
Semantic (type declarations):      00:00:00.0089740 (  74.27MB)
Semantic (initializers):           00:00:00.0211150 (  74.27MB)
Semantic (main):                   00:00:07.1027550 ( 594.71MB)
Semantic (cleanup):                00:00:00.0001190 ( 594.71MB)
Semantic (recursive struct check): 00:00:00.0013980 ( 594.71MB)
Codegen (crystal):                 00:00:03.0466980 ( 739.21MB)
Codegen (bc+obj):                  00:00:16.1062540 ( 739.21MB)
Codegen (linking):                 00:00:01.1141030 ( 739.21MB)

real	0m28.352s
user	0m53.466s
sys	0m2.463s

So now it looks pretty comparative in speed.
Note: I never saw the master approach exceed 4 threads (nor saturate CPU use) - and the proposed changes here had no significant speedups observed.
Not certain what the future of this PR should be.

If someone wants to do this, please open a separate PR that prevents many forks, but only in linux systems. On mac it should keep doing the same.

I finally implemented something similar at https://github.com/crystal-lang/crystal/commit/c7921397a6c58e304e6b0dd68ea2746ee604e064 . It's consistently faster on mac, and it should be much faster on linux


exception while deleting selection in editor

Description
What steps will reproduce the problem?

I had a ~550 line Python script, I selected some code, hit delete, and got this exception.
I tried it again (ctrl-z to undo the delete, then selected and deleted again) and I didn't get the exception, so not very reproducible. this is the first time it happened after around 3 days of having Spyder/Anaconda installed on a new machine while using several hours a day. But at least this lets you know there is a problem in that region of code.
 This is already fixed and part of our 4.2.1 version, released two weeks ago.
Since the Anaconda team is taking too much time to update our releases, you're welcome to use our Windows installer instead.
If you prefer not to do that, you'll have to wait two more weeks (perhaps more) until new conda packages are available.

Hey @rlabbe, thanks for reporting. This is already fixed and part of our 4.2.1 version, released two weeks ago.
Since the Anaconda team is taking too much time to update our releases, you're welcome to use our Windows installer instead.
If you prefer not to do that, you'll have to wait two more weeks (perhaps more) until new conda packages are available.


[Quantization] Fix quantize graph pass

Description
This PR fix a bug in quantize graph pass. When quantizing the last layer of a whole model, a dequantize layer will be insert after this layer with wrong input index:
          "arg_nodes": [0, 1, 2],
          "node_row_ptr": [0, 1, 2, 3, 4, 5],
          "heads": [[4, 0, 0]]
        }
      ]
    },
    {
      "op": "_contrib_dequantize",
      "name": "sg_mkldnn_conv_relu_19_dequantize",
      "inputs": [[67, 0, 0], [67, 3, 0], [67, 4, 0]]
    }
  ],
  "arg_nodes": [
    0,
    3,

So, this PR changes to use output_num to calculate the index of min/max and below is the correct quantized graph:
          "arg_nodes": [0, 1, 2],
          "node_row_ptr": [0, 1, 2, 3, 4, 5],
          "heads": [[4, 0, 0]]
        }
      ]
    },
    {
      "op": "_contrib_dequantize",
      "name": "sg_mkldnn_conv_relu_19_dequantize",
      "inputs": [[67, 0, 0], [67, 1, 0], [67, 2, 0]]
    }
  ],
  "arg_nodes": [
    0,
    3,

@pengzhao-intel @ciyongch @ZhennanQin @reminisce
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[ ] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[ ] Changes are complete (i.e. I finished coding on this PR)
[ ] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[ ] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[ ] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[ ] Feature1, tests, (and when applicable, API doc)
[ ] Feature2, tests, (and when applicable, API doc)

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

@xinyu-intel Thanks for your contributions.
@mxnet-label-bot Add [Quantization]

LGTM. Thanks for fixing this.

Thanks for your contribution. Merging now.