Create document to share findings

Create a document for consumption of findings and early recommendations to executives.

Requires elements from #1550 #1552 #1548


Option to send game link in notification

I noticed that every purchase needs a captcha when using the epicgames-freegames-node. Also some of the times it consistently fails to purchase even after solving the captcha.
However, on my phone if I go to the store in chrome, and claim the game there no captcha is needed. So it is faster for me to claim it manually.
I would like an option to just have the addon send a link to purchase the game in epic game store, which I could click and buy in chrome and so avoid the captcha. Example link: https://store.epicgames.com/en-US/p/warpips-57e2c4?purchaseIntentId=277788d421e748e580ca0972c339f1a6|f6e75092c08045afa343fb5c5aa817ae

Duplicate of #312


the today code time statistics showing at the bottom of vsc has stopped

My computer shut down abnormally yesterday, when i rebooted this morning and opened vsc, the statistics at the bottom was just stopped at 7hrs. I think it may be the automatic recovery mechanism of vsc that caused this extension cannot work.

@wiz-lee Time-consuming calculations are done by the backend, and the amount of data is relatively large, so there will be a certain delay


App running fine but cant see any differences in game

App run fine (Running last released), On menu globe can see google maps but when i start a flight can only see default bing ones.
Getting this on cmd
Use cached: https://mt1.google.com/vt/lyrs=s&x=249682&y=196763&z=19
https://mt1.google.com/vt/lyrs=s&x=249682&y=196763&z=19 0.5570215998930614 0.7251114701357311
<IP_ADDRESS> - - [13/Nov/2021 14:00:00] "GET /tiles/akh0331100111121032032.jpeg?n=z&g=10277 HTTP/1.0" 200 -
Use cached: https://mt1.google.com/vt/lyrs=s&x=31208&y=24599&z=16
https://mt1.google.com/vt/lyrs=s&x=31208&y=24599&z=16 0.476020868794677 0.7625369883958832
<IP_ADDRESS> - - [13/Nov/2021 14:00:04] "GET /tiles/akh0331100111121222.jpeg?n=z&g=9591 HTTP/1.0" 200 -
So assuming is trying to get it.
Thanks

Yes it is working and loading tiles.
Please have a look at: https://github.com/derekhe/msfs2020-google-map/wiki/FAQ#app-is-working-but-google-map-not-show

Same issue,  rolling cache is disabled and cleaned. cant see anything different from videos, I'm using windows 11, can be because of that? Thanks

I'm also using win 11.
I see from the log the image is loading. Do you see google maps loading when in the earth view? You can navigate to different place and then you should she the cmd window scrolling, then it should correct.

I must say Windows 11 here as well... gave it everything I read.
No go.  KEEP PUSHING @derekhe AWESOME WORK really


Bubble Sort in Javascript

🚀 Feature
(A clear and concise description of what the feature is.)
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign


Feature: Expose internal variables in OSC fields

Please expose the internal variables so they can be used inside OSC fields

That would be wonderfull


error: packages '/nix/store/yvr7hjdxj1b5jcjk3pgh9z4gmwn78lql-home-manager-path/etc/man_db.conf' and '/nix/store/naig9qc4bmx1gp4nmsmxwmnllx0cjlvc-nix-on-droid-path/etc/man_db.conf' have the same priority 5

Activating linkBinSh
Activating linkUsrBinEnv
Activating installLogin
Activating installLoginInner
Activating installPackages
GC Warning: Couldn't read /proc/stat
replacing old 'nix-on-droid-path'
installing 'nix-on-droid-path'
Activating installProotStatic
Activating setUpEtc
Activating homeManager
Starting home manager activation
GC Warning: Couldn't read /proc/stat
GC Warning: Couldn't read /proc/stat
Activating checkFilesChanged
Activating checkLinkTargets
Activating writeBoundary
Activating installPackages
GC Warning: Couldn't read /proc/stat
installing 'home-manager-path'
building '/nix/store/1w8d8qzqzcrfnbjk1879lg7abai7gznm-user-environment.drv'...
error: packages '/nix/store/yvr7hjdxj1b5jcjk3pgh9z4gmwn78lql-home-manager-path/etc/man_db.conf' and '/nix/store/naig9qc4bmx1gp4nmsmxwmnllx0cjlvc-nix-on-droid-path/etc/man_db.conf' have the same priority 5; use 'nix-env --set-flag priority NUMBER INSTALLED_PKGNAME' to change the priority of one of the conflicting packages (0 being the highest priority)
builder for '/nix/store/1w8d8qzqzcrfnbjk1879lg7abai7gznm-user-environment.drv' failed with exit code 1
error: build of '/nix/store/1w8d8qzqzcrfnbjk1879lg7abai7gznm-user-environment.drv' failed

system: "aarch64-linux"
host os: Linux 4.4.200-g122700c1790b
multi-user?: no
sandbox: no
version: nix-env (Nix) 2.3.5
channels(nix-on-droid): "home-manager-20.03, nix-on-droid-20.03, nixpkgs-20.03.2015.e7752db2fb6"
nixpkgs: /data/data/com.termux.nix/files/home/.nix-defexpr/channels/nixpkgs

That is strange, do you install a package in nix-on-droid and home-manager? Maybe share your current config.
It would help, if we know, what package is causing the conflict, so if you have ~/.nix-profile/etc/man_db.conf already present, could you run a ls -l for it, that we see the link target?

I installed openssh with nix-env and I have this:
-bash-4.4$ ls -l ~/.nix-profile/etc/man_db.conf
lrwxrwxrwx 1 nix-on-droid nix-on-droid 82 Jan  1  1970 /data/data/com.termux.nix/files/home/.nix-profile/etc/man_db.conf -> /nix/store/naig9qc4bmx1gp4nmsmxwmnllx0cjlvc-nix-on-droid-path/etc/man_db.conf

config
{ pkgs, ... }:

{
  # Simply install just the packages
  environment.packages = with pkgs; [
    # User-facing stuff that you really really want to have
    vim  # or some other editor, e.g. nano or neovim

    # Some common stuff that people expect to have
    diffutils
    findutils
    utillinux
    tzdata
    hostname
    man
    gnugrep
    gnupg
    gnused
    gnutar
    bzip2
    gzip
    xz
    zip
    unzip
  ];

  # Backup etc files instead of failing to activate generation if a file already exists in /etc
  environment.etcBackupExtension = ".bak";

  # Read the changelog before changing this value
  system.stateVersion = "20.03";

  # After installing home-manager channel like
  #   nix-channel --add https://github.com/rycee/home-manager/archive/release-20.03.tar.gz home-manager
  #   nix-channel --update
  # you can configure home-manager in here like
  home-manager.config =
   { pkgs, ... }:
   {

     programs.bat.enable = true;
     programs.command-not-found.enable = true;
     programs.fzf.enable = true;
     programs.starship.enable = true;

     home.packages = [
       pkgs.neofetch
     ];

   };
}

# vim: ft=nix

channels
home-manager https://github.com/rycee/home-manager/archive/release-20.03.tar.gz
nix-on-droid https://github.com/t184256/nix-on-droid/archive/release-20.03.tar.gz
nixpkgs https://nixos.org/channels/nixos-20.03

It seems fine if I remove man from environment.packages

Maybe there is an implicit reference of man in your home-manager config.. You could also use the option home-manager.useUserPackages, which may fix this issue for you too.

Thanks!

You could also use the option home-manager.useUserPackages, which may fix this issue for you too.
This approach is definitely worth documenting. This is a common issue with high reproducibility.

Maybe we should also consider changing the default value for home-manager.useUserPackages to true.

@Gerschtli, what would be the downsides?

Can't think of any.. Maybe someone depends on this in his custom config so a conditional default value based on the stateVersion seems to be the most apprpriate options besides adding a small comment in the README that this option is recommended to be set to true.

@Gerschtli, is it OK to bump stateVersion at any moment or should we wait until the next NixOS release?

You mean the default value? I think we should never change it. We should add a conditional switch to enable useUserPackages if stateVersion is higher or equal than 20.09. That is the default behaviour of nixos and home-manager too. And of course add this change to a not yet created changelog.

I have to correct myself: I have just checked and nixos sets stateVersion default to current release, home-manager never changes its default value.
I think the most consistent and predictable way to handle this is the home-manager way: The user has to manually update the stateVersion because essentially this value should not have any default value at all and is just set to provide backwards compatibility for system installations before introducing this option.

I meant, should I introduce an intermediate 20.08 to make the change sooner, or rather do it in some staging-20.09 and only fold it back to master when 20.09 is out. Now I see us both leaning towards 20.09.

Ah okay, now I understand.
How about adding it to master (aka the unstable bleeding edge channel) and when 20.09 is released creating a new channel? Of course you could create a staging-20.09 but I don't see the real benefit.
The only problem could be that users of nix-on-droid use the master channel and don't know of the stable ones, but I would consider it minor and just provide a Changelog or a short Paragraph in the Readme for all possible channels and branches (and maybe a date for end of support).

I see similar output when doing:
nix-channel --update
nix-env -iA nixpkgs.nix

error: packages '/nix/store/m3zf69cqn7a85y2bjvg5rn7a9llf0d9w-nix-on-droid-path/share/nix/sandbox/sandbox-network.sb' and '/nix/store/g4d6n09a189ird2rnr6ab79pbbz3vfm9-nix-2.3.6/share/nix/sandbox/sandbox-network.sb' have the same priority 5; use 'nix-env --set-flag priority NUMBER INSTALLED_PKGNAME' to change the priority of one of the conflicting packages (0 being the highest priority)

But why do you want to do this? nix is already included in nix-on-droid-path

@Gerschtli basically want to upgrade it.
Pls correct me if I misunderstood something ?

nix-on-droid-path contains the nix package of the installed nixpkgs channel. If you want another version of nix, you should add an overlay where you change the nix package to the latest version.
For reference, nix is installed in modules/environment/path.nix, an overlay would be the best option to change the version.

For future reference: If you want to use a different nix package, use config.nix.package option.
I will close this issue as it seems to be solved. Feel free to reopen if necessary.


Resnet model URLs inaccessible

The URLs for resnet50, resnet101, and resnet152 are inaccessible. This causes a 403 error when creating models of these types.

hi @scott-wade
You can find a mirror here: https://github.com/yassouali/pytorch-segmentation/releases


change copyright license header in every class

every java class has a license header which should be updated, i.e. replace such header with new one:
/*******************************************************************************
 * Copyright 2018-2022 Zebrunner Inc (https://www.zebrunner.com).
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *******************************************************************************/

so among changes:

new years 2018-2022 when rights were transferred
new company name and it's website url

merged: https://github.com/zebrunner/carina/pull/1510
during the testing just try to look for (case sensitive) among carina sources:
2013-2020
2013-2021
QAPROSOFT
http://qaprosoft.com
QaProSoft

close if no references to license header detected according to the list above

verified, fixed.


Make the RequestServicesContainerMiddleware thinner

Today the request services middleware is responsible for making sure there are request scoped sevices.
This PR tries introduces some breaking changes that are hopefully acceptable in order to gain some performance.
Here are the assumptions this PR makes:
Since this middleware is first in the pipeline, the only thing that can
set a default service provider would be the server itself. Since we have no servers that do that
I removed that code that tries to noop if there's an existing service provider.
This PR no longer restores the previous service provider feature since it gets replaced every request
anyways. Kestrel also clears out the feature on each request so it shouldn't be a problem (in theory).
Once again, since this middleware is first, it is the last thing that runs before the server re-gains
control on the way out so there's no need to restore anything.
We use the RegisterForDispose method to dispose of the IServiceProvider instead of doing it inline.

@Tratcher come at me bro 😄.
02:50:02.981] Using worker Wrk
[02:50:03.633] Running session '86d93bd805864be48327ffc1c344fb58' with description ''
[02:50:03.633] Starting scenario Plaintext on benchmark server...
[02:50:12.412] Warmup
[02:50:12.428] Starting scenario Plaintext on benchmark client...
[02:50:28.414] Scenario Plaintext completed on benchmark client
[02:50:28.417] Stopping scenario Plaintext on benchmark client...
[02:50:28.447] Starting scenario Plaintext on benchmark client...
[02:50:44.251] Scenario Plaintext completed on benchmark client
[02:50:44.251] Stopping scenario Plaintext on benchmark client...
[02:50:44.348] RequestsPerSecond:           1921644
[02:50:44.348] Latency on load (ms):        2.2
[02:50:44.348] Max CPU (%):                 92
[02:50:44.348] WorkingSet (MB):             374
[02:50:44.348] Startup Main (ms):           373
[02:50:44.348] First Request (ms):          149.3
[02:50:44.349] Latency (ms):                0.7
[02:50:44.349] Socket Errors:               0
[02:50:44.349] Bad Responses:               0
[02:50:44.349] SDK:                         2.2.0-preview1-007522
[02:50:44.349] Runtime:                     2.1.0-preview2-26314-02
[02:50:44.349] ASP.NET Core:                2.1.0-preview3-30384

/cc @DamianEdwards @benaadams @sebastienros
Putting on my pedantic hat here's what can go wrong:

If somebody replaces the IApplicationBuilderFactory, they can inject middleware before the RequestServicesContainerMiddleware middleware. They would still see the service providers feature added by the middleware.
If somebody removes the IStartupFilter that adds this middleware and does their own thing, the middleware won't clean itself up so middleware that run after it will observe the service providers feature.
If there's a bug in RegisterForDispose, then service providers won't get disposed. Well, and many other things that need to get disposed 😄.

PS: We have no tests for the things I removed. Ooops we have no tests at all https://github.com/aspnet/Hosting/search?utf8=✓&q=AutoRequestServicesStartupFilter&type=

This would make this change no longer necessary? https://github.com/aspnet/KestrelHttpServer/pull/2355

The pattern currently in Hosting has been a perf bugbear of mine for ages and is hard to optimize (get, bunch of checking, swap, restore). With this new pattern, can already see a few potential improvements on the improvements... 😄


New documentation site + missing pages

As I was writing the missing pages for our documentation I realised that I simple page like the one that we used until now was really hard to navigate and it might be difficult to use for newcomers. I looked around and I think I have found a good template for our project called Just the Docs. By using it we would have a list of all the pages on the left and also a search bar at the top, in this PR there is also the workflow needed to update it which should work once we merge it and run automatically only when we make changes to the docs folder.
Apart from this, I also tried to write something for all the missing pages which are:

Roadmap
Coding Style
Widget List: for now I just put in the names of the files but ideally we should have a image and code example for each of them

I didn't create one for the DB because we will make a few changes in the near future and I think it would make much more sense to do it once we have more stable structure.
If you want to checkout how the docs will look with these changes you can do it at https://theperu.github.io/sossoldi/
Let me know what you think about all of these especially the Roadmap and Coding Style pages since are quite important and we should all decide together 😁

I fixed all the stuff that you pointed out, I'll go ahead and merge this so that we can see if we need to do something also for the deploy of the new page but hopefully everything will work as expected


crash opening a specific page on CentOs

I am using phatomJs for screenshot capturing.
It crashes when I try to open this page: http://www.hertz.co.uk/
The crash does not happen on my mac, but happens CentOs 6.3 VMs in Azure. I have not tested on other unix environments. I was using pahtomJS 1.8 but upgraded to 1.9.1 and the error persists. I've installed it using the binary download from the homepage.
I've tested many sites, and the error only appears on this one.
It crashes with a 35147 Segmentation fault.

Please upgrade to PhantomJS 2.0. 1.9.x is no longer supported, and known to have many crasher bugs that are fixed in 2.0.


Sector Generator

Systems/clusters are first placed into a regular grid; then if the number of systems is below the minimum, a new position is calculated by displacing its current position along a normal curve number generator. Then the current system is compared against the other systems, if it is within a certain distance, the system is displaced. Then the systems are randomly displaced to the other side to improve sprawl. This is our best attempt to create the illusion of the distribution of stars in a galaxy, however it is still unnatural and does not model the Game Maker Studio Chapter Master's sector generator.

[ ] Systems are still erroneously placed outside the boundaries.

https://github.com/ChapterMasterRestoration/Chapter-Master-Restoration/blob/master/ChapterMaster/ChapterMaster/World/Sector.cs

I must say this again, an easy solution would be to add a "generate" screen with a preview of the sector map and a button the player can use to generate another map if the previous one was full of irregularities.

I must say this again, an easy solution would be to add a "generate" screen with a preview of the sector map and a button the player can use to generate another map if the previous one was full of irregularities.

Systems outside the boundaries may not be to the player.

I must say this again, an easy solution would be to add a "generate" screen with a preview of the sector map and a button the player can use to generate another map if the previous one was full of irregularities.

Systems outside the boundaries may not be to the player.

Not if the player can see the entire map in the preview. Then, they can easily see the irregularities


⚠ API - Lens has degraded performance

In c9293af, API - Lens ($LENS_API_URL) experienced degraded performance:

HTTP code: 504
Response time: 10600 ms

Resolved: API - Lens performance has improved in 4cd3ec7 after 8 minutes.


Makes botanist spawn with Botany belts

About the PR
Makes Botanist spawn with botany belts literary just one line of code I don't know if I should even do a changelong for this also if the belt of botanist needs to be filled like janitors I can do that
Screenshots

Changelog

:cl: Seth

add: Makes botanist spawn with botany belts

lgtm, however i see that the whitelist seems to be commented out for it, so im gonna ask for a second opinion of @SweptWasTaken

Yeah it's awaiting #4358.
I don't want botanists to spawn with the belt anyway I want it to be in their locker.


The equation of problem_weak.py in the old problem folder

Hello, could you tell me about the equation and the corresponding boundary conditions in problem_weak.py? The code seems to be inconsistent with the equation in the paper

Hello, could you tell me about the equation and the corresponding boundary conditions in problem_weak.py? The code seems to be inconsistent with the equation in the paper

Hello, could you tell me about the equation and the corresponding boundary conditions in problem_weak.py? The code seems to be inconsistent with the equation in the paper

Thank you for pointing out this issue. The code problem_weak.py has updated now.


Clean up EmbulkEmbed and EmbulkService

This is just refactoring. Can you have a look, @sakama @kamatama41 ?

Move EmbulkService.standardModuleList to EmbulkEmbed
Reduce usage of Guava
Use Java 8 java.util.function.Function instead of Guava Function

This will use https://github.com/embulk/guice-bootstrap/pull/12.

Thanks! Merging this with 22e5b754188df0ccfd83341f1a647e7f509f895b after the CI gets happy.


Uploading en.catkeys fails for an app's "Administrator"

janus is "Administrator" for Slayer, as he added the Slayer project after I upgraded his Polyglot role to "Developer". He tried to upload an updated en.catkeys for Slayer, but got the "Whoops, looks like something went wrong" error.
I, OTOH, had no problems uploading the new Slayer en.catkeys.

I cannot reproduce this, and I don't see any indication of this ever happening in the logs (last entry is from 26-02-2018). For now let's assume it was an intermittent issue. If it happens again, please reopen this ticket.

Still happening the error message:

The en.catkeys file:
en.catkeys.txt
I have tried with Web+ (Haiku), Yandex and Safari (macOs)

Should be fixed with 3363ebdc426720eb915070687693d517330df5ab.


Version bump for v1.0.0-rc3

VOTE
https://groups.google.com/a/opencontainers.org/d/msg/dev/vm9laWGriwE/Ra-CE7MHDwAJ
Includes the following PRs:
d12da90 Merge pull request #633 from WeiZhang555/syncup-hook-state
9ce258d Merge pull request #629 from wking/code-to-program
7839cbb Merge pull request #626 from duglin/specCleanup
ee5a565 Merge pull request #621 from wking/output-dirname-trailing-slash
600b8b4 Merge pull request #619 from wking/tk/process-header
b69dcba Merge pull request #617 from wking/process.terminal-optional-case
780fc67 Merge pull request #622 from wking/rfc-2119-wording
44c6543 Merge pull request #623 from wking/no-solaris-uid-gid-note
f6b9850 Merge pull request #624 from wking/windows-optional-case
176fe80 Merge pull request #625 from Mashimiao/spec-config-comment-fix
d7e87ca Merge pull request #627 from jonboulle/master
cc983bb Merge pull request #588 from anuthan/solaris
c9a95ed Merge pull request #613 from RobDolinMS/patch-13
f815650 Merge pull request #608 from hqhq/fix_format_issues
2d49cf4 Merge pull request #610 from vapier/master
0afa59f Merge pull request #609 from wking/absolute-mount-destination
0df2586 Merge pull request #518 from mrunalp/terminal
41ef05e Merge pull request #605 from WeiZhang555/fix-typo
b8e2ebe Merge pull request #597 from WeiZhang555/fix-duplicated-namespaces
dc42b45 Merge pull request #601 from hqhq/rewrite_idmapping
32aa94e Merge pull request #586 from Mashimiao/specs-config-fix-required-type
e91c55e Merge pull request #603 from coolljt0725/typo
28c6afe Merge pull request #600 from hqhq/fix_typos
ac2317a Merge pull request #599 from hqhq/use_IO
81888fe Merge pull request #584 from wking/json-object-no-order-or-duplicates
6dfc682 Merge pull request #587 from Mashimiao/config-fix-and-value-require-paths
1e7faf0 Merge pull request #596 from WeiZhang555/add-related-links
63467b2 Merge pull request #595 from WeiZhang555/typo
d6d6839 Merge pull request #589 from wking/golint-requires-go-1.6
a39be46 Merge pull request #567 from jhowardmsft/jjh/aggressivenamespacing
508cd27 Merge pull request #585 from wking/ocitools-rename
1c7c27d Merge pull request #573 from jhowardmsft/jjh/addwindows
c356a80 Merge pull request #563 from jhowardmsft/jjh/initialconsolesize
d850760 Merge pull request #575 from jhowardmsft/jjh/definitions
313f40b Merge pull request #559 from wking/create-bail-for-unsupported-config
67063b5 Merge pull request #574 from wking/config-optional-required
37dbfc3 Merge pull request #572 from jhowardmsft/jjh/typo
7bce59f Merge pull request #564 from jhowardmsft/jjh/processplatformtags
2239827 Merge pull request #571 from jonboulle/patch-1
f0ecb45 Merge pull request #557 from vbatts/bump-version-1.0.0-rc2
b9e85b0 Merge pull request #569 from wking/drop-platform-dependent-comment-v2
0bb7b17 Merge pull request #566 from wking/mount-link-whitespace
a992b1b Merge pull request #565 from jhowardmsft/jjh/user
66f4f35 Merge pull request #568 from wking/drop-platform-dependent-comment
74ec713 Merge pull request #523 from wking/clarify-version
b3ce195 Merge pull request #558 from Mashimiao/config-clarify-root-filesystem-path
7a36e7e Merge pull request #547 from vbatts/go_vet
22c29c1 Merge pull request #556 from wking/remove-space-before-colon
b2f69c6 Merge pull request #510 from duglin/extension

LGTM

LGTM


Create Data Flow Diagram for Security Assessment.md

Please review the diagram and let us know in case any changes are required.
Diagram is based on a state from our last discussion last week.
Kindly requesting to pull it together with the security assessment documentation created by Kristian.

Description

Pre-review checks
Please ensure to do as many of the following checks as possible, before asking for committer review:

[ ] DEPENDENCIES are up-to-date. Dash license tool. Committers can open IP issues for restricted libs.
[ ] Copyright and license header are present on all affected files

Content was passed for this PR https://github.com/eclipse-tractusx/bpdm/pull/755
To enrage commits and unify all documentation , closing this comment and taking the approvals to the PR mentioned
@nicoprow @SSIRKC  @szymonkowalczykzf


remove a few unused functions

Scope & Purpose
Remove some now-unused old code.
Compilation will show whether the code was still accessed.

[ ] :hankey: Bugfix (requires CHANGELOG entry)
[ ] :pizza: New feature (requires CHANGELOG entry, feature documentation and release notes)
[ ] :fire: Performance improvement
[x] :hammer: Refactoring/simplification
[ ] :book: CHANGELOG entry made

Backports:

[x] No backports required

Testing & Verification

[x] This change is a trivial rework / code cleanup without any test coverage.

http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/14181/

Jenkins test failure is unrelated to the changes in this PR.


check if it's a relay group in pickle instead of guessing

fix #11

CI fails because of the deltachat CFFI bindings being version 1.36.2, with manually built 1.42.7 it works. Unfortunately it isn't yet released on pypi.org :/


Caution: Do NOT Update<EMAIL_ADDRESS>

Until https://github.com/isaacs/node-graceful-fs/issues/174 is fixed.
Probably requires https://github.com/Axosoft/nsfw/issues/90

Seems to be fixed no in 4.2.3.


Version 6.0 ---> 7.14 errors

Hey, I'm using the latest version of JTAppleCalendar and the CalendarPopUp framework, which is based on your library (though version 6.0, not the latest). Any hints on how to fix these issues?

Cheers,

Yea, the guy who wrote calendar popup, I do not think he updates his library as regularly as I do.
I'd say the best bet is to just use this one as it is easy to create a popup calendar.
Calendarpopup is still using version 6 of JTApplecalendar which is being fazed out.
There is a huge change in version 7 (the final major change).
The tutorials to set every thing up can be found HERE.
Version 7 makes the this library a direct subclass of a UICollectionView which makes things very much easier. I have also removed many of the custom names that i used in version 6, and opted to use the default variable/function names that Apple provided to makes things easier on developers.
The tutorials should help you a lot. If youre still stuck, then let me know.

Thank you ~ I guess I'll need to convert the code of Calendar PopUp manually to the latest version of JTAppleCalendar. Honestly, I don't think I have enough energy to create a new calendar, although I know it's pretty simple with your framework.

Yea. with version you can create a calendar in 5 mins if you follow the vids.
Best of luck man.

CalendarPopUp upgraded to latest version of JTAppleCalendar

@orazz awesome man :)

Orazz & Jay you guys da best, thanks so much!


Added testcase :Share backups to users with different roles:82947

What this PR does / why we need it:
https://portworx.atlassian.net/browse/PA-328
Which issue(s) this PR fixes (optional)
Closes #
Aetoe link : http://aetos.pwx.purestorage.com/resultSet/testSetID/76597
Special notes for your reviewer:

I think the test is not verifying the objective of the test case.
The flow should be like this:
Create users
Create backups
Add roles to users
Here roles are - px-backup-infra.admin, px-backup-app.admin and px-backup-app.user
Then you need to provide all levels of access to each user with these roles and validate that irrespective of the user roles, backup share is working

Raised a new PR : https://github.com/portworx/torpedo/pull/1038


Hit the right server

We currently only ever hit 0-edge-chat.facebook.com.
This could be causing a couple of issues, like #156 and #158.

Going to wager a guess that the problems are actually the static usage of seq and partition:
https://github.com/Schmavery/facebook-chat-api/blob/master/src/listen.js#L24-L25
As those parameters smell to be used for something important. *-edge-chat is a static CNAME to star.c10r.facebook.com which is a DNS-based load / region balancer. The specific *-edge-chat you use has no bearing on the IP that is resolved. The client seems to pull one out of a hat (using Math.random) and then use local storage so it doesn't change for at least ~1.6 minutes (I haven't been looking at this long enough to see the at most time).

#156 looks like facebook chat was simply offline or that the local DNS resolution failed. As getaddrinfo failed to retrieve address information for the CNAME.
#158 could mean facebook was having issues. I don't see enough testing to justify a problem with the library (and not a blip in facebook's network).

Looking through those issues I'm thinking there isn't any real "problem" with just using 0-edge-chat but as the client does cycle through seq and partition I assume they are needed for something or other.

Thanks for your investigation @mehcode
We haven't taken the time to investigate partition (afaik @bsansouci) because it's always been -2 when we've seen it.
Maybe switching to another *-edge-chat when a call fails?  Not sure, but it would be nice to be able to handle #156.  If we can find out how the client figures out the range of numbers to choose from, that would be cool.

If we can find out how the client figures out the range of numbers to choose from, that would be cool.

Math.floor(Math.random() * MAX_CONNECTIONS) % 7

max_conn is from the reconnect call which is consistently 6 over here.
That number (from 0 to 6) is then stored in local storage along with a timestamp to make sure you stay on that channel for at least 100 * 1000 milliseconds if you refresh. I didn't leave the inspector open long enough (I did for a couple hours) to see if it switched on its own.

Sorry, just to clarify, are you getting this code from the client or intuiting it from your observations of the packets?  I don't really see how Math.floor(Math.random() * MAX_CONNECTIONS) % 7 is different from Math.floor(Math.random() * 7) other than maybe a slight difference in distribution.  Then again, there's some pretty weird code in the fb client.

I'm getting the code from the client. It is a bit weird. Ctrl-Shift-F in chrome and search for ".allocate" -- you'll find the spot where it asks for the number. I then stepped in there and poked around.

I don't think this is currently a priority.  If someone feels otherwise, feel free to chime in.


Support auth via certificates and headers

This PR adds support for authentication via a client certificate (#300) or via a header set by a reverse proxy.
In order to use a client certificate (or auth by header), the username passed to docker login must match that of the certificate's CN or the value in the header used for authentication. The password doesn't matter. I've added an example to show how I'm using it in the examples folder.

Thanks for this PR. This means I can use for example mod_auth_openidc for Apache2 to handle authentication.

Can this feature be merged? It would be very useful!

+1 Would love to see this merged to enable "X-Forwarded-User"-Auth via reverse proxy!


[canonical] Write tutorials or additional usage resources for sdatch class and Layer derivatives

Sdatch is simple library. But its simplicity cannot be recognizable without useful documentation.
Like a commodity front-end library, it should have tutorial, guides or detailed usage documentation for developer or designer who are newly planning to try the library.
Sample will be simple enough to quickly understand, but practical usages are desired.

[ ] createFigure and sdatch constructor
[ ] Bar
[ ] Plot
[ ] Pie
[ ] Line
[x] Area
[ ] Geo
[x] any other topics

New example (uc3) has several demo for main features. This page tells users what sdatch can do, and cannot do at now.
https://github.com/g1eng/sdatch/blob/master/demo/uc3.html
An example of Area chart is included.

FigConfig tutorial is added. An user can learn how to specify FigConfig properties and how to adjust chart UI.


chore(pre-commit): format C# with CSharpier

This change is part of the following stack:

#52

#53

#54

#55

#56 ◀

#57

Change managed by git-spice.


mount rootfs failed when starting a kubernetes cluster

What happened:
mount rootfs failed when starting a kubernetes cluster
What you expected to happen:
kubernetes cluster is started successfully
How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:
failure output:
2022-02-16 16:10:19 [INFO] [local.go:238] Start to create a new cluster
Start to Pull Image kubernetes:v1.20.14
a2d1292352ed: pull completed
00f8b48234a2: pull completed
f9f1ce9143cb: pull completed
25c2c217563d: pull completed
Success to Pull Image kubernetes:v1.20.14
Error: mount rootfs failed exec init.sh failed failed to execute command(Device1=vdb2 Device2=vdb3 && cd /var/lib/sealer/data/default-kubernetes-cluster/rootfs  && chmod +x scripts/* && cd scripts && bash init.sh) on host(<IP_ADDRESS>): output(+ storage=/var/lib/docker
+ mkdir -p /var/lib/docker
+ command_exists docker
+ command -v docker
+ systemctl daemon-reload
+ systemctl restart docker.service
++ docker info
++ grep Cg
+ cgroupDriver=' Cgroup Driver: cgroupfs'
+ driver=cgroupfs
+ echo 'driver is cgroupfs'
driver is cgroupfs
+ export criDriver=cgroupfs
+ criDriver=cgroupfs
* Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
* Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
* Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
kernel.kptr_restrict = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
* Applying /etc/sysctl.d/99-kubernetes-cri.conf ...
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
* Applying /etc/sysctl.d/99-sysctl.conf ...
vm.swappiness = 0
net.core.somaxconn = 1024
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.all.forwarding = 1
* Applying /etc/sysctl.d/k8s.conf ...
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.conf.all.rp_filter = 0
* Applying /etc/sysctl.conf ...
vm.swappiness = 0
net.core.somaxconn = 1024
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.ip_forward = 1
Failed to execute operation: File exists), error(Process exited with status 1)
Usage:
  sealer apply [flags]

Examples:
sealer apply -f Clusterfile

Flags:
  -f, --Clusterfile string   apply a kubernetes cluster (default "Clusterfile")
  -h, --help                 help for apply

Global Flags:
      --config string   config file (default is $HOME/.sealer.json)
  -d, --debug           turn on debug mode

mount rootfs failed exec init.sh failed failed to execute command(Device1=vdb2 Device2=vdb3 && cd /var/lib/sealer/data/default-kubernetes-cluster/rootfs  && chmod +x scripts/* && cd scripts && bash init.sh) on host(<IP_ADDRESS>): output(+ storage=/var/lib/docker
+ mkdir -p /var/lib/docker
+ command_exists docker
+ command -v docker
+ systemctl daemon-reload
+ systemctl restart docker.service
++ docker info
++ grep Cg
+ cgroupDriver=' Cgroup Driver: cgroupfs'
+ driver=cgroupfs
+ echo 'driver is cgroupfs'
driver is cgroupfs
+ export criDriver=cgroupfs
+ criDriver=cgroupfs
* Applying /usr/lib/sysctl.d/00-system.conf ...
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
* Applying /usr/lib/sysctl.d/10-default-yama-scope.conf ...
kernel.yama.ptrace_scope = 0
* Applying /usr/lib/sysctl.d/50-default.conf ...
kernel.sysrq = 16
kernel.core_uses_pid = 1
kernel.kptr_restrict = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.all.promote_secondaries = 1
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
* Applying /etc/sysctl.d/99-kubernetes-cri.conf ...
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
* Applying /etc/sysctl.d/99-sysctl.conf ...
vm.swappiness = 0
net.core.somaxconn = 1024
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.all.forwarding = 1
* Applying /etc/sysctl.d/k8s.conf ...
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.conf.all.rp_filter = 0
* Applying /etc/sysctl.conf ...
vm.swappiness = 0
net.core.somaxconn = 1024
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.ip_forward = 1
Failed to execute operation: File exists), error(Process exited with status 1)

Environment:

sealer version (use sealer version): 0.6.1
Cloud provider or hardware configuration:
OS (e.g: cat /etc/os-release): CentOS Linux release 7.8.2003 (Core)
Kernel (e.g. uname -a):
Install tools:
Others:

@27149chen , please clean kubelet service file of your host . run cmd find / - name kubelet* and delete them all.

@kakaZhou719 clean the kubelet works. We should have a nicer error log or overwrite the old kubelet bin file.


merge from develop to nces branch

Why do not you create a new branch from development ?

Why do not you create a new branch from development ?

I forgot to pull from develop before create the new branch. As a result, the new branch is 4 commits late. I guess I can merge it myself, or?


Updates and Improvements

This PR updates k8s version to 1.18.3, calico to 3.13.1, metallb to 0.9.3.
I also added more options in the vars file as well as removing the need for an ssh agent to deploy the cluster. Terraform will now create a pem key that gets deleted when the cluster is destroyed.
I also updated the syntax to follow terraform 0.12 which gets rid of the warnings.

@pereztr5 Just push a tiny change to the variables file for consistent spacing :D
Feel free to merge now. I have tested my repo and it works well.


Codecov

https://github.ibm.com/IBMPrivateCloud/roadmap/issues/31850
It should work after env CODECOV_REPOTOKEN is set correctly in test-infra.

We need to authorize required permissions to codecov.io to get upload token, still waiting the IBM Organ owner for the approval.

/lgtm
/approve


Add support for ASAN builds on Mac

Add the sanitize address to the link command.


installing from the "github releases" gives the "No content meta found error"

the nsp made using the decrypt.py method fails to install
No content meta error

Oh my god. It was failing because the .bin file downloaded incorrectly. For some reason it stopped at 256 mb.....


more test updates, deprecating no-longer-used tactics

Codecov Report

Merging #9 (237a223) into main (b3109d1) will increase coverage by 3.62%.
The diff coverage is 95.23%.

@@            Coverage Diff             @@
##             main       #9      +/-   ##
==========================================
+ Coverage   73.06%   76.68%   +3.62%
==========================================
  Files           6        6
  Lines        1407     1381      -26
==========================================
+ Hits         1028     1059      +31
+ Misses        379      322      -57

Impacted Files
Coverage Δ

micro21cm/inference.py
62.10% <87.50%> (+6.58%)
:arrow_up:

micro21cm/box.py
86.74% <100.00%> (+7.09%)
:arrow_up:

Continue to review full report at Codecov.

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


Archive dockerfile in both Jenkins and Artifiactory

fixes: https://github.com/adoptium/aqa-tests/issues/4248
Signed-off-by: Lan Xia<EMAIL_ADDRESS>

internal/Grinder:

https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/6337/


Audio.Delay not working

I have an issue about Vlc.DotNet.
Generic information

Vlc.DotNet version : 3.0.0
Vlc.DotNet project used : WinForms & Core
libvlc version : 3.0.8 x86 acquired via the official FTP site
.net version : 4.6.1
Project language : C#
Project build architecture : x86
Operating system : Windows x64

Summary
I am building a Windows Form App in Visual Studio, using Vlc.DotNet.Forms.
When attempting to set audio delay via vlcControl.Audio.Delay, nothing happens and the audio plays with no delay.
The relevant code follows:
public void PlayMedia()
{
  vlcControl1.Audio.Delay = 1000;
  vlcControl1.Play();
}

The loaded media plays, but with no delay in the audio.

[ X ] I confirm that my issue doesn't happen in VLC itself.

Sorry, I totally forgot your issue. do you have any logs to share?

No problem. No I don't have any logs, since it didn't raise any exceptions or warnings.
Is there a way to enable verbose logging for VLC.NET? Or maybe I'm missing a log it already is generating?

Yes, there is a way
https://github.com/ZeBobo5/Vlc.DotNet/wiki/Getting-started#how-to-debug

I just read the documentation about the underlying method:
https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc__audio.html#ga8e2d21265f597723e978d325cab285b5
The values there are expressed in microseconds, so 1 ms would probably not be significant enough.
Would you mind trying with bigger values?

Assuming the issue has been fixed by now. Closing.

Assuming the issue has been fixed by now. Closing.


[DEV] - Add tests to the  Docker images

A CI/CD workflow should test the images after the build and before pushing.
Tasks

[ ] Identify and add common tests (for all images)
[ ] Identify and add any image specific tests
[ ] Add step to GH action workflow

https://github.com/jupyter/docker-stacks/tree/main/tests

Also explore - https://github.com/NVIDIA/container-canary

Work in progress finished setting up the workflow ecosystem, currently:

Writing the docker wrapper to interact with the built images and execute the pytest scripts
Writing specialized tests for each image
Will need to rebase to sync with main

I am mostly following the workflow structure defined on jupyter/docker-stacks, right now I've set the workflow ecosystem and was working on setting pytest-docker to run the pytest scripts in the image containers.


Fix to ica.plot_sources.

The ref_meg channels are no longer shown. Issue https://github.com/mne-tools/mne-python/issues/2509

thanks @jaeilepp !


Session -> In Error -> Search filter

The search filter is not looking for the value in the "Error" column.

As discussed above


Add CI for Windows 64 Bit

Builds PR and commit binaries
Automatically create releases

Requires PR 114 to be merged first.
Sample runs:
https://github.com/illusion0001/trdrop/actions/runs/1642519862
https://github.com/illusion0001/trdrop/releases/tag/19e7dcc

This is the best work by far, I hope I can reuse this for the v2 almost step-by-step.


PR: Create conda-based application installer for macOS

Description of Changes
Creates installers for conda-based standalone applications for macOS, Windows, and Linux.
The installers created by this PR are experimental, at least until the release of Spyder 6.0. They will be produced in addition to the existing macOS and Windows installers.
Given the experimental nature of these installers, any changes required in Spyder's core source code will be made in a separate branch, and a patch supplied in this PR. In this way, no changes will be made to Spyder's core source code by this PR; the patch is applied to Spyder's conda package built for this installer only. There will be no affect on Spyder's conda package uploaded to conda-forge, nor it existing macOS or Windows installers.
The objectives of this PR are:

[x] Create a viable condo-based macOS installer
[ ] Establish baseline GitHub workflow that does not block merging.

The Linux and Windows installers will come in follow-up PRs. A non-blocking workflow action will permit continued development on the experimental installers without blocking other pull requests.
At present, this package installer only works on x86 architecture. A subsequent PR will add arm64 to the matrix workflow.
Issue(s) Resolved

Partially fixes #18870
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: @mrclary

So, I'm having trouble building the python-lsp-server conda package from the local external-deps source. So, TL;DR, setuptools-scm is unable to detect the version since the source code directory is not a fully intact git repository.
Error
  Traceback (most recent call last):
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>
      main()
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 164, in prepare_metadata_for_build_wheel
      return hook(metadata_directory, config_settings)
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/build_meta.py", line 377, in prepare_metadata_for_build_wheel
      self.run_setup()
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/build_meta.py", line 335, in run_setup
      exec(code, locals())
    File "<string>", line 9, in <module>
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/__init__.py", line 87, in setup
      return distutils.core.setup(**attrs)
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 147, in setup
      _setup_distribution = dist = klass(attrs)
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/dist.py", line 476, in __init__
      _Distribution.__init__(
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 280, in __init__
      self.finalize_options()
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools/dist.py", line 900, in finalize_options
      ep(self)
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools_scm/integration.py", line 123, in infer_version
      _assign_version(dist, config)
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools_scm/integration.py", line 62, in _assign_version
      _version_missing(config)
    File "/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/setuptools_scm/__init__.py", line 109, in _version_missing
      raise LookupError(
  LookupError: setuptools-scm was unable to detect version for /Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/work.

  Make sure you're either building from a fully intact git repository or PyPI tarballs. Most other sources (such as GitHub's tarballs, a git checkout without the .git folder) don't contain the necessary metadata and will not work.

  For example, if you're using pip, instead of https://github.com/user/proj/archive/master.zip use git+https://github.com/user/proj.git#egg=proj
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: /Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/bin/python /Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpthdb46ws
  cwd: /Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/work
  Preparing metadata (pyproject.toml): finished with status 'error'
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
Exception information:
Traceback (most recent call last):
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/operations/build/metadata.py", line 35, in generate_metadata
    distinfo_dir = backend.prepare_metadata_for_build_wheel(metadata_dir)
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/utils/misc.py", line 706, in prepare_metadata_for_build_wheel
    return super().prepare_metadata_for_build_wheel(
  File "$PREFIX/lib/python3.10/site-packages/pip/_vendor/pep517/wrappers.py", line 188, in prepare_metadata_for_build_wheel
    return self._call_hook('prepare_metadata_for_build_wheel', {
  File "$PREFIX/lib/python3.10/site-packages/pip/_vendor/pep517/wrappers.py", line 322, in _call_hook
    self._subprocess_runner(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/utils/subprocess.py", line 252, in runner
    call_subprocess(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess
    raise error
pip._internal.exceptions.InstallationSubprocessError: Preparing metadata (pyproject.toml) exited with 1

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/cli/base_command.py", line 167, in exc_logging_wrapper
    status = run_func(*args)
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/cli/req_command.py", line 247, in wrapper
    return func(self, options, args)
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/commands/install.py", line 369, in run
    requirement_set = resolver.resolve(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 73, in resolve
    collected = self.factory.collect_root_requirements(root_reqs)
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 491, in collect_root_requirements
    req = self._make_requirement_from_install_req(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 453, in _make_requirement_from_install_req
    cand = self._make_candidate_from_link(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 206, in _make_candidate_from_link
    self._link_candidate_cache[link] = LinkCandidate(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 297, in __init__
    super().__init__(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 162, in __init__
    self.dist = self._prepare()
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 231, in _prepare
    dist = self._prepare_distribution()
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 308, in _prepare_distribution
    return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 438, in prepare_linked_requirement
    return self._prepare_linked_requirement(req, parallel_builds)
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 524, in _prepare_linked_requirement
    dist = _get_prepared_distribution(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 68, in _get_prepared_distribution
    abstract_dist.prepare_distribution_metadata(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/distributions/sdist.py", line 61, in prepare_distribution_metadata
    self.req.prepare_metadata()
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/req/req_install.py", line 533, in prepare_metadata
    self.metadata_directory = generate_metadata(
  File "$PREFIX/lib/python3.10/site-packages/pip/_internal/operations/build/metadata.py", line 37, in generate_metadata
    raise MetadataGenerationFailed(package_details=details) from error
pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed
Removed file://$SRC_DIR from build tracker '/private/tmp/pip-build-tracker-4g4fih3v'
Removed build tracker: '/private/tmp/pip-build-tracker-4g4fih3v'
Traceback (most recent call last):
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/bin/conda-mambabuild", line 10, in <module>
    sys.exit(main())
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/boa/cli/mambabuild.py", line 239, in main
    call_conda_build(action, config)
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/boa/cli/mambabuild.py", line 211, in call_conda_build
    result = api.build(
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/conda_build/api.py", line 186, in build
    return build_tree(
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/conda_build/build.py", line 3091, in build_tree
    packages_from_this = build(metadata, stats,
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/conda_build/build.py", line 2214, in build
    utils.check_call_env(cmd, env=env, rewrite_stdout_env=rewrite_env,
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/conda_build/utils.py", line 412, in check_call_env
    return _func_defaulting_env_to_os_environ('call', *popenargs, **kwargs)
  File "/Users/rclary/opt/mambaforge/envs/spy-inst/lib/python3.9/site-packages/conda_build/utils.py", line 392, in _func_defaulting_env_to_os_environ
    raise subprocess.CalledProcessError(proc.returncode, _args)
subprocess.CalledProcessError: Command '['/bin/bash', '-o', 'errexit', '/Users/rclary/opt/mambaforge/envs/spy-inst/conda-bld/python-lsp-server_1663626470544/work/conda_build.sh']' returned non-zero exit status 1.

Using the meta.yaml recipe file from conda-forge/python-lsp-server-feedstock as the template, and only replacing the source, I have the following success/failure:

failure: source set to the path of external-deps/python-lsp-server
success: source set to the path of my local clone of python-lsp-server
success: source set to the path of external-deps/python-lsp-server and .git from local clone copied to external-deps subrepo
success: source set to the path of external-deps/python-lsp-server and PKG_INFO (from PyPi distribution)  copied to external-deps subrepo

I do not have any issues building conda packages from any of the other external-deps subrepos, with similar adaptation to their respective feedstock recipe files. I guess they don't use the setuptools-scm mechanisms.
The question, then, is how best to proceed? Is there a way to make conda-build work with local subrepos in a robust way? I don't see a way to make this work and the only way forward that I can see is to provide a fully intact local git repository. Providing the Github repo url is convenient, since it doesn't change, but it won't have developer changes, so it's useless for the developer build. A local repository will have the developer's changes, but could be anywhere so it must be another parameter; similarly, a forked github repo will have developer changes, but must be another parameter. This seems particularly obnoxious to me since the all the changes and information is right there in the subrepo, but setuptools-scm doesn't like it.
@spyder-ide/core-developers if you have any suggestions or further insight, I'd appreciate it.
meta.yaml
{% set name = "python-lsp-server" %}
{% set version = "1.5.0" %}

package:
  name: {{ name|lower }}
  version: {{ version }}

source:
  - path: /Users/rclary/Documents/Repos/Spyder-IDE/spyder/external-deps/python-lsp-server

build:
  number: 0
  noarch: python
  script: {{ PYTHON }} -m pip install . --no-deps -vv
  entry_points:
    - pylsp = pylsp.__main__:main

requirements:
  host:
    - python >=3.7
    - pip
    # Needed at build time to produce a package with the correct version for pip
    # See https://github.com/pypa/setuptools_scm/issues/636#issuecomment-1026435048
    - setuptools_scm
  run:
    - autopep8 >=1.6.0,<1.7.0
    - flake8 >=4.0.0,<4.1.0
    - jedi >=0.17.2,<0.19
    - mccabe >=0.6.0,<0.7.0
    - pluggy >=1.0.0
    - python-lsp-jsonrpc >=1.0.0
    - pycodestyle >=2.8.0,<2.9.0
    - pydocstyle >=2.0.0
    - pyflakes >=2.4.0,<2.5.0
    - pylint >=2.5.0
    - python >=3.7
    - rope >=0.10.5
    - setuptools >=39.0.0
    - ujson >=3.0
    - whatthepatch
    - yapf

about:
  home: https://github.com/python-lsp/python-lsp-server
  license: MIT
  license_family: MIT
  license_file: LICENSE
  summary: An implementation of the Language Server Protocol for Python
  description: |
    A Python 3.7+ implementation of the Language Server Protocol
    making use of Jedi, pycodestyle, Pyflakes and YAPF.
  dev_url: https://github.com/python-lsp/python-lsp-server

extra:
  recipe-maintainers:
    - ccordoba12
    - andfoy
    - steff456

Not sure, but checking seems like there is a way to setup a version value via the environment variable SETUPTOOLS_SCM_PRETEND_VERSION: https://github.com/pypa/setuptools_scm/#environment-variables Maybe that could help? Also, an example of the usage here: https://github.com/deltachat/deltachat-core-rust/blob/8ab3415c5803c7826245d3eca085b873ece38895/python/tests/package_wheels.py

@mrclary, you can set env vars in conda recipes, so you probably need to modify the PyLSP one in conda-forge to add the env var mentioned by @dalthviz.

@dalthviz @ccordoba12, That was a good idea; unfortunately, I still get the same error.
I tried setting the environment variable in the shell environment as well as in meta.yaml without affect.
I think the best solution I've come with so far is to just git init the external deps directories and later remove the .git directory.

Ok, that's a good idea too.

See, e.g., conda-forge/twine-feedstock#52 ; did you add the correct versions of setuptools and setuptools_scm as build-time deps in the recipe? At least in my testing, I was able to get everything working just doing that, without having to set SETUPTOOLS_SCM_PRETEND_VERSION (though at least on CF, that didn't work either until I added the build-time deps).

See, e.g., conda-forge/twine-feedstock#52 ; did you add the correct versions of setuptools and setuptools_scm as host deps in the recipe?
The recipe only specifies setuptools-scm without constraint in the host directive. It looks like the following are installed during the build:

setuptools:         65.3.0-pyhd8ed1ab_1       conda-forge
setuptools-scm:     7.0.5-pyhd8ed1ab_0        conda-forge
setuptools_scm:     7.0.5-hd8ed1ab_0          conda-forge

Nevertheless, adding the constraints does not affect anything.

At least in my testing, I was able to get everything working just doing that

You changed the source: from url: <blah blah> to path: <path to python-lsp-server subrepo> and it worked?

without having to set SETUPTOOLS_SCM_PRETEND_VERSION (though at least on CF, that didn't work either until I added the build-time deps).

I've set this environment variable without affect, although I don't know what the parenthetical statement means.

Sorry for the confusion, I didn't read carefully, and rather just noticed that setuptools_scm wasn't in the host dep list of the meta.ymls in this PR, without actually seeing that you were using the meta.yml from CF for python-lsp-server, which does have it and works.
Basically, what seems to be happening is since unlike git subodule, git subrepo is not a standard Git feature and the subrepo is not itself a valid git repo with a .git directory inside that directory, setuptools_scm naturally can't find the version that way. Unfortunately, after a big of digging, I can't find an obvious way to extract this metadata in a standard form, aside from just cloning the commit specified in the .gitrepo config file and then pasting in the working dir on top of it.
As you discovered, it still works with sdists (like on Conda Forge) because evidently setuptools_scm also looks for the version in the (not actually standardized) PKG-INFO metadata at the root of the unpacked sdist, i.e. the current directory in that workflow, but that of course isn't isn't the case here—though we could write one that just contains Version: X.Y.Z.dev0 or something, which of course we'd itself have to get from somewhere.
There's also SETUPTOOLS_SCM_PRETEND_VERSION which again requires getting the version from somewhere else, but setting that env variable doesn't work because of PEP 517 build isolation, as it does not get propagated to the build environment. You might be able to add --no-build-isolation to the pip invocation and it should pass though, assuming there isn't another issue with it—though again, that's not ideal, though perhaps the least annoying and perhaps there's a better way to do that.

To recap from our meeting, you can get the version that setuptools_scm would generate by installing setuptools_scm in your local Python environment, via pipx or another method, and running python -m setuptools_scm, which should print the version string to stdout. You can run python -m setuptoosl_scm --help to see other options, if needed.

@spyder-ide/core-developers, the first successful build artifact for macOS is now up.
https://github.com/spyder-ide/spyder/suites/8445398065/artifacts/374430312
Please test at your leisure and let me know what you think and what issues you find.
Note that the package installer is note notarized, so you will have to make two attempts to open it; the second attempt must be a right-click->open in order to circumvent gatekeeper. Release versions will be notarized (so look for 5.4.0 soon), but this installer will remain experimental at least until 6.0.
@CAM-Gerlach, thanks for pointing me to setuptools_scm; that works much better than my previous paradigm. Additionally, I was able to do a shallow clone using --shallow-exclude='v1.4.1'. The caveat here is that the 2nd-to-latest version must be specified since it excludes that commit as well as prior history and scm will require at least one tag to reference (in this case v1.5.0).

Please rebase to get the fixes to our tests in PR #19564.

@mrclary just in case I did a quick check installing the .pkg and seems like I'm getting an error about applaunchservices when launching the application that gets created at the user Applications directory (I think that is the one that the installer creates righ?):

Traceback (most recent call last):
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 579, in _build_master
    ws.require(__requires__)
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 897, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 788, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (applaunchservices 0.2.1 (/Users/daniel/opt/anaconda3/lib/python3.9/site-packages), Requirement.parse('applaunchservices>=0.3.0'), {'spyder'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/daniel/opt/anaconda3/bin/spyder", line 33, in <module>
    sys.exit(load_entry_point('spyder', 'gui_scripts', 'spyder')())
  File "/Users/daniel/opt/anaconda3/bin/spyder", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/Users/daniel/opt/anaconda3/lib/python3.9/importlib/metadata.py", line 86, in load
    module = import_module(match.group('module'))
  File "/Users/daniel/opt/anaconda3/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/Users/daniel/Desktop/spyder_otros/carlos/spyder/spyder/app/start.py", line 55, in <module>
    from spyder.utils.external import lockfile
  File "/Users/daniel/Desktop/spyder_otros/carlos/spyder/spyder/utils/external/lockfile.py", line 31, in <module>
    from spyder.utils.programs import is_spyder_process
  File "/Users/daniel/Desktop/spyder_otros/carlos/spyder/spyder/utils/programs.py", line 28, in <module>
    import pkg_resources
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3247, in <module>
    def _initialize_master_working_set():
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3221, in _call_aside
    f(*args, **kwargs)
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3259, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 581, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 594, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/Users/daniel/opt/anaconda3/lib/python3.9/site-packages/pkg_resources/__init__.py", line 783, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'applaunchservices>=0.3.0' distribution was not found and is required by spyder

However, if I use Anaconda Navigator from my conda installation, I can access the underline env (that I think the installer creates) and I'm able to launch Spyder:

Also, I did the installation having already the other MacOS standalone installer, is okay if a have both version installed at the same time?

The traceback suggests that spyder was launched from your anaconda installation. The package installer did indeed create the environment spyder-5.3.4.dev98; this should be located at ~/Library/spyder-5.3.4.dev98/envs/spyder-5.3.4.dev98 or /Library/spyder-5.3.4.dev98/envs/spyder-5.3.4.dev98. I think it's interesting that Anaconda Navigator found it.

Also, I did the installation having already the other MacOS standalone installer, is okay if a have both version installed at the same time?

If they are in different locations, yes. If not, the new one may have clobbered or mangled the old one.
Can you double-check a few things for me?

Where did you have the original Spyder.app? ~/Applications or /Applications?
When you ran the new installer, did you select "Install for me only" or "Install on a specific disk..."? The former should place the root environment in ~/Library and the application bundle in ~/Applications. The latter in /Library and /Applications, respectively.
If the installer put the application bundle in the same location as your original Spyder.app, did it replace it? The original Spyder.app should be ~1GB, the new Spyder.app should be ~70kB.
How did you launch the new application? If the installer put Spyder.app in a different location than your original, or if it completely clobbered the original Spyder.app, you should be able to launch it by double-clicking in the Finder. If it unsuccessfully clobbered the original, it may have mangled it; I'm not sure what would happen.

Okay, I was able to reproduce @dalthviz error on my machine.
Note that to start Spyder.app from the command line, some environment variables specified in the Info.plist need to be specified on the command line as well.
$ PREFIX=<PREFIX> ROOT_PREFIX=<ROOT_PREFIX> SPYDER_APP=<SPYDER_APP> ~/Applications/Spyder.app/Contents/MacOS/Spyder

This results in the following error:
/Users/rclary/Applications/Spyder.app/Contents/MacOS/Spyder: ?&?F?
??"??)@?Ć'?A??bmlocation has changed!

Clearly this is an issue with the pre-compiled binary executable.
In order to resolve the PermissionError issue (accessing user's Documents, Desktop, and Download directories), the application bundle should be a compiled binary rather than a shell script. I'm working with @jaimergp to resolve this (see napari/napari#5097). My ad-hoc solution was to compile the shell script using shc. This works when compiled on my local machine, but clearly did not work for redistribution.

@dalthviz, was able to fix the issue from the previous comment. At your convenience, you may test the latest artifact: https://github.com/spyder-ide/spyder/suites/8618423726/artifacts/386781999

It appears that the post-install script did not run properly. This explains the missing environment variables in the Info.plist and all the other behavior that you see. I'm not sure exactly why it closes after launching, but probably because SPYDER_APP is not set. Nevertheless, the missing dependencies issue is directly related to the PermissionError, which is directly related to the launch script not being a binary. The launch script does not require the environment variables in Info.plist, but the binary executable does.

Can you send me the install.log? Open Console.app and locate the install.log and attach it to a comment here.

It looks like the environment was installed in /Library instead of /Users/daniel/Library. Can you confirm where the environment was installed?
Can you check that the binary executable exists? /Users/daniel/Library/spyder-5.3.4.dev118/envs/spyder-5.3.4.dev118/Menu/Spyder. If it exists, and if you would like to try it, you may:

Copy it to ~/Applications/Spyder.app/Contents/MacOS/Spyder, replacing the existing Spyder shell script
Update ~/Applications/Spyder.app/Contents/Info.plist to read (just adding variables):    <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleDisplayName</key>
    <string>Spyder</string>
    <key>CFBundleExecutable</key>
    <string>Spyder</string>
    <key>CFBundleGetInfoString</key>
    <string>Spyder-5.3.4.dev118</string>
    <key>CFBundleIconFile</key>
    <string>spyder.icns</string>
    <key>CFBundleIdentifier</key>
    <string>org.spyder-ide.Spyder</string>
    <key>CFBundleName</key>
    <string>Spyder</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>5.3.4.dev118</string>
    <key>CFBundleVersion</key>
    <string>5.3.4.dev118</string>
    <key>LSEnvironment</key>
    <dict>
        <key>PREFIX</key>
        <string>/Users/daniel/Library/spyder-5.3.4.dev118/envs/spyder-5.3.4.dev118</string>
        <key>ROOT_PREFIX</key>
        <string>/Users/daniel/Library/spyder-5.3.4.dev118</string>
        <key>SPYDER_APP</key>
        <string>/Users/daniel/Applications/Spyder.app</string>
    </dict>
</dict>
</plist>

@dalthviz, out of curiosity, does your macOS VM have /usr/libexec/PlistBuddy? I hope yes. Does it have Xcode command line tools installed? I hope not; this will help test for generic systems.

does your macOS VM have /usr/libexec/PlistBuddy?
I think so I can do /usr/libexec/PlistBuddy --help and get information about commands to use with it :+1:

Does it have Xcode command line tools installed?

I think they are installed. Runned xcode-select -p and it returned /Library/Developer/CommandLineTools

Can you send me the install.log?

install.txt

Can you confirm where the environment was installed?

Seems like it was installed at /Library/spyder-5.3.4.dev118. Thinking about that maybe that is way the installer prompted me to put the user password

Can you check that the binary executable exists? /Users/daniel/Library/spyder-5.3.4.dev118/envs/spyder-5.3.4.dev118/Menu/Spyder

Checking the env created at /Library seems like it exists at /Library/spyder-5.3.4.dev118/envs/spyder-5.3.4.dev118/Menu/

@dalthviz, thanks for that info; it is very useful. Here's what I've discovered:

The package installer fails if the root environment already exists
The package installer does not fail if the application bundle already exists. In this case the package installer does not over-write it but the post-install script should still create the python symbolic link, replace the Spyder shell script, and modify the Info.plist.
When installing for all users, the ROOT_PREFIX and PREFIX environment variables have and extra "/"

In a future PR, I will have to address (1). I will need to address (2) and (3) in this PR.
So it seems that your issues are due to (2) and possibly (3). Note that your original application bundle, /Applications/Spyder.app is likely broken and will have to be reinstalled from the DMG.
My recommendation is to:
$ rm -rf /Library/spyder-5.3.4.dev118
$ rm -rf /Users/daniel/Library/spyder-5.3.4*  # if there are any envs installed here
$ rm -rf /Users/daniel/Applications/Spyder.app

and try the package installer again, ensuring to "Install for me only".

Did the test ensuring the selection of Install for me only and seems like the installation is working (cheked launching from Finder, Spotlight and the Dock)! Now I'm not seeing PermissionsError related issues (I was prompted with the dialog to give the application access to manage files, which I think was missing before) so :+1:
Also, checked launching the old dmg installation I had and yes, is now broken. I though the default was to Install for me only but maybe I was wrong (or maybe I changed it without noticing the first time I launched the installer 🤔).
Could that be setup thought? Probably is better to have as default the  Install for me only option.

@ccordoba12 and @dalthviz, I've got both Linux and Windows installers working now also. See https://github.com/mrclary/spyder/actions/runs/3211090787.
I propose expanding the scope of this PR to include all installers, not just for macOS. All three installers will remain experimental, at least until 6.0, as previously discussed. This will also provide further opportunity for feedback and to address issues with the other installers. What do you think?
Note that the current artifacts are not code-signed. I've successfully tested the notarization process for macOS, but not for Windows.

I propose expanding the scope of this PR to include all installers, not just for macOS. All three installers will remain experimental, at least until 6.0, as previously discussed.

I agree with adding the Linux installer, given that we don't have one at the moment. But I'm -1 on adding the Windows one due to the following reasons:

All improvements related to the the Numfocus grant are planned for the current installer, so there wouldn't be a real gain for users with the new one.
It'd introduce confusion among our Windows users because, even if the installer would be labeled as experimental, I'm sure people would download and try it, and ask what's the deal with it.
It's also important to note that this installer is now the most popular way to install Spyder on Windows, so we need to make the way users interact with it as simple as possible.

I propose expanding the scope of this PR to include all installers, not just for macOS. All three installers will remain experimental, at least until 6.0, as previously discussed.

I agree with adding the Linux installer, given that we don't have one at the moment. But I'm -1 on adding the Windows one due to the following reasons:

All improvements related to the the Numfocus grant are planned for the current installer, so there wouldn't be a real gain for users with the new one.
It'd introduce confusion among our Windows users because, even if the installer would be labeled as experimental, I'm sure people would download and try it, and ask what's the deal with it.
It's also important to note that this installer is now the most popular way to install Spyder on Windows, so we need to make the way users interact with it as simple as possible.

Delaying the conda-based Windows installer should not be a problem. Since it is nominally working now, whenever we are ready to build it in the future, we will only have to add it to the matrix build in the workflow.

@mrclary could it be possible to build the conda-based installers for all three platforms on PRs but in the release just build the MacOS and Linux one following @ccordoba12 considerations? That will give us some place to start checking the generated Windows installer even if it is not part of an actual release like 5.4.0

@mrclary could it be possible to build the conda-based installers for all three platforms on PRs but in the release just build the MacOS and Linux one following @ccordoba12 considerations? That will give us some place to start checking the generated Windows installer even if it is not part of an actual release like 5.4.0

I don't see why not. Since they are all nominally working, simply adding/removing Windows from the workflow matrix should suffice. We could include only the macOS and Linux installer in this PR, intended for 5.4.0 release. After 5.4.0 is released, simply re-add the Windows installer. For any subsequent release, we can decide to either keep the Windows installer or exclude it.

Just in case, checked the Linux installer script and seems like is working :+1:

Is there something missing here @mrclary @ccordoba12 ? Or is okay if I merge this?

@dalthviz, I'm working on my review right now.

@CAM-Gerlach, do you want to review this PR?

@mrclary, one additional question for you: in the description above you said that this partially fixes issue #18870, I think it actually fixes it in its entirety, right?

Correct

Yay! 🚀

Thank you so much @jaimergp for all the info and help you provided us to move forward this :)


Innacurate initial balances at no-trades live run

I started a Live Trading run, and balances may be showing information from a previous simulation run. See image below... there are no trades, and balanceAssetB should start with 10 USDT.

where the layers auto refreshed?

@julian-molina is this issue still happening?


[NumberBox] Right-click menu appears when tapping on the spinner using touchscreen (in compact mode)

Describe the bug
When a NumberBox is in compact mode a right-click menu appears when selecting it and sometimes blocking the actual buttons.
In my opinion, touching the buttons should only show the up and down spinner. Selecting the textbox should show the right-click menu, not the up and down spinners.
Steps to reproduce the bug

Steps to reproduce the behavior:

Make sure you have a touch screen.
Click on the NumberBox that has Compact mode enabled

Expected behavior
The up and down buttons should appear, not the right click menu.
Screenshots

Version Info
Can be observed in the latest, stable, XAML Controls Gallery app.

Windows 10 version
Saw the problem?

Insider Build (19041.264 (W10 2004 update))
Yes

Device
Surface Laptop 3 (with touchscreen)

That's not actually the right click menu.

Right clicking on it brings up select all.

I tell you what though; the bug is the menu is blocking the Up arrow on that control.

Ah, yes - my bad.
It's blocking, that's for sure. But I also think that no menu should pop-up whenever tapping the spinner buttons. Only when the text gets selected. It's distracting and unintentional.

Ah, yes - my bad.
It's blocking, that's for sure. But I also think that no menu should pop-up whenever tapping the spinner buttons. Only when the text gets selected. It's distracting and unintentional.

That's the problem: it's being selected on first click.

It looks like the text gets selected when tapping on the spinner and that causes the floatie to show up. Perhaps the text should not get selected when tapping the spinner.

One tap to activate spinner, another tap to bring up the floatie.


allow astral characters

According to YAML 1.2 spec, section 5.1, unicode range #x10000-#x10FFFF is considered printable characters.
However, parser excludes those characters trying to validate for #xD800-#xDFFF. This is fixed in this PR, so well-formed surrogate pairs pass validation, but lone surrogates don't.
It is still not a standard-compliant solution, because YAML seems to allow non-printables in quoted scalars for JSON compatibility, so validating the entire source code against non-printable regexp doesn't work well enough. I added a pending test case for this, suggesting to open another issue ticket about it.

What's about performance of this?

That will be reworked. Wait.

@dervus, less than ideal probably. I'll try to speed that regexp up. But it is meant to be a temporary solution, because checking non-printables before parsing doesn't really work well (see the point about JSON compatibility, I'll create a separate ticket for it though).

@puzrin , I created tickets #191, #192 to track those two issues mentioned above

Joined both regexps into one.
If I didn't screw up, this could even be considered a performance improvement:
alex@y:/tmp/js-yaml/benchmark$ git checkout 3b92d922b^
HEAD is now at ad21884... Merge pull request #186 from preciousforever/improvement-custom_types-example
alex@y:/tmp/js-yaml/benchmark$ ./benchmark.js nodeca
Selected samples: (3 of 12)
 > document_nodeca_application
 > document_nodeca_database
 > document_nodeca_logger

Sample: document_nodeca_application.yaml (2055 characters)
 > current x 12,101 ops/sec ±0.57% (92 runs sampled)

Sample: document_nodeca_database.yaml (394 characters)
 > current x 39,270 ops/sec ±0.45% (96 runs sampled)

Sample: document_nodeca_logger.yaml (727 characters)
 > current x 9,787 ops/sec ±0.63% (97 runs sampled)

alex@y:/tmp/js-yaml/benchmark$ git checkout 3b92d922b
HEAD is now at 3b92d92... Process astral characters correctly
alex@y:/tmp/js-yaml/benchmark$ ./benchmark.js nodeca
Selected samples: (3 of 12)
 > document_nodeca_application
 > document_nodeca_database
 > document_nodeca_logger

Sample: document_nodeca_application.yaml (2055 characters)
 > current x 12,389 ops/sec ±1.22% (93 runs sampled)

Sample: document_nodeca_database.yaml (394 characters)
 > current x 40,647 ops/sec ±0.17% (99 runs sampled)

Sample: document_nodeca_logger.yaml (727 characters)
 > current x 12,859 ops/sec ±0.87% (98 runs sampled)

OK, so is it ready to merge now?


rename conversations

add rename conversations feature
"prettier" formatting

Can I get a confirmation on what this adds?
Renaming conversations works as is.
This seems to just be a different implementation?

No worries! Thanks for helping clarify!


Improving error messages when server name provided is not present …

…and when ip address mentioned  is invalid one

Adding some extra verbose logs
refactoring to avoid dependency on agent

checking in after review in codeflow


Dismount height

I see in the change log for 10.8 that you added dismount_height option to RideEntity and MountArmorStand.
where or how do I change the option?

What are you trying to do?

I like the change but I was hoping to increase the height by just a few more blocks, thought it was a changeable config setting.


[DEV] add language drop down to header

design issue: https://github.com/participedia/api/issues/778#issuecomment-554568734

Thanks for creating this issue @ascott! Do you think for small mobile screens we just keep the drop down in the footer? Ie: my iPhone se screen won’t have space for the Lang drop down in addition to the login button. We could also consider adding it to the hamburger menu. Thoughts?

@jesicarson i think that it makes sense to hide it in the header on small screens, and i think just leaving it in the footer for small screens will work well.


pi crashes for small u32 inputs due to subtraction overflow

I added these tests to my lib.rs:
#[test]
fn primepi_small_u32() {
    for i in (1u32..9) {
        i.pi();
    }
    assert_eq!(9u32.pi(), 4);
}
#[test]
fn primepi_ok_u32() {
    assert_eq!(9u32.pi(), 4);
}

The console output says
thread 'primepi_small_u32' panicked at 'attempt to subtract with overflow'

and points to the file sieve.rs:2:18

Temporarily fixed by treeing it down to 16-bit evaluation. Currently there are a fair amount of issues with handling very small integers as I haven't finished optimizing and treeing down the evaluations for very small integers. (Usually 0 and 1 are the failure points {due to definition of the factor function}, so watch out). I'll be working on this in the next week so most of those issues will be resolved.


Remove duplicate managed-by labels

https://github.com/iterative/helm-charts/blob/9d37015e63dd4fdb1698517eb226cbb4562bee87/charts/studio/templates/_helpers.tpl#L43

@iterative/platform, YOLO-merging this one because it’s a big bug; I have moved the other change, subject to human considerations, to a separate pull request.

Thanks! Looks good :+1:
Since it was a time-sensitive, critical bug, I have no objections to the force merge

Thank you!

For the record, this was the error message, when running make skaffold-dev
Error: INSTALLATION FAILED: error while running post render on files: error while running command /usr/local/bin/skaffold. error output:
reading Kubernetes YAML: yaml: unmarshal errors:
  line 12: mapping key "app.kubernetes.io/managed-by" already defined at line 11
exit status 1

<EMAIL_ADDRESS>UnmarshalStrict is like Unmarshal except that any fields that are found in the data that do not have corresponding struct members, or mapping keys that are duplicates, will result in an error


Unexpected route/middleware execution order

Example:
mux := goji.NewMux()
mux.UseC(middlewareThatChangesRequestPostToPut)
mux.HandleC(pat.Put("/somepath"), someHandler)

I was surprised to find that writing middleware to change the request.Method from POST to PUT would not effect the route pattern matcher on line 3. Looking at the source comments, it seems that routes are parsed before middleware is run. Is there a reason for that?
To get this to work properly, I'll need to wrap the mux itself...
mux := goji.NewMux()
mux.HandleC(pat.Put("/somepath"), someHandler)

http.Handle("/", middlewareThatChangesRequestPostToPut(mux))

As middleware is added to the mux, I think the natural assumption is that it is going to affect all middleware and handlers lower in the stack. Is there any interest in having this changed?

This is expected and documented behavior: https://godoc.org/goji.io#Mux.Use

Middleware in Goji is called after routing has been performed. Therefore it is possible to examine any routing information placed into the context by Patterns, or to view or modify the Handler that will be routed to. Middleware authors should read the documentation for the "middleware" subpackage for more information about how this is done.

For historical context, the previous version of goji (zenazn/goji) did things the other way around (middleware first and routing after), and in practice people found that behavior more confusing, since they expected routing information (i.e., the matched pattern and handler) to be available in the middleware stack. The current design lacks an official way to express pre-routing middleware, but as you've discovered it's pretty easy to do that yourself (another common technique is to create a dummy Mux with a single catch-all route, and to register pre-routing middleware on the dummy Mux).
I've definitely thought about trying to do something fancier like you suggest, but every proposal I've come up with seems to introduce hard-to-document ordering dependencies, which feels brittle to me. It's possible there's an easy design fix here, but I don't know what it is, and in my use of Goji it rarely comes up anyways.

@zenazn Thanks for getting back.
Actually, I think that Goji is slightly more complex than it needs to be. Rather than providing users with a Mux, which wraps routing endpoints with middleware (complex), why not just provide users with a simple middleware stack? For example:
stack := goji.NewStack()
stack.Use(mymiddleware1) //<-- runs first
stack.Use(mymiddleware2) //<-- runs second
stack.Use(mymiddleware3) //<-- runs third
... etc

http.Handle("/", stack)

To introduce routing, users can use routing middleware:
stack := goji.NewStack()
stack.Use(mymiddleware1) //<-- runs first
stack.Use(mymiddleware2) //<-- runs second
stack.Use(goji.RouteMiddlware(pat.Get("/mypath"), myhandler)) //<-- runs third
stack.Use(mymiddleware3) //<-- runs forth
stack.Use(goji.RouteMiddlware(pat.Get("/anotherpath"), anotherhandler)) //<-- runs fifth
... etc

http.Handle("/", stack)

...And we can create a convenience method - Route -  to wrap the RouteMiddlware...
stack := goji.NewStack()
stack.Use(mymiddleware1)
stack.Use(mymiddleware2)
stack.Route(pat.Get("/mypath"), myhandler)
stack.Use(mymiddleware3)
stack.Route(pat.Get("/anotherpath"), anotherhandler)
... etc

http.Handle("/", stack)

This imaginary "stack" and the current Goji Mux are nearly identical, except the stack has no surprises or special behaviour. Thoughts?

That's pretty tricky to make run efficiently, unfortunately. And while it's certainly a smaller API, I'm not sure it's actually easier to understand, especially for the common case.
I'd certainly encourage you to try this out, though—goji.RouteMiddlware is easy enough to write on your own, and I'd be curious to hear how nice you find the resulting abstraction.

@zenazn  I'm not sure if I follow. What is the common case?

I think that most people do not require such tight control over execution order, and that most of the use of Goji is for its routing layer (and the improvement there over net/http) and not its middleware stack. For me, this means that Goji should be primarily focused on making routes easy to understand and add, and less focused on making middleware the single core abstraction.

Keep in mind, the middleware as single core abstraction is strictly an internal change. The API stays unchanged for the user. Here is my example from above:
stack := goji.NewStack()
stack.Use(mymiddleware1)
stack.Use(mymiddleware2)
stack.Route(pat.Get("/mypath"), myhandler)
stack.Use(mymiddleware3)
stack.Route(pat.Get("/anotherpath"), anotherhandler)
... etc

http.Handle("/", stack)

And here is the example with methods and structs renamed to idiomatic Go to make things familiar:
mux := goji.NewMux()
mux.Use(mymiddleware1)
mux.Use(mymiddleware2)
mux.Handle(pat.Get("/mypath"), myhandler)
mux.Use(mymiddleware3)
mux.Handle(pat.Get("/anotherpath"), anotherhandler)
... etc

http.Handle("/", mux)

The API is the same.

I think that most people do not require such tight control over execution order,

I would respectfully disagree. Execution order is generally significant, and is best when explicit and un-magical. Goji is generally already programmed this way. When you add middleware to the Mux, they execute in order. And when you add routes to the mux, I would expect that they are evaluated in order (I hope). It is surprising and unintuitive when things don't execute in order, much like go.http is surprising when developers discover that routes don't evaluate in order, but by best match. It's not necessarily incorrect, but it's not intuitive.
Using the example code above, if I make a request GET "/mypath", I expect my execution order to be:
mux.Use(mymiddleware1)  // 1
mux.Use(mymiddleware2)  // 2
mux.Handle(pat.Get("/mypath"), myhandler)  // 3

and not:
mux.Use(mymiddleware1)  // 2
mux.Use(mymiddleware2)  // 3
mux.Handle(pat.Get("/mypath"), myhandler)  // 1

If my middleware adjusts the request object for some reason, this change will need to occur before it hits the router.
If I want middleware to be run after route matching, I'd provide an explicit api similar to nodejs:
mux.Use(mymiddleware1)
mux.Use(mymiddleware2)
mux.Handle(pat.Get("/mypath"), mymiddleware3, mymiddleware4, myhandler)

For historical context, the previous version of goji (zenazn/goji) did things the other way around (middleware first and routing after), and in practice people found that behavior more confusing, since they expected routing information (i.e., the matched pattern and handler) to be available in the middleware stack.

In my experience, these people may have only needed a little assistance creating well encapsulated middleware, rather than an API change.

This issue has been idle for a few months now, so I'm closing it to keep everything tidy. Since you wrote in, I've made a few changes to the public API, which you'll hopefully find simpler and easier to use. But while I'm a big fan of the abstraction of middleware, I'm afraid we're going to have to agree to disagree with how to structure Goji.