parameters_validation_fix

Fixed a regression bug that caused the bind and hostwd parameters to fail validation.

Codecov Report

Merging #109 (28160a4) into main (f7a47e0) will decrease coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #109      +/-   ##
==========================================
- Coverage   96.60%   96.54%   -0.06%
==========================================
  Files          10       10
  Lines        1766     1766
==========================================
- Hits         1706     1705       -1
- Misses         60       61       +1

Flag
Coverage Δ

unittests
96.54% <ø> (-0.06%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

build_magic/actions.py
90.35% <0.00%> (-0.28%)
:arrow_down:

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 f7a47e0...28160a4. Read the comment docs.


Add cake-contrib user on Nuget.org

Great work on getting this Addin created!
Just thought I would add this issue as a reminder that, if possible, it would be great to get the cake-contrib user added as a co-maintainer of the nuget package.  More information about this is detailed here:
http://cakebuild.net/blog/2016/08/cake-contribution-organization
If you have any questions, then please feel free to reach out and we can discuss.
Thanks again!

@tomstaijen thank you for adding the cake-contrib user to your NuGet package! :+1:
I will go ahead and close this issue, but just so I know, are you planning on wanting to move this addin into the cake-contrib organisation, and maintain it there, or would you like to keep it here?
Thanks again!

@gep13 i don't mind moving it to cake-contrib.

@tomstaijen sweet! It isn't a requirement, so only if you want to. But it will give your repo a bit more visibility as well. If you want to go ahead, then if you transfer the repo to my GitHub account, gep13, I can transfer it to the organisation.

@tomstaijen just wanted to follow up to see if this is something that you are interested in doing. Thanks!


Comparing array value to string.

I'm trying to use following function, but it returns always false, because it doesn't find value from the array... Is there something I'm doing wrong or should it work like this?

   // Checks if user language is found from list of available languages.
    public static function isUserLanguageSupported() -> boolean
    {
        // Put supported languages into the array.
        var supportedLang = self::getAvailableLanguages();
        var selectedLang  = self::selectedLang;
        string selected   = "";
        array supports    = [];
        int i             = 0, length;
        let length        = count(supportedLang);
        let supports      = supportedLang;
        let selected      = selectedLang;
        // Check if language exists in the array.
        while i > length {
            if supports[i] == selected {
            return true; // If found, return true.
            }
            let i++;
        }
        throw new \Exception("False returned...");
        return false; // If not, return false.
    }

//////////////////////////////////////////////////////////////
// self::getAvailableLanguages(); Returns following array.
// array (size=2)
//  0 => string 'fi' (length=2)
//  1 => string 'ru' (length=2)
//
// self::selectedLang; Returns following string.
// string 'ru' (length=2)
//

Any ideas? Just doing wrong or bug?

So ìf statements does not work inside while loop?

When using for loop it worked....

        // Check if language exists in the array.
        for key, val in supports
        {
            if val == selected {
                return true;); // Found.
            } else {
                return false; // Not found.
            }
        }


add another assumption of at-avx to the README.md

I encountered an issue when using nested loops with multiple loops at the same level. This comment might help other users of this great package when running into such an issue. Did I understand the comment https://github.com/JuliaSIMD/LoopVectorization.jl/issues/230#issuecomment-810632972 correctly?

Thanks!
Yes, I'll add support for that in the rewrite.
It'll be able to do optimizations like fusing the loops.


Variables-as-artifacts

I have scripts during my build that are responsible for examining the cloned repository and coming up with a semver-based version number.
I'm able to set and use this variable throughout my build, but I'd also like to supply it as a variable for any releases that are created using the output of a successful build.
I can't seem to locate any documentation for functionality like this, so either it's not quite described in terms like what I've used above, isn't documented or isn't a feature yet! 😄

@atrauzzi I don't work in that area but let me see if I can find out the right documentation for you. @andyjlewis Do we document this scenario?

We do support artifact variables in release. Hope this  helps

That's not what I'm talking about. Can you please read my description properly and not scan it for keywords?

@steved0x - This issue needs to be reopened and handled differently.

@atrauzzi  - can you elaborate? are you looking for updating the release names using semver-based naming? or use the artifacts generated by build with as a variable? it is not clear to me.

My original description is more than sufficient, I wish you'd take the time to carefully read it.  The most I can do is add emphasis...
I'm able to set and use [any] variable throughout my build...
So, I've established that I can set variables using the ##vso... syntax.
...but I'd also like to supply [them] as variables for any releases that are created using the output of a successful build.
So, take all existing functionality that I've mentioned so far, and put it to one side.  I'm talking about a facility similar to artifacts.  Except not using files, but by providing variables as outputs from my builds.
Which is why I titled this "Variables-as-artifacts".  Even the title makes it pretty clear.  If my title was "Are there variables during releases?", then your answer would make sense.  But as it pertains to my original description, your response is a complete non-sequitur.
I also think it's very poor form to link to the documentation and slam the close button without giving me a chance to confirm.
Slow down.

Fair feedback on "slowing down". I'm re-opening the issue.
For the query, no, it is not possible to pass custom variables to release from a successful build without persisting it elsewhere.

Awesome, thank you!
(And yes, in the interim, I've created a .env and matching .json file for things down the chain to consume.)
Now, on to dealing with this (unrelated): https://developercommunity.visualstudio.com/content/problem/348304/azure-devops-vsts-cant-create-release-pipeline.html

@alexhomer1 Why was this issue closed? It's not an issue with documentation and I don't know what the developer community hub is.
Being able to use custom build variables in a release is a really basic feature that should be implemented.

The issue was closed because RoopeshNair answered the question and the second additional question was dealt with on the Developer Community hub. Your own suggestion for a feature to be added is fair and reasonable. However bugs, issues, suggestions, and feature requests related to the product rather than the documentation are best posted on the Developer Community website at https://developercommunity.visualstudio.com/spaces/21/index.html, where they are tracked by the product teams. This feedback channel is for updates to the documentation and is not monitored by the development teams.

don't know what the developer community hub is.
Here is the link to developer community, ideas suggested here allows prioritization
https://developercommunity.visualstudio.com/content/idea/post.html?space=21


policylibrary: consolidate privileges raising operations into privileges-raise.yaml single policy

This adds some new api and tracingpolicy types and consolidates some operations into single privileges-raise.yaml Tracing Policy.
We already have the message field and this adds the tags field to categorize events taking inspiration from https://github.com/SigmaHQ/sigma-specification/blob/main/Tags_specification.md
Produced kprobe event:
        ...
        "function_name": "security_capset",
        "args": [
          {
            "process_credentials_arg": {
          {
            "cap_effective_arg": "000001ffffffffff"
          },
          {
            "cap_inheritable_arg": "0000000000000000"
          },
          {
            "cap_permitted_arg": "000001ffffffffff"
          }
        ],
        "return": {
          "int_arg": 0
        },
        "action": "KPROBE_ACTION_POST",
        "policy_name": "privileges-raise",
        "return_action": "KPROBE_ACTION_POST",
        "message": "Process changed its capabilities using capset system call",
        "tags": [
          "observability.process",
          "observability.privilege"
        ]

For further details, please see patches. Doc use case will follow later.

as requested by @jrfastab tags are in their own PR https://github.com/cilium/tetragon/pull/2008

needs a rebase but otherwise lgtm.

ci failure about validate crd is tracked here: https://github.com/cilium/tetragon/issues/2063. The version is updated so merging.


fix: hero image scroll animation

adapt scroll-timeline to latest specs https://drafts.csswg.org/scroll-animations-1/

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Update TOC.yml to include new How-to guide doc

Includes new How-to guide doc "OpenShift in hardened Zero Trust Azure environment" for Azure Gov meetup and beyond. Ask from Zach Kramer on doc. Please add

@bernie-msft can you accept my PR? Adding a doc Zach wanted for OpenShift on MAG

@niralishah130 done for the TOC change. Did you want to include the articles in this PR or only the TOC change?

#hold-off - not ready to merge (the article added to the TOC is not in master)

@bernie-msft We usually assign TOC updates to the content manager, but because you reviewed this as PM, we'll assign it to you for now, OK?

@ktoliver @bernie-msft I am making a few additional changes before merging the doc to master. so we can reverse the changes to TOC for now. Sorry about the confusion. I can re-open this thread when I am ready to merge the doc to master? what do you suggest?

@niralishah130 sounds good. @ktoliver can @niralishah130 just cancel the pull request for now?

Sure, I'll close it #please-close

(Hopefully, that's what you meant by "cancel". Alternatively, you can reopen the PR and, because I added #hold-off, it won't be inadvertently merged before #sign-off is added or the PR is otherwise approved.)

@bernie-msft If by cancel you mean keep the PR open and continue to iterate on it, yes! The #hold-off I added will prevent it from being merged before it's ready. @niralishah130 Carry on. :)

@niralishah130 Checking in on this PR--you are still working on it, is that right? It should be kept open? Thanks.

You can close for now. Thanks

@niralishah130 Thanks.


Add compact density for Toggle button

[x] React

[ ] Design

[ ] Documentation

This is solved in code by compact mode for normal Button

As discussed in meeting with the team, all US on epic compact is closed if they do not have any additional information.


Signed releases

It's incredible to see that the commits to this project are cryptographically signed.
Unfortunately, the releases are not yet.
Please distribute signatures with your releases.  See for example https://wiki.debian.org/Creating signed GitHub releases .

Yep! The last release was quite a bit ago, and was before setting up PGP for the project. Future releases (including the upcoming 0.3.0b1 will all be cryptographically signed, and even optionally distributed through the keybase filesystem.

That's great!


Need more per-HART VS-level IMSICs

Merged. Thanks.
Regards
Kumar
From: Anup Patel @.>
Sent: Saturday, August 28, 2021 2:18 AM
To: riscv/riscv-platform-specs @.>
Cc: Subscribed @.***>
Subject: [riscv/riscv-platform-specs] Need more per-HART VS-level IMSICs
(#47)

You can view, comment on, or merge this pull request online at:
https://github.com/riscv/riscv-platform-specs/pull/47
Commit Summary

Need more per-HART VS-level IMSICs

File Changes

M riscv-platform-spec.adoc
https://github.com/riscv/riscv-platform-specs/pull/47/files#diff-e2e67320afc3dbcf884d10778f562bfa141048bbccbf7be067df8813a55a66fd
(10)

Patch Links:

https://github.com/riscv/riscv-platform-specs/pull/47.patch
https://github.com/riscv/riscv-platform-specs/pull/47.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/riscv/riscv-platform-specs/pull/47, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABLRGVVFIFHCA6VWJRV6343T7CSULANCNFSM5C65VTPQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Cannot import android.app.ActivityThread;

I down load this git project but can't used in the new android studio.
Therefore I create the gradle-wrapper.properties as the following code;
#Tue Nov 09 17:12:44 CST 2021 distributionBase=GRADLE_USER_HOME distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME
After syncing. The package android.app.ActivityThread cannot be imported.
Is there anything I do wrong?

Hi @airhandsome
I haven't even looked at this project since around the time of the most recent commit, which is several years ago.
As for why that package couldn't be imported: first, it's not a package, it's a fully qualified class name (the class' name is "ActivityThread" and it's in package "android.app"). Second... well, it's been about the same amount of time since I last poked around android. I'm afraid I can't help :(


Build on GHC 9.4.8 and 9.6.6; remove compilation warnings

This commit covers the following:

Change all Data.Text.Prettyprint imports to Prettyprinter imports.

Some imports were made explicit to avoid "unnecessary import" warnings.

Removed explicit imports of definitions that are now in Prelude.

Setting lower bound of base to 4.11. It's the first version that re-exports Semigroup type class from Prelude. As a consequence the package is not buildable on GHC ≤9.4.

Setting lower bound of prettyprinter to 1.7, which introduced the Prettyprinter module hierarchy. Later versions deprecated the Data.Text.Prettyprint module hierarchy, therefore, switching to the newer hierarchy requires this lower bound.

Setting upper bound of transformers to 0.7. The 0.6.* versions are compatible with this package and no changes needed to be made

Thanks! I will test this soon and bump the version on hackage

0.10.0 is now on Hackage: https://hackage.haskell.org/package/language-bash-0.10.0
Thanks again for fixing the bitrot and for the very detailed commit message. Let me know if there are any issues


Wrong script in documentation (Test Static Html Pages recipe)

Are you requesting a feature or reporting a bug?
Bug
What is the current behavior?
There are some mistakes in recipe (Test Static Html Pages) which says to run this script:
"scripts": {
    "test": "concurrently -r -k \"http-server\" \"http-server ./dist -p 4000 -s\" \"testcafe chrome ./test/acceptance/**\""
}

But it does not work properly.
1. http-server will be run with default settings
This document (Test Static Html Pages recipe) says:

This script contains the following commands.

concurrently -r -k "http-server" - starts concurrently with the raw output flag on and kills the http-server after running the tests

But in concurrently documentation -k (--kill-others) option has not any arguments. So "http-server\" will be interpreted as command to run and will be started with default options (path, port and etc). Next command (http-server ./dist -p 4000 -s) with custom options will be ignored.
2. This test script will always exit with error (exit code 1) whatever the testcafe result
because by default concurrently process will return 0 exit code if all child processes succeed (see -s, --success option in concurrently documentation). But when http-server will be killed it will return error (exit code 1). So test script will be failed.
It can be fixed by using --success first option in this script.
This corrected script works for me:
"test": "concurrently -r -k -s first \"http-server ./dist -p 4000 -s\" \"testcafe chrome ./test/acceptance/**\""

I have also found another version of this recipe in this repository (docs/articles/documentation/recipes/test-static-html-pages.md) which suggests another solution:
"test": "testcafe chrome ./test/acceptance/** --app \"http-server ./dist -s\""

But in does not work for me. It is seems like --app option is ignored.
What is the expected behavior?
Provided script should run http-server with passed path and options (port and etc) and exit returning exit code of testcafe process.
How would you reproduce the current behavior (if this is a bug)?
run npm test command with provided script.
Specify your

operating system: Windows 10
testcafe version:
node.js version: 6.9.2

Hi Alexey,
Thanks for your report!
We've found these mistakes too and we've already updated our recipes in the repository (#1069). You can actual recipes here. They will be updated on the site when the next testcafe version (0.12.0) is released.

But in does not work for me. It is seems like --app option is ignored.

We've implemented this feature (#1047) in 0.12.0 that is not released yet. But you can try it now in the  alpha version (npm install testcafe@alpha). You can find the feature description in the documentation topic in the repository.


Enforce command arguments

$ bumpversion mayor
Traceback (most recent call last):
  File "/usr/local/bin/bumpversion", line 11, in <module>
    sys.exit(main())
  File "/Library/Python/2.7/site-packages/bumpversion/__init__.py", line 994, in main
    vcs.commit(message=commit_message)
  File "/Library/Python/2.7/site-packages/bumpversion/__init__.py", line 73, in commit
    list(os.environ.items()) + [(b'HGENCODING', b'utf-8')]
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 573, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command '[u'git', u'commit', u'-F', '/var/folders/l4/ymflzg114nscdbv54l1g_rr00000gn/T/tmp6ogPhi']' returned non-zero exit status 1

It should tell me mayor is not a valid argument.

Yes, you're right. Thanks for finding this!
Would you want to prepare a pull-request?

I tried to fix it, but your argument parsing seems more complicated that it should be.

I ran into this problems as well (accidentally ran bumpversion bugfix rather than bumpversion patch), but in my case it had rather disastrous consequences. I'm using this .bumpversion.cfg:
[bumpversion]
current_version = 1.3.6
commit = True
tag = True
tag_name = {new_version}

[bumpversion:file:tmtpds/__init__.py]

[bumpversion:file:requirements.Linux.rpm.txt]
search = tmtpds.git@{current_version}
replace = tmtpds.git@{new_version}

When I ran bumpversion bugfix, it made an incorrect change to requirements.Linux.rpm.txt, then committed with a "Bump version: 1.3.4 → 1.3.4" commit message. But it didn't tag the commit, and didn't bump the version number.
The incorrect change it made was:
diff --git a/requirements.Linux.rpm.txt b/requirements.Linux.rpm.txt
index 42ecad9..2f1b6b9 100644
--- a/requirements.Linux.rpm.txt
+++ b/requirements.Linux.rpm.txt
@@ -29,4 +29,4 @@ Unidecode==0.04.16
 # Update this for every release build.
--e git+git<EMAIL_ADDRESS>+-e git+git@bitbucket.org:[REDACTED]/tmtpds.git<EMAIL_ADDRESS>
Notice that it duplicated tmtpds.git@ and didn't bump the version.
Since I have bumpversion configured to immediately commit the changes it makes, this problem silently crept into my git repo without me noticing. That is a critical bug that requires immediate developer intervention.

Hey, @coredumperror could you make a new issue for this maybe including more details or a reduced test case so I can look into this ? I don' think this is related to the original issue @camilonova is describing here.

@camilonova yes, bumpversion is just config parsing at heart. But there's a very heavy test suite I use to keep myself from breaking things accidentally :) If you use that you should be on the safe side.

@camilonova Also, if you'd like me to take a look at this problem could you please share your config and/or a (reduced) test case so I can reproduce this ?

@peritus Sure, I'll open a new issue. I managed to replicate it with a super simply repo, so it shouldn't be hard to track down.


Enable/disable startup effect

You can enable/disable the "startup effect" on the G203 mouse with the following data:
11 ff 0e 5b 00 01 TOGGLE 00 00 00 00 00 00 00 00 00 00 00 00 00

TOGGLE should be 01 to enable and 02 to disable the effect.
I don't have the G213 keyboard, but I think it should be very similar. This would be a nice addition to the GUI

Seems interesting! I'll give it a try when I have time for this.


Fix -wshadow warning

Fix warning
../../../src/lib/uvw/src/uvw/udp.hpp: In lambda function:
../../../src/lib/uvw/src/uvw/udp.hpp:304:53: warning: declaration of ‘ptr’ shadows a member of ‘uvw::UDPHandle’ [-Wshadow]
                         data.release(), [](char *ptr) { delete[] ptr; }
                                                     ^
In file included from ../../../src/lib/uvw/src/uvw/handle.hpp:8:0,
                 from ../../../src/lib/uvw/src/uvw/async.hpp:7,
                 from ../../../src/lib/uvw/src/uvw.hpp:1,
                 from JsonApiHandlerHttp.cpp:32:
../../../src/lib/uvw/src/uvw/resource.hpp:129:38: note: shadowed declaration is here
     std::shared_ptr<void> ptr{nullptr};
                                      ^

Uhm... I think it would be better to change the name of the data member within Resource, for I think I used the name ptr all around the code. Let me check it before to merge the PR and... Well, thank you as usual!! I'm glad to know that you are still using uvw. ;-)

Confirmed. I changed the name of the pointer within Resource.
See 17c01f1. It should solve your issue. Thank you.

Thanks for being so fast!
And yes we are still using uvw. Actually we switched our code base entirely to uvw and it works really good, thank you for this well done lib!

Thank you so much. I'm glad to know that people use it and find it useful!!
I plan also to add a section in the README, something like - project that uses uvw. Can I mention your project?

Sure you can,
Calaos

@raoulh Added Calaos on the README as mentioned. Thank you.


Parent-child pipes not relayed

Acknowledgements

[X] I read the documentation and searched existing issues to avoid duplicates
[X] I understand this is a bug tracker and anything other than a proven bug will be closed
[X] I understand this is a free project and relies on community contributions
[X] I read and understood the Contribution guide

Minimal reproduction URL
https://stackblitz.com/edit/node-qzmjn4?file=main.js
Problem & expected behavior (under 200 words)
I'm not aware of how tsx works internally, but apparently it breaks at least some forms of inter-process communication. I setup a child process to have a stream (fd 3) to talk with it's parent, but that becomes unusable when using tsx. Spent quite a bit of time to track the issue to tsx actually ^_^
I don't know if this is easily fixable, but at least it should be documented somewhere.
Bugs are expected to be fixed by those affected by it

[X] I'm interested in working on this issue

Compensating engineering work will speed up resolution and support the project

[ ] I'm willing to offer $10 for financial support

This happens because tsx also spawns a node process and isn't relaying the pipes it receives from the parent process:
https://github.com/privatenumber/tsx/blob/2688300f9440cbee7958e1b092329be7b10e1f58/src/run.ts#L15-L19
Do you know if there's a good way to detect all the pipes attached to the current process by the parent? Not a lot of info in the docs: https://nodejs.org/api/child_process.html#optionsstdio
As far as I understand, the only way is to do something like:
import fs from 'fs';

const stdio = [];

for (let fd = 0; fd < 100; fd++) { // Arbitrary upper limit for file descriptors
  try {
    fs.fstatSync(fd); // If this doesn't throw, fd is valid
    stdio.push('inherit');
  } catch (err) {
    if (err.code !== 'EBADF') { // EBADF means fd is not valid
      throw err;
    }
  }
}

But I prefer we're not doing an arbitrary number of stat and try-catches on startup.

Hi, thanks for the quick feedback !
There are platform specific ways, e.g. Linux (or unix like MacOS) have /proc/fd which lists open files and I believe it would be quite efficient to scan that on startup. There must be a windows API for that also, but not necessarily available from node. But at this point it's probably more trouble than it's worth. I don't see a standard, cross-platform way of doing it, apart from what you propose, which does not seem very nice.
Also, just adding a bunch of "inherit" to stdio options just in case is not a good option either because it changes the error code when trying to open a file descriptor which could also break some edge cases.
I guess one option would be to have a way to configure this through command line parameters or otherwise, but I understand one of the point of this project is to "just work" with no configuration, so I don't know if that fits.
Also if you look at the broader picture, there are many IPC mechanisms ; detecting and forwarding them all seems unrealistic. So maybe the easier resolution is to accept that this use-case is not handled by tsx, but it should be documented.
In the meantime I'm gonna try my luck with ts-imp (ts-node also breaks on our code, but for different reasons :sob:  )


PSYCHO-PASS MANDATORY HAPPINESS [PCSE00904]

Game summary

Game name: PSYCHO-PASS MANDATORY HAPPINESS
Game serial: PCSE00904
Game version: 01.00

Vita3K summary

Version: v0.1
Build number: 1316
Commit hash: https://github.com/vita3k/vita3k/commit/d5378b8

Test environment summary

Tested by: IllusionMan1212
OS: Windows 10 Pro
CPU: AMD Ryzen 5 1600
GPU: NVIDIA GTX 1050Ti
RAM: 8 GB

Issues
Calls scePvf
Screenshots
None at the moment
Log
vita3k.log

Vita3K summary

Version: v0.1.5
Build number: 2628
Commit hash: https://github.com/vita3k/vita3k/commit/714ba96b
CPU backend: Dynamic

Test environment summary

Tested by: othmanead
OS: Windows 11
CPU: Intel i5-10300H
GPU: RTX 3060 mobile
RAM: 16 GB

Issue:

game is playable with no issues

Screenshots:

Log
vita3k.log
Recommended labels

Playable


Add the facility to override the request timeout per include and route.

Todo: Add E2E test.

Thanks for the rework!
Added issue #29  for the discussion about null vs optional and #30 for the discussion about timeout vs ttl. I'm merging the PR even though the end-2-end test is missing. I'm not sure if we should add one for something like request timeouts (ugly to test anyways ;-) ).

Ah darn, right after merging this: Could you update the readme.md to document the new features?


[Parse] Avoid delayed member parsing for type decl with missing brace

Cherry-pick of #32191 into release/5.3
More info to come.
Fixes: rdar://problem/63921896

@swift-ci Please test

@swift-ci Please nominate

Windows failure is unrelated
Failing Tests (1):
    Swift(windows-x86_64) :: IRGen/framepointer_arm64.sil


Point?

Why would i use this over chrome?

once there is more handy vimiumlike keyboardkeys there is no need to exit runlevel3 ever again with good browser. quite sure its also faster than chromium.

once there is more handy vimiumlike keyboardkeys there is no need to exit runlevel3 ever again with good browser. quite sure its also faster than chromium.

Idk what runlevel is?
Plus the quality here is much worse:

ya'll weird lol

once there is more handy vimiumlike keyboardkeys there is no need to exit runlevel3 ever again with good browser. quite sure its also faster than chromium.

Its faster but it has 1970 quality...


Incompatibility with ImmediatelyFast

When using ImmediatelyFast with Show Me Your Skin, armor trims dissapears when any of armor opacity changed to 0. Logs (Empty): https://mclo.gs/HRxtZRC . Tested with only Fabric API, Show Me Your Skin and ImmediatelyFast. Video:
https://github.com/enjarai/show-me-your-skin/assets/91282421/db340785-c0b6-4ad8-be85-f7f8529e9486
ImmediatelyFast config is default.

It seems like ImmediatelyFast changes the rendering order of trims to prevent unnessecary texture switching, thus reducing frame times ever so slightly. I'll probably be able to implement a workaround though, I'll look into it.


Right click menu is too slow

What's the Problem?
When I right-click, the right-click menu takes about a second or two to load additional options. The native resource manager of the system does not need to wait.
Solution/Idea
Make the right-click menu load faster.
Alternatives
Make the right-click menu load faster.
Priorities

Capability
Priority

This proposal will allow end users to accomplish X
Should

Files Version
<IP_ADDRESS>
Windows Version
Windows 10.0.19042.1586
Comments
No response

Merging with #4180


C++ highlighting issue

I'm on the latest release from the marketplace. On a C++ codebase with the dark versions of the theme, the highlighting of same tokens in the code, makes them unreadable. The highlight color needs to be changed

I can't seem to reproduce this no matter what I try. I'm going to close this issue for now.


Suggestion: Lets have a Userscript community, FIGHT the evil's of JAVASCRIPT with JAVASCRIPT.

Javascript today is degenrate
Demo:
https://mar974.com/ElYaSRYplMkG9HWzJZ48MJc7CYNyYAAm.mp4
But look you can do cool stuff in javascript, I made my dream website with it, thanks to your project and the power of userscript
javascript made to have this small things. you can bookmark pages by inserting which recipie you want lets say by insert a cookie or whatever :) you can use "window.history.back();" you can even click a button and you can resize another thing.
in my video I created the "be inside of a book" rexpirence I always wanted this project allowed me to do it!
I was thinking we can have it like Winamp where everyone can create his own Plugins and shit ain't it be cool ?
we will have a blank page and we will have a userscript community. and everyone can create their own thing even the soyboys their own html5 crappy theme for if they wish and the site will be a blank page
(If you want the userscript get violentmonkey or tampermonkey)
https://chrome.google.com/webstore/detail/violentmonkey/jinjaccalgkegednnccohejagnlnfdag?hl=en
and the script is
// ==UserScript==
// @name        New script - based.cooking
// @namespace   Violentmonkey Scripts
// @match       https://based.cooking/*
// @grant       none
// @version     1.0
// @author      -
// @description 3/20/2021, 7:09:37 PM
// @run-at   document-start
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==

///This is why javascript could be nice,
/// Dont think I dont hate the modern interweb, I do. I just thing that those little customiztion could be cool
/// ------------------------------------------------------------------------------------------------------ javascript allows you to have so much fun!

// On the bottom where my taskbar would have been you see my mouse, note that
// as you can see I am click-holding to scroll, amazing eh ? Much better than moving your arm to scroll
// And also, you can use javascript, in the way it was made
// you can also disable selecting if you dont like, and if you really want press the "CTRL" button you must hold both your mice and the CTRL
// I dont enjoy the website in its raw format, I enjoy the userscript more :) because I believe its in the way it(javascript) was meant to be
// Its not that nice to the eye(the raw site), I guess you can use dark mod but I hate it

// Thats about it :) I am not trying to shill about javascript, I just think, that you should use it for stuff like "if X cookie here dont show Y",
// or just cool shit like having a userscript-javascript-script to do what I am doing now :)
// Thanks luke, and the community who maintaine this site, you remind me my childhood :)

var ValDisallowSelecting = true;
function disallowSelecing(){
  //Disallowing selecting text
  window.addEventListener('selectstart', function(e){

    if (ValDisallowSelecting==true){
      console.log(event);e.preventDefault();
    }
  });
}
disallowSelecing();//It could be annoying without as you see but there is more

//////////////////////////////////////   Click to drag like an iphone but on pc           ////////////////////////////////
var clicked = false, clickY;
$(document).on({
  'keydown': function(e) {
    if (e.ctrlKey){
      console.log('Yes you are pressing the ctrl button, which-yes, allows you to copy')
      ValDisallowSelecting = false;
    }
  },
  'keyup': function(e) {
    ValDisallowSelecting = true;
  },

  'mousemove': function(e) {
    clicked && updateScrollPos(e);
  },

  'mousedown': function(e) {
    console.log('button is',e.button);

    //If mouse is the "true click" button.  Have a sidebar of what reciepies you recently viewed? Something really minimalist and fun :) no huge buttons, and flat buttons and disgusting icons that dont represent their meaning

@LukeSmithxyz Can you express an opnion about my onion about true javascript ? Where it allows you chaging little things for the end user?


Inner macro

Details
Record key press/release and replay that. Default key is N(record) and n(replay)
Tasks

[ ] Implement
[ ] CHANGELOG.md

As Input.enqueue_macro can emulate the feature, there is no need to support it in native foobar.


Too many files open_Jacquard encountered an unanticipated problem

Hi here!
I'm computing with the script SARS-CoV-2-GISAID-freebayes.sh. Once at the stage of merging VCFs using jacquard, the same problem comes back every time, even with less than 3000 VCFs files. So I come to pose my problem here in the hope that you can help me. Thanks in advance.

Hi AlbertRockG,
Thanks for using our scripts for your work. I think your problem might be due open file limit, if you are using linux OS. Can you please share the logfile and the output of the following commands?:
cat /proc/sys/fs/file-max  # maximum open file limit
also, check hard and soft limits for number of open files by user as follows:
ulimit -Hn
ulimit -Sn
And also, can you do?
ulimit -n 1000000
ulimit -s 1000000

This is for getting an an idea of you work environment.
Cheers,
Carlos

Hi Carlos,
I have solved the issue with a Python script. However, I would like to know the purpose of this line of code :
ulimit -n 1000000 && vcfcombine EPI*.vcf > combined_sites.raw.vcf
Since the only time the output file was used in the rest of the SARS-CoV-2-GISAID-freebayes.sh script was on line 126 and that was only to compress it.


Add config params to enable ios submit

testing if github action will work...?

whoops not the action I wanted at all, sorry :/

No such thing as a deleted PR, just a closed one :)
No worries! Opening a PR doesn't affect anything.


microphone: JavaScript example for Grove microphone

Signed-off-by: Zion Orent<EMAIL_ADDRESS>Signed-off-by: Jon Trulson<EMAIL_ADDRESS>

Thanks so much!  Merged, so I'll close.


AWSAccelerator-InstallerProject fails on upgrade to release/v1.5.1

Describe the bug
Installer Stack Codebuild job fails to upgrade
To Reproduce
AWSAccelerator-InstallerStack is currently on Version 1.4.3 running the TSE sample config.
Click update stack and change RepositoryBranchName to release/v1.5.1, wait for the codebuild job to run
Expected behavior
Solution updates
Please complete the following information about the solution:

[x] Version: release/v1.5.1
[x] Region: ap-southeast-2
[ ] ~Was the solution modified from the version published on this repository?~
[ ] ~If the answer to the previous question was yes, are the changes available on GitHub?~
[ ] ~Have you checked your service quotas for the services this solution uses?~
[x] Were there any errors in the CloudWatch Logs?

[Container] 2023/11/02 06:20:10.928483 Phase complete: PRE_BUILD State: SUCCEEDED
--
223 | [Container] 2023/11/02 06:20:10.928500 Phase context status code:  Message:
224 | [Container] 2023/11/02 06:20:10.961637 Entering phase BUILD
225 | [Container] 2023/11/02 06:20:10.962233 Running command cd source
226 |
227 | [Container] 2023/11/02 06:20:10.967203 Running command if [ "aws" = "aws-cn" ]; then
228 | sed -i "s#registry.yarnpkg.com#registry.npmmirror.com#g" yarn.lock;
229 | yarn config set registry https://registry.npmmirror.com
230 | fi
231 |
232 | [Container] 2023/11/02 06:20:10.972315 Running command yarn install
233 | yarn install v1.22.19
234 | [1/4] Resolving packages...
235 | [2/4] Fetching packages...
236 | [3/4] Linking dependencies...
237 | [4/4] Building fresh packages...
238 | $ cd ../ && husky install source/.husky && cd source
239 | fatal: not a git repository (or any parent up to mount point /codebuild)
240 | Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
241 | husky - git command not found, skipping install
242 | $ cd ../ && husky install source/.husky
243 | fatal: not a git repository (or any parent up to mount point /codebuild)
244 | Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
245 | husky - git command not found, skipping install
246 | Done in 53.72s.
247 |
248 | [Container] 2023/11/02 06:21:06.119333 Running command yarn lerna link
249 | yarn run v1.22.19
250 | $ /codebuild/output/src2594382541/src/source/node_modules/.bin/lerna link
251 | ERR! link The "link" command was removed by default in v7, and is no longer maintained.
252 | ERR! link Learn more about this change at https://lerna.js.org/docs/legacy-package-management
253 | error Command failed with exit code 1.
254 | info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
255 |
256 | [Container] 2023/11/02 06:21:07.140452 Command did not exit successfully yarn lerna link exit status 1
257 | [Container] 2023/11/02 06:21:07.154927 Phase complete: BUILD State: FAILED
258 | [Container] 2023/11/02 06:21:07.154949 Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: yarn lerna link. Reason: exit status 1
259 | [Container] 2023/11/02 06:21:07.196885 Entering phase POST_BUILD
260 | [Container] 2023/11/02 06:21:07.197427 Running command inprogress_status_count=$(aws codepipeline get-pipeline-state --name "AWSAccelerator-Pipeline" \| grep '"status": "InProgress"' \| grep -v grep \| wc -l)

Hello @richardkeit, and thank you for creating an issue with the Landing Zone Accelerator team!
You will need to update your installer stack, as described here in our Troubleshooting docs. For future reference, the installer stack should always be updated along with solution upgrades to ensure you have the latest features.
Thanks for your support! I will close this issue out since there is a documented fix.

That's what was done, per the Steps to Reproduce

Hi again @richardkeit,
My apologies if the information that was provided was unclear. What was meant in my response was that you must also update the installer template to the latest version that is available in S3. This is an additional step on top of updating the branch name in the stack parameters. The new installer stack includes the code changes that fix the issue you’ve run into.
Please see step 3 in Update the solution for those details.
Thank you!

Hi @awsclemj ,
Appreciate you looping back 🙇
I'll have to eat humble pie on this one, you sent me all the information originally.
We've created some Github actions to get started quickly and will look to double down on this documentation (and make sure people are aware, "changing the cloudformation parameter" isn't the quicker way):
      - name: Deploy to the LZA Solution
        uses: aws-actions/aws-cloudformation-github-deploy@v1
        with:
          name: AWSAccelerator-InstallerStack
          template: https://solutions-reference.s3.amazonaws.com/landing-zone-accelerator-on-aws/latest/AWSAccelerator-InstallerStack.template
          capabilities: CAPABILITY_IAM
          no-fail-on-empty-changeset: "1"
          disable-rollback: "1"
          parameter-overrides: >
            ManagementAccountEmail=${{ vars.AWS_MANAGEMENT_ACCOUNT_EMAIL }},
            LogArchiveAccountEmail=${{ vars.AWS_LOGARCHIVE_ACCOUNT_EMAIL }},
            AuditAccountEmail=${{ vars.AWS_AUDIT_ACCOUNT_EMAIL }},
            ApprovalStageNotifyEmailList=${{ vars.LZA_APPROVAL_STAGE_NOTIFY_EMAIL_LIST || vars.AWS_MANAGEMENT_ACCOUNT_EMAIL }},
            UseExistingConfigRepo=${{ vars.USE_EXISTING_CONFIG_REPO || 'No' }},
            ExistingConfigRepositoryName=${{ vars.EXISTING_CONFIG_REPOSITORY_NAME }},
            ExistingConfigRepositoryBranchName=${{ vars.EXISTING_CONFIG_REPOSITORY_BRANCH_NAME }},
            RepositoryBranchName=${{ vars.REPOSITORY_BRANCH_NAME || format('release/{0}', env.release_tag) }}


Argument and return value discovery for arbitrary ABIs

Binary Ninja should be able to discover function arguments that don't respect any conventional ABI. There are a few steps required in order to discover these, all of which are inter-procedural data flow analyses.
At a high level, what this amounts to is an inter-procedural SSA form that also manages to understand that some registers are preserved by functions, and so can potentially be elided from this form. Some steps that could achieve this, that approximate the data needed to build the def-use and use-def chains are:

Live register analysis. One of the goals of this analysis is to figure out  what registers are used in a function before being defined. This will include argument registers and preserved registers. This is a backward data-flow analysis. This information that it will produce is:

Live register sets on entry/exit to every basic block.
Live register sets before/after to every function call within a basic block.
Live registers on exit from a function. This is necessary but not sufficient to discover return values in registers.

Stack or execution simulation to distinguish live registers and preserved registers. Registers whose values are preserved by a function will also be live on entry to the function.
Inter-procedural reaching definitions. This is a forward data-flow analysis that finds registers that are live on exit from a function, and where there is a definition of that register that reaches the end of a function. This analysis will help discover candidate registers that may contain return values.

We are considering this part of type propagation #121 Though I will keep this around since it documents nicely one of the pieces of type propagation.


Can not import Partials into a Base File SCSS

I am trying to get the partials in a base file . And then I tried to get it on the gulp . But it is not working.
here is the code
var gulp        = require('gulp');
var rubyGulp    = require('gulp-ruby-sass');

gulp.task('sass',function(){
    return rubyGulp('bower_components/bootstrap-sass/assets/stylesheets/bootstrap/_bootstrap.scss').on('error',function(err){
        console.error('Error!!',err.message);
    }).pipe(gulp.dest('public/css/'));
});

gulp.task('default',['sass']);

It looks like you are compiling a partial alone; Sass does not output files
that start with an '_'. Try renaming _bootstrap.scss to bootstrap.scss, or
importing it into a file called main.scss or something similar and
compiling that file.
On Tuesday, August 11, 2015, Prio<EMAIL_ADDRESS>wrote:

I am trying to get the partials in a base file . And then I tried to get
it on the gulp . But it is not working.
here is the code
`js
var gulp = require('gulp');
var rubyGulp = require('gulp-ruby-sass');
gulp.task('sass',function(){
return
rubyGulp('bower_components/bootstrap-sass/assets/stylesheets/bootstrap/_bootstrap.scss').on('error',function(err){
console.error('Error!!',err.message);
}).pipe(gulp.dest('public/css/'));
});
gulp.task('default',['sass']);`
—
Reply to this email directly or view it on GitHub
https://github.com/sindresorhus/gulp-ruby-sass/issues/241.

--
Rob Wierzbowski
@robwierzbowski http://twitter.com/#!/robwierzbowski
http://github.com/robwierzbowski
http://robwierzbowski.com

@robwierzbowski  You are pretty wrong . I am compiling a base partial . which includes a hell of a list of small partials . And I am back here to close the issue because I solved the problem .

Out of curiosity, what was the solution? If you share it others with the
same issue can benefit from it.
On Tuesday, August 11, 2015, Prio<EMAIL_ADDRESS>wrote:

Closed #241 https://github.com/sindresorhus/gulp-ruby-sass/issues/241.
—
Reply to this email directly or view it on GitHub
https://github.com/sindresorhus/gulp-ruby-sass/issues/241#event-379069192
.

 Okay . I was working with the Laravel 5.1 . I tried to download Bootstrap-sass with bower. And then Compile it with GULP . I made  a horrible mistake by putting the src path wrong . Sorry . But yeah , it compiled a base partial with _prefix

Ha, no worries. I guess if you specify the base file it compiles it no
matter what; directory compiling ignores partials. Good to know.
 Okay . I was
working with the Laravel 5.1 . I tried to download Bootstrap-sass with
bower. And then Compile it with GULP . I made a horrible mistake by putting
the src path wrong . Sorry . But yeah , it compiled a base partial with
_prefix
—
Reply to this email directly or view it on GitHub
https://github.com/sindresorhus/gulp-ruby-sass/issues/241#issuecomment-129855005
.

--
Rob Wierzbowski
@robwierzbowski http://twitter.com/#!/robwierzbowski
http://github.com/robwierzbowski
http://robwierzbowski.com


[Bug]: bazel lint //... leads to No aspects enabled for linting. ... even though config.yaml file exists

What happened?
Running bazel lint //... leads to
No aspects enabled for linting.

Add a section like the following to your .aspect/cli/config.yaml:

lint:
  aspects:
    - //tools:lint.bzl%eslint

Running bazel lint --aspect:config "$(pwd)/.aspect/cli/config.yaml" //... from the same directory, the root of the Bazel monorepo, works.
Version
Development (host): Ubuntu 18.04
Output of bazel --version: aspect 5.8.20
Version of the Aspect rules, or other relevant rules from your
WORKSPACE or MODULE.bazel file: aspect_bazel_lib 1.38.0, aspect_rules_lint 0.10.0
Language(s) and/or frameworks involved: not sure if relevant, the bazel lint command doesn't seem to properly locate the configuration file.
How to reproduce
No response
Any other information?
No response

Moved to https://github.com/aspect-build/rules_lint/issues/154 as it seemed more appropriate.


Consider use of "window.onerror"

Currently code-to-inject replaces the built in error handler, but it seems we could use instead window.onerror to additionally capture the details without replacing the core error handler

Same as current method


Autopost for model repository

Google form allows doc to uploaded to Google Drive (Eventer Neuro Google Drive) which can either be accessed through that URL or by downloading into eventer-fresh itself (this may slow the website once It gets too big, but is all in one location.). The following R file download guide may be helpful.
Begin work shortly to edit the open-neuro autopost.r

@amchagas - had a particularly busy period of experiments and am now back doing data analysis for a little while so will be working a little more on this to break up my day!
Looking at eventer-neuroscience/resources/eventer_autopost.R I'm just trying to understand how the final section ...
  # change posted to TRUE on google sheets
  # I think it is safe to overwrite directly here

  target$posted <- str_replace_all(string = target$`Model Name`,
                                   pattern = " ", replacement = "_") %in%
    list.files("/content/post/")

  # overwrite the original!
  write_sheet(target %>% select(original_columns),ss = ID, sheet=1)

... actually changes the text on the google sheet to say posted = TRUE. Rendering the site locally I'm able to run this nicely and populate posts that appear in the correct directory and render on the website. The only thing I'm not seeing change is posted = FALSE on the google sheet associated with the google form. What incredibly obvious thing am I missing?

Hi @ogsteele it normally does not create FALSE entries for things that are not up yet,.. it simply leaves that field blank... so it should be TRUE or blank in normal cases (which is a bit counter intuitive I know)
It is just that this specific field is not on the form itself, only on the spreadsheet and it gets added/filled out by the autopost.R function...
You mention that you can see things locally, does that imply that things are not updating on netlify?

Yep, it's all updating on netlify (I in fact only noticed that it was the case today and have amended the eventer repository webpage to now show 'under construction' - the rest of the website is fine for now, it's just that bit that needs tweaking).
I think I'm still a little confused ... I understand that field is not there and only added by the script. TRUE = posted, blank = not posted.  So in my case, I have two 'FALSE' fields, why is that? Is that what is causing autopost.R to read those rows and generate a post on the website (and all the relevant folders/files in the directories) even after I delete the posts from the directory. Is Autopost.R not able to recognise the FALSE statement so it's not putting TRUE in that field?

I had another look at the script and see what you mean with the whole TRUE/FALSE thing. I think it has something to do with the way it changes titles (on open neuroscience, we have to remove things like quotation marks from the titles, so that it doesn't cause issues with the YAML part of the MD file).
It changes titles twice and I spotted differences between the two times. So it maybe related to the script checking the folder name with one of the modified titles and not finding the exact name...
I have to have a closer look. I did update the ON version of the script, but it is not 100% yet

Somewhere to start at least, I'll have a look too when I get a chance - thanks!

Ddid you ever get this sorted for open neuro in the end @amchagas? I was just having a look and got no closer ...

See below the changes today and yesterday that I think fixes this issue and in my (admittedly lazy) opinion makes things a little smoother for others. I also discovered an issue with full stops in creating foldernames on OSX at least. A submission had a full stop in the name, and it all freaked out a bit.
eventer-neuroscience/resources@cf48511 - package installation if required
eventer-neuroscience/resources@b72191b - adds in an if statement so the code will still run if there's nothing to post, and adds a comment suggesting a beer is therefore required ...
eventer-neuroscience/resources@51fbdf3 - fixes the posted = TRUE issue we've been seeing.
I might make some changes to the tag functionality over the next day or two as we might tweak the form, but that SHOULDN'T create this issue again.


[Pager] PagerState animateScrollTo no longer works as an effect of user swiping

Description
When attempting to animateScrollToPage back a page to maximize the number of items on screen as an effect of the user scrolling to the last item, nothing happens. This previously worked on 0.23.1. Currently works on compose 1.2.0-rc02
Works in compose 1.2.0-rc02 and accompanist 0.23.1
Does not work after upgrading accompanist to 0.24.12-rc
Steps to reproduce
A very simple example that should always show at least 2 items on the pager:
@Composable
fun YouSwipedTooFarPager() {
        val state = rememberPagerState()
        val scope = rememberCoroutineScope()
        BoxWithConstraints(
            modifier = Modifier.fillMaxWidth()
        ) {
            HorizontalPager(
                count = 10,
                state = state,
                itemSpacing = 2.dp,
                contentPadding = PaddingValues(end = maxWidth * .6f + 2.dp),
            ) { page ->
                    Text(
                        text = "$page",
                        modifier = Modifier
                            .background(Color.Green)
                            // Verify animated scrolling works on click
                            .clickable { scope.launch { state.animateScrollToPage(0) } }
                            .height(64.dp)
                            .width(maxWidth * .4f)
                    )
            }

            if (state.currentPage > 8) {
                LaunchedEffect(Unit) {
                    // This has no effect in 0.24.12-rc where it previously worked
                    state.animateScrollToPage(8)
                }
            }
        }
}

Expected behavior
From the sample above, animateScrollToPage works from the LaunchedEffect
Additional context
The following block is a work-around for the issue, but does not allow for animateScrollToPage:
            var scrollBack by remember { mutableStateOf(false) } //placed to be remembered properly
            /* collapsed code */
            if (!state.isScrollInProgress) {
                if (state.currentPage > 8 && !scrollBack) {
                    scrollBack = true
                    LaunchedEffect(Unit) {
                        state.scrollToPage(8)
//                        state.animateScrollToPage(8)
                    }
                } else if (state.currentPage <= 8) {
                    scrollBack = false
                }
            }

What has been changed is that we change currentPage now after you swiped half of the element, not in the end of the user scroll gesture. What you can do instead is only run your logic when the scrolling is finished:
              LaunchedEffect(state) {
                   snapshotFlow { state.isScrollInProgress }.collect { isScrolling ->
                       if (!isScrolling && state.currentPage > 8) {
                           scope.launch {
                               state.animateScrollToPage(8)
                           }
                       }
                   }
               }

Thanks for the quick reply! 🎉


When I replace the Livebook app on MacOS with a new version, my "Key bindings" setting resets to "Default"

I updated from 0.14.0 -> 0.14.2.
Expected: Key bindings setting would remain "VIM".
Observed: Key bindings setting reverted to "Default".

The settings related to code editor are stored in browser local storage, rather than persisted to a file, like other Livebook settings (because Livebook can be hosted and used by multiple users, and editor settings are specific to each user).
One thing I realised only now is that since local storage is scoped to origin (including port) and we use random ports for the desktop app by default, those settings are effectively lost on every restart. @wojtekmach @josevalim should we use a fixed, perhaps less popular port for the Desktop app?

Should we use cookies instead? They are not bound to ports.

@josevalim that should work, but then we unnecessarily increase the payload on every request to the server, so I'm not convinced we should do that.

Could we have a very simple encoding schema where we store only key-values as numbers? That should keep the server footprint minimal and only if you set the cookie in the first place. Or we use the cookie if localhost, which means we don't care about the footprint anyway?

Could we have a very simple encoding schema where we store only key-values as numbers?

What do the numbers point to?

Basically we would store everything as a Enum. So, for example, 1=1;2=2 could mean 1=1 (font_size=large) and 2=2 (editor=emacs).

I see, basically compressing by hand, but honestly I think that's too brittle.

Or we use the cookie if localhost, which means we don't care about the footprint anyway?

This sounds better, the main issue is that it's harder to detect issues, since now we have these separate scenarios.
Do you remember what was the issue with fixed port?

I think it is just about making sure the port is not being used. But we can pick one and cross our fingers. Or alternatively, we pick one, save to ETS, and use it the next time around.

Oh, the issue was #1282.
The error was
Slogan: Kernel pid terminated (application_controller) ({application_start_failure,livebook,{{shutdown,{failed_to_start_child,'Elixir.LivebookWeb.Endpoint',{shutdown,{failed_to_start_chil
d,{ranch_listener_sup,'Elixir.LivebookWeb.Endpoint.HTTP'},{shutdown,{failed_to_start_child,ranch_acceptors_sup,{listen_error,'Elixir.LivebookWeb.Endpoint.HTTP',eacces}}}}}}},{'Elixir.Live
book.Application',start,[normal,[]]}}})

eacces indicates more like reserved port, than port taken. I found related discussion in https://github.com/BrowserSync/browser-sync/issues/1668#issuecomment-986269204 and it looks like a rather specific issue, that can be fixed by running net stop winnat then net start winnat.
Also, at that point we didn't really show logs, but now when startup crashes we show the logs, and it says the port is taken, so it should be apparent to the user when that happens.
I think a fixed port is very convenient, so let's try reverting the random port? @josevalim @wojtekmach?

The issue is that, if the port is taken, the first user experience is a broken one. I would really like to avoid that. :(

Fixed port, and if conflict use a random port?

In that case I would try to be consistent and apply it everywhere. But yeah, we could try it!

Maybe we try 3-5 ports and then fallback to 0.

@josevalim I don't think it's a desired behaviour when running from CLI, especially in case of Docker, and starting on a random port would be rather unexpected.


FileHandler Garbage Collector fails to delete expired session files.

From testing on Amazon Linux EC2 with php 7.0 and php 7.1 the session files are not findable with the current file name detection. (using the default session save path)
I would request this be looked more into, I modified the script to at least get it working on my setup for the time being (example below)
On a higher note, there is something going on with PHP 7+ session gc. From many tests, it is failing to actually clear out the expired session files, I am not entirely sure if this is strictly a CI issue. But it has affected most of my CI projects on different servers.
This did not work on the server:

$pattern = sprintf('/^%s[0-9a-f]{%d}$/', preg_quote($this->cookieName, '/'), ($this->matchIP === true ? 72 : 40));

while (($file = readdir($directory)) !== false)
{
	// If the filename doesn't match this pattern, it's either not a session file or is not ours
	if ( ! preg_match($pattern, $file) || ! is_file($this->savePath . '/' . $file) || ($mtime = filemtime($this->savePath . '/' . $file)) === false || $mtime > $ts)
	{
		continue;
	}

	unlink($this->savePath . '/' . $file);
}

I ran this instead:

while (($file = readdir($directory)) !== false)
{
            $mtime = filemtime($savePath . '/' . $file);

            if (preg_match('|^ci_session|', $file) && $mtime < $ts)
            {
                unlink($savePath . '/' . $file);
            }

}

I did not look into which part of the if statement was causing this issue, but I am adding this here as it needs to be investigated further.

@timothymarois Can you check your php.ini file on your Amazon server and tell me what the values are for:
session.gc_maxlifetime = 3600
session.gc_probability = 1
session.gc_divisor = 1000

This has come up a number of times on the forum, and appears to be a PHP garbage collector problem, no?


Suggestion: can we lint duplicate @include ?

I think this could be useful
What version of Sass Lint are you using?
1.9.1
Please include any relevant parts of your configuration
not really
What did you do? Please include the actual source code causing the issue.
  @include screen(phone) { // first include
    margin-bottom: 10px;
    width: 100%;
  }
  @include screen(tablet) {
    margin-right: 8px;
  }
  @include screen(phone) { // new sass lint set to catch this
    margin-bottom: 15px;
  }

What did you expect to happen?
have linter error
What actually happened? Please include any error messages given to you by Sass Lint.
add a new rule
If you're using a IDE plugin have you tried the CLI too?
Atom

For these sort of requests you can just describe what you'd like the rule to check for and what the outcome should be.
I'm guessing this would be a check on a block by block basis? I'm not sure how useful it will be to most but happy to see a PR for it and should be very straightforward.

Thanks Dan, the benefit would be, force you have one @include and maintain it at one place :)
same concept of
https://github.com/sasstools/sass-lint/blob/develop/docs/rules/no-duplicate-properties.md


Some traits from corelib don't need to be explicitly imported anymore.

I recently realised that with recent versions of cairo compiler,  a lot of traits that needed to be imported dont need it anymore.
For example, use array::ArrayTrait; or use dict::Felt252Dict; are now superflu, and arrays can be created and manipulated with associated methods without any issue.
This does only applies for a few corelib traits. For example (from cairobook) :
use poseidon::PoseidonTrait;
use poseidon::poseidon_hash_span;
use hash::{HashStateTrait, HashStateExTrait};

removing the first line makes it impossible to use new method of Poseidon type.
The seconde line is optional, as it could be bypassed using directly poseidon::poseidon_hash_span().
I suggest to modify sections in cairo book where manually imports are not necessary.
For example, in dictionnaries section :
"The first thing we do is import Felt252DictTrait which brings to scope all the methods we need to interact with the dictionary" should be modified to explain that the compiler does the work for us now.
I don't really which version of the compiler introduced these improvements,  2.3.1 or before. Probably that it was step by step on multiple upgrades?

Actually - I was going to create an issue about the opposite: make all imports explicit.
Now, the compiler exposes 2 different versions of the prelude:

One general version, with a lot of stuff that is made available in the prelude (edition 2023_01)
A restricted version, which requires importing content from the prelude manually with use core::path::to:object (edition 2023_10

The thing is: Creating a new project with scarb new project creates a project with the restricted prelude. I didn't necessarily understand everything about why we should use this newer, smaller version instead, but I think it's related to the fact that this allows for users to opt-in newer versions that might have breaking changes, while keeping retroactive compatibility possible

Interesting ! Your interpretation seems totally logic. Let's be more explicit then, and import everything manually from prelude in cairo programs :)

#471


[FEATURE REQUEST]: Turn into npm module

Hello @ncalteen,
Appreciate all awesome work you've done with this GitHub Action!
Background
I utilize GitHub Issue Ops, but instead of running workflows based on new issues created, I use a GitHub App, via Webhook, to process the request. The content of those GitHub Issues are in JSON format, and you can imagine how often syntax issues occur without real time validation. I want to move over to GitHub Issue Forms, but haven't found a standardize NPM module that I feel will accomplish the parsing. This is where I found this action, and better yet, it's owned by GitHub and its sole purpose is to parse GitHub Issue Forms.
Request:
Have this action be built as an NPM module to be used outside of GitHub Actions/Workflows.

Sorry for the radio silence on this! I 100% want to publish this as an npm module. Just working on getting some bandwidth :)


drivers: espi: xec: Report espi bus reset event correctly to client's driver

Clear interrupt after checking if eSPI RESET pin is de-asserted
to send correct notification.
Signed-off-by: Jose Alberto Meza<EMAIL_ADDRESS>

@scottwcpg I changed the sequence as this, I think this would be ok.

read & cache espi reset interrupt status value
clear eSPI reset interrupt status
check eSPI reset pin state in cached value
I see this works fine since firing callback to app doesn't long.
I see 2 interrupts in a row with following values while powering on
espi_rst = 3 followed by espi_rst = 2
Then similar 2 interrupts with espi_rst = 0 while powering off


FluxEngine

Hi David,
I'm trying to program my CY8CKIT-059.  I'm running Win10 64bit and have Cygwin installed that a freind help me some time back to install and to run a script file.  Thats the extent of my Cygwin/Linux knowledge.  I've installed the Cypress software and it appears to see my CY8CKIT-059.
I open your fluxengine-master.zip file and copied/extracted the fluxengine-master folder the folder where I use Cygwin from.
I your Building the Harware instructions you say "When you’re ready, open the FluxEngine.cydsn/FluxEngine.cywrk workspace, pick ‘Program’ from the menu," but there is NO FluxEngine.cywrk file, only FluxEngine.cydwr and FluxEngine.cyprj and a few other files.  If I type bash FluxEngine.cyprj all I get is a very long stream of "no such directory".  Is bash the right way to start these ?  What am I be doing wrong ?  Any help appreciated :)
I'm hoping to image a heap of 5.25" and 3.5" Microbee floppies.  These are 40 or 80 track CP/M disks and I have imaged some of them successfully with an old PC and Dave Dunfields Imagedisk program.
Thanks, Alan

Sorry, that's a typo. Open FluxEngine.cyprj in the Psoc Creator app and it should load the project. You should be able to build and program the board from there.
The good news is that I've discovered a way to provide precompiled binaries, so with luck it shouldn't be necessary to build the firmware yourself soon.

Thanks David, will wait for the Binaries then :)

I mean 'soon' as in O(small number of weeks)! You probably want to build it yourself right now.

Okay, have opened FluxEngine.cyprj in the Psoc Creator and hit Program.  Things flash in the window (to quick to read) and ends with  sdb.M0052:Unable to find component "cy_boot_v5_80".

Urgh, it needs an update (Cypress keep changing things). Right click on the project, pick 'Update project', and follow the obvious prompts. Once done it should build.

Thanks, did the upgrade and saw cy_boot one of them updated and 2 others.  Ran Program again and a whole lot of stuff on screen flashed by and ended with a warning
sta.M0019:Warning-1366: Setup time violation found in a path from clock ( CyBUS_CLK ) to clock ( CyBUS_CLK ).
Is that okay ?  The blue led on the main board is now solid and not flashing.  Is that as expected?  Thanks, Alan

You should be good to go. Try the fe-testbulktransport step described in step 7 here: http://cowlark.com/fluxengine/doc/using.html (You don't need to have the board connected to a floppy disk drive.) It'll connect to the board and measure your USB bandwidth.

Okay, that tute says 7. Do .obj/fe-testbulktransport from the shell. It’ll measure your USB bandwidth.  I dont know what "the shell" is or how to run/access it.  What program do I run ?  Thanks Alan

You need to start the Cygwin console, build the client software there with the make command and then run the various client tools from the command line. I'm afraid that knowledge of the command line is required here; there's no GUI and everything's fairly rough edged.

Okay, copy folder in fluxengine-mater.zip to my cygwin work area.  Typed in make and get this error
ChickenMan@CHICKENMAN ~/fluxengine
$ make
meson .obj
process_begin: CreateProcess(NULL, meson .obj, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [.obj/build.ninja] Error 2
Reading under Building the Client, it says "You’ll need the sqlite3, meson and ninja packages "  How do I install those?
Thanks, Alan

Had a readup on Cygwin and to install those packages, its done via installation of Cygwin.  Anyway upgraded cygwin to the latest and selected the 3 packages to be installed also.  Then ran make again and get this error
ChickenMan@CHICKENMAN ~/fluxengine
$ make
meson .obj
process_begin: CreateProcess(NULL, python3 D:\cygwin\bin\meson .obj, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [.obj/build.ninja] Error 2
Python3 is also installed.  What do you think the problem could be ?  Thanks, Alan

Did you install the cygwin version of python3 or a third-party one? Also, one thing the docs should make clearer is that on Cygwin you need the -devel versions of the packages (they contain the files needed to build against them, rather than just run precompiled binaries).

Python3 installed automatically when Cygwin was installed.  I just installed the 32bit version from https://www.cygwin.com/  I cant seam to find anything about a -devel version, where can I get that from?
Thanks, Alan

Running the cygwin setup program will give you a list of available packages you can install (or remove, or upgrade). The UI is terrible but it does sort of work. See https://cygwin.com/cygwin-ug-net/setup-net.html#internet-setup for the documentation.

Thanks David, thats exactly what I did and you right the UI is terrible.  I just tried un-installing and re-installing the 4 in question, sqlite3, meson, ninja and python3. Unfortunately I get the same error.  I have these version installed
cygwin 3.0.7-1
meson  0.49.2-1
ninja 1.9.0-1
sqlite3 3.28.0-1

Remember you need the sqlite3-devel package (and, possibly, the libusb-devel package?).
Can you run python3 from the command line?

I installed everything starting with sqlite3 and also libusb-devel packages.  Same error.  Python3 runs fine from the command line.
If it type in meson .obj, I get
ChickenMan@CHICKENMAN ~/fluxengine
$ meson .obj
The Meson build system
Version: 0.49.2
Source dir: /home/ChickenMan/fluxengine
Build dir: /home/ChickenMan/fluxengine/.obj
Build type: native build
Project name: fluxclient
Project version: undefined
meson.build:1:0: ERROR:  Compiler gcc can not compile programs.
A full log can be found at /home/ChickenMan/fluxengine/.obj/meson-logs/meson-log.txt
and the meson-log.txt file reads
Build started at 2019-06-27T09:12:09.836446
Main binary: /usr/bin/python3
Python system: CYGWIN_NT-10.0-WOW
The Meson build system
Version: 0.49.2
Source dir: /home/ChickenMan/fluxengine
Build dir: /home/ChickenMan/fluxengine/.obj
Build type: native build
Project name: fluxclient
Project version: undefined
Sanity testing C compiler: gcc
Is cross compiler: False.
Sanity check compiler command line: gcc /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c -o /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.exe
Sanity check compile stdout:

Sanity check compile stderr:
gcc.exe: error: /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c: No such file or directory
gcc.exe: fatal error: no input files
compilation terminated.

meson.build:1:0: ERROR:  Compiler gcc can not compile programs.
Thanks, Alan

Well, it's an improvement... at least meson's running now.
Try deleting the fluxengine/.obj directory and trying again; also, meson is saying that it's created a  /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c file, but gcc says it's not there, so it's worth checking that meson is properly creating it.

The .obj folder did contain a sanitycheckc.c file whos contents was
int main(int argc, char **argv) { int class=0; return class; }
I deleted the .obj folder and ran MAKE again, it produced an .obj folder but this time its empty :(
Thanks, Alan

Okay, so this is really weird --- it looks like gcc is failing to see the files which Cygwin has created!
The most plausible explanation for this is if you have a non-Cygwin gcc which for some reason is being used in preference to the Cygwin ones. This was why I asked about Python3 earlier. But Cygwin shouldn't actually let that happen.
Can you compile that sanitycheck.c program manually from the command line? gcc /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c? If that fails too, try which gcc and see which one it's finding.

Okay, I ran the command line above and got
ChickenMan@CHICKENMAN ~/fluxengine
$ gcc /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c
gcc.exe: error: /home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c: No such file or directory
gcc.exe: fatal error: no input files
compilation terminated.
I then included d:/cygwin in the command line and got no error
ChickenMan@CHICKENMAN ~/fluxengine
$ gcc D:/cygwin/home/ChickenMan/fluxengine/.obj/meson-private/sanitycheckc.c
ChickenMan@CHICKENMAN ~/fluxengine
I then did a which gcc
$ which gcc
/cygdrive/d/Strawberry/c/bin/gcc
ChickenMan@CHICKENMAN ~/fluxengine
I just copied the FluxEngine folder to my Cygwin normal work area, do I have to give it any special Read/Write permissions or anything like that ?
Thanks, Alan

Right! What's happening is that it's picking up the non-cygwin gcc (in D:/Strawberry), rather than the Cygwin version (in D:/cygwin/usr/bin), which doesn't have the modifications needed to work under cygwin. If you do echo $PATH you will probably see /cygdrive/d/Strawberry/c/bin appear before /usr/bin.
The quick fix is straightforward: rename D:/Strawberry to D:/Not.Strawberry, so that Cygwin can't find it. The longer term fix is to adjust your Cygwin path so that /usr/bin appears first.
Cygwin is a mess.

I renamed my D:|Strawberry folder and then which gcc cant find any at all.  So I re-installed cygwin adding gcc so a which gcc produces
$ which gcc
/usr/bin/gcc
So thats sorted. I then deleted the .obj folder and ran make again, unfortunately I still get the same error and .obj is empty :(
$ make
meson .obj
process_begin: CreateProcess(NULL, python3 D:\cygwin\bin\meson .obj, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [.obj/build.ninja] Error 2
Thanks, Alan

I did a which xxx with xxx being the extra programs needed to be installed.  All good except for libusb which cant be found.  Re-installed cygwin but it says its already install, so I installed everything that started with libusb.  Still cant be found :(

Sorry for the delay --- I've actually done a big update and changed the way the build system works to be a lot simpler. You don't need meson any more, which should help, and the definitive list of Cygwin packages you need is:
libsqlite3-devel, ninja, zlib-devel, libusb1.0-devel
(I know this because I now have it building on the continuous integration servers, and here's the log for proof: https://ci.appveyor.com/project/davidgiven/fluxengine)
I'm also going to attempt to generate precompiled binaries which can just be installed somewhere and which don't require Cygwin, because you really shouldn't have to go through this; but that'll take a little while to make work.

Thanks for that, I will grab the new update, add in a couple of the new packages for Cygwin and give it a go this afternoon when home.
Pre-compiled binaries is the way to go in my opinion for your project to really "take off". The average Windows user can run the binaries but trying to generate them and with Cygwin, is a MAJOR learning curve filled with lots of problems, as seen in my experience.  I look forward to their arrival :)
Thanks, Alan

Woo hoo, the new script compiled with no issues :)
ChickenMan@CHICKENMAN ~/fluxengine
$ make
MKNINJA .obj/build.ninja
[108/108] STRIP fluxengine-debug
Plugged the hardware in via the small usb and tried, as you suggested, "Try the fe-testbulktransport step described in step 7 " with  fluxengine testbulktransport from the shell and get this error
ChickenMan@CHICKENMAN ~/fluxengine
$ fluxengine testbulktransport
bash: fluxengine: command not found
But there is a fluxengine.exe file in the fluxengine folder. Its 578,574 bytes long.
I think I might just wait for your installable binaries :)
Thanks, Alan

You need to type: ./fluxengine
The current working directory isn't on the path in Unix.
https://superuser.com/questions/156582/why-is-not-in-the-path-by-default

Arrr... thanks, yep that worked and I get 749 kB/s :)   Now I need to set up a drive and image an IBM disk to start with.
Thanks, Alan

Reading the docs, 749 kB/s might be a bit slow, so tried other USB ports and they all give "cant find FlugEngine (is it plugged in?)"   Yes its plugged in and Windows has it registered in Device Manager.  Is this yet another Cygwin/Linux quirk ?
Thanks, Alan

I've had this a lot working with microcontrollers and Windows. Try rebooting if you haven't - that almost always fixes it for me.

Good news! There's now a precompiled version of the new FluxEngine client for Windows downloadable from the GitHub releases page at https://github.com/davidgiven/fluxengine/releases/latest. This will (should) be automatically updated whenever things change.
It hasn't had a lot of testing.

Fantastic, a bit tied for a couple of days but will test out asap, many thanks :)  Alan

Finally gave it a run,
fluxengine testbulktransport still gives me 749k/s
fluxengine rpm gives me 300 rpm
fluxengine read ibm  read a blank 1.44mb ibm formated disk in a Sony 920 floppy with no errors
1.14 ................................................................................
1.15 ................................................................................
1.16 ................................................................................
1.17 ................................................................................
Good sectors: 2880/2880 (100%)
Missing sectors: 0/2880 (0%)
Bad sectors: 0/2880 (0%)
80 tracks, 2 heads, 18 sectors, 512 bytes per sector, 1440 kB total
G:\FluxEngine>fluxengine rpm
Rotational period is 200 ms (300 rpm)
G:\FluxEngine>
I tried it on a MS Mouse drivers disk and if read to an ibm.img file (though 2 bad sectors) and looking at it with a HexEditor, it all looks great.
Also tried an MS-DOS 6.22 Disk 1 and got a clean error free image again.  So looking good for IBM disks.
Now to read some Microbee CP/M floppies.  The main 3 styles of disks are

80 track double sided 10 sector/tr 512 b/s,
80 track Single sided 10 sector/tr 512 b/s
40 track double sided 10 sectors/tr 512 b/s

What do I need to type in to image these to a Flux file ?
Thanks, Alan

Fantastic.
So, for the Microbee formats: apparently they're standard IBM scheme, so the first thing to try is fluxengine read ibm on them. For the single sided disk you'll want -s :s=0 and for the 40 track disk you'll want -s t=0-79x2 or -s t=1-79x2 (one of these will give a better read than the other). Almost everything else should be autodetected. One thing which can't be autodetected is whether the sector numbers start with 0 or 1, so if you see a disk with nine sectors per track try --sector-id-base=0.
However, bear in mind that CP/M can also applies sector skew in software, so that logical sector 1 isn't necessarily stored in physical sector 1. This information isn't stored on the disk anywhere and FluxEngine can't help with that (and isn't intended to). It's the job of whatever tool you use to extract files from the disk image to handle that --- I use cpmtools for this, and it does actually support Microbee disks.
Some Microbee disks apparently used different sector numbering on different tracks (from https://github.com/keirf/FlashFloppy/issues/105). This will need custom code to handle...

I tried a couple of standard Microbee single sided 80 tr 3.5" disks (SS80) with
fluxengine read ibm -s :s=0
and I can load the images into ubee512 emulator with all files seen and can run and can be extracted :) .  Fantastic.  I'm sure the 40 tr 5.25" disks will be the same, will test later though.
Your right with some disks (the DS80) have first 5 tracks sectors 1 to 10 then 6 to 79 sectors start at 21.  Microbee also produced many copy protected disks, they are 40 tr single sided with sectors 1 to 10 except track 5 which has sectors 0 to 9.  I tried one of these but bytes/sector was sen as 1024 bytes and not 512 so final file is 400kb when it should be 200kb.
39.0: 210 ms in 76864 bytes
60 records, 30 sectors; 2.06us clock;
Failed to read sector 3 (bad checksum);
giving up
logical track 39.0; 5120 bytes decoded.
H.SS Tracks --->
0. 0 ........................................
0. 1 ........................................
0. 2 ........................................
0. 3 .......................BBBB.......BBBBBB
0. 4 ........................................
0. 5 .....XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0. 6 .....XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0. 7 .....XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0. 8 .....XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0. 9 .....XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Good sectors: 215/400 (53%)
Missing sectors: 175/400 (43%)
Bad sectors: 10/400 (2%)
40 tracks, 1 heads, 10 sectors, 1024 bytes per sector, 400 kB total
G:\FluxEngine>
CPMTOOLS works with Microbee DS40 disks (double sided 40 tr 5.25") only and does not with SS80 or DS80 disks.  But there is a patched cpmtools that can access them all.
So some great success, will try a few more tomorrow :)  Thanks, Alan

The algorithm for the final image used is to pick the maximum sector size and sector count on the disk. So that DS80 disk looks like there are five tracks of 512 byte sectors and then the rest is 1024 byte sectors. The output image will have each 512 byte sector padded with zeroes to make them 1024 bytes long, while tracks 6 and above will be padded with zeroes to make them ten sectors long.
This is unfortunate but it's the best I could do at the time. Handling this better is on my list of things to do.

Okay, no problems, I'm sure its operation will improve with time :)
One question, the fluxengine read ibm produces an ibm.img file, is there any way to allow you to name the output file.  If I have a dozen disks to image, I have to image one disk, then rename the ibm.bin file, before imaging the next, otherwise it gets over written?
Thanks, Alan

Just tried imaging a Microbee 5.25" 40 double sided disk.  I've tried both 360kb 40 tr and a 1.2mb 80 tr drives (double stepping the latter) and get same results.  It reads side 0 okay but fails side 1 with
2.0: 174 ms in 79360 bytes
20 records, 10 sectors; 1.75us clock;
logical track 1.0; 5120 bytes decoded.
2.1: 174 ms in 81728 bytes
20 records, 10 sectors; 1.75us clock;
logical track 1.0;
multiple conflicting copies of sector 0 seen;
multiple conflicting copies of sector 1 seen;
multiple conflicting copies of sector 2 seen;
multiple conflicting copies of sector 3 seen;
multiple conflicting copies of sector 4 seen;
multiple conflicting copies of sector 5 seen;
multiple conflicting copies of sector 6 seen;
multiple conflicting copies of sector 7 seen;
multiple conflicting copies of sector 8 seen;
multiple conflicting copies of sector 9 seen; 5120 bytes decoded.
I suspect the problem to be that both side 0 and side 1 are designated as side 0.  Thats another issue for your to-do list :)
Thanks, Alan

Argh. Yes, looks like the Microbee used the same head number on both sides of the disk. I haven't seen an IBM scheme disk that did that... it's either a very easy fix or a moderately complex one, and because it's all the generic IBM decoder it'll affect lots of formats.

Hi David,  another question please if I may, can FluxEngine read Kryoflux RAW Stream files to an IMG ?  I tried
G:\FluxEngine>fluxengine read ibm -s track00.0.raw:t=0-79
Reading from: track00.0.raw:d=0:s=0-1:t=0-79
Error: unrecognised flux filename extension
With track00.0.raw the first of 160 files.
Thanks, Alan

Yes --- but you need to point it at the directory containing the track files, not the track file itself. There are also some rough edges of you refer to a track which isn't present, so be careful with the t= clause.

Thanks, I put all in a folder called vista_mitsu_055 in my FluxEngine folder and tried
G:\FluxEngine>fluxengine read ibm -s vista_mitsu_055
Reading from: vista_mitsu_055:d=0:s=0-1:t=0-79
Error: unrecognised flux filename extension
If I used the full path to the folder I get
G:\FluxEngine>fluxengine read ibm -s g:\FluxEngine\vista_mitsu_055
Error: invalid data modifier syntax '\FluxEngine\vista_mitsu_055'
Oh, and these are Exidy Sorcerer disks with Vista controller files from a friend.
Thanks, Alan

Okay, eventually got things to happen with
G:\FluxEngine>fluxengine read ibm -s /fluxengine/vista_mitsu_055/
Reading from: /fluxengine/vista_mitsu_055/:d=0:s=0-1:t=0-79
0.0: 1208 ms in 470781 bytes
0 bytes decoded.
0.1: 1208 ms in 446952 bytes
0 bytes decoded.
1.0: 1204 ms in 456297 bytes
0 bytes decoded.
1.1: 1209 ms in 432713 bytes
0 bytes decoded.
.
.
.
79.0: 1199 ms in 438232 bytes
0 bytes decoded.
79.1: 1214 ms in 226555 bytes
0 bytes decoded.
H.SS Tracks --->
No sectors in output; skipping analysis
0 tracks, 0 heads, 0 sectors, 0 bytes per sector, 0 kB total
but no decoding and a 0 byte ibm.img.
I think these are from Hard Sector disks so thats probably the problem.
Thanks, Alan

Yep, looks like a custom format --- that'll need it's own decoder. Unless it's the same as one of the existing formats!
I see this: https://forum.kryoflux.com/viewtopic.php?t=1354
If you can share the files with me I can have a look, but it'll be a while before I can get to it. OTOH you're welcome to have a go yourself! Hard sector formats are pretty easy to decode; take a look at one of the existing decoders...

BTW, you can combine --write-flux with Kryoflux streams.
$ fluxengine read ibm --just-read --write-flux=out.flux -s some/kryoflux/stream/

...will convert the Kryoflux stream to a flux file, which is both smaller and easier to send.


OS X Finder integration stopped working

The Finder integration for Mac OS X Keybase stopped working: even after trying to reinstall or delete previous one message "Inaccessible"
[edit] System: High Sierra

Same here. System is macOS High Sierra 10.13.6

I have same problem on 10.13.6
Version 5.6.2-20210202191343+d72cc00cd3 (5.6.2-20210202191343+d72cc00cd3)

Same here, Mac OS 10.13.3
keybase version 5.6.2-20210202191343+d72cc00cd3

Chalk me up too.
Version 5.6.2-20210202191343+d72cc00cd3

Big thanks to the busy devs working on Keybase!  While the devs are looking in to this,  I wonder if it might be good to downgrade to get things working on 10.13.x again
Two questions for the community:

Has anyone tried downgrading to 5.6.1 on Mac OS X 10.13.6 (High Sierra) to see if it works again?  Havent had a chance to try that yet.

Just took a look and I can't find any "old releases" area to download from - anyone know where we can find older versions of the Keybase installer?

I haven't found any older DMG installers.  Probably have to compile from source using a release in this repo

I found this link https://s3.amazonaws.com/prerelease.keybase.io/darwin-test/Keybase-3.1.0-20190222221649%2B4186f5ddd6.dmg
and downgraded to that version and it does fix the issue for me on 10.13

I found this link https://s3.amazonaws.com/prerelease.keybase.io/darwin-test/Keybase-3.1.0-20190222221649%2B4186f5ddd6.dmg
and downgraded to that version and it does fix the issue for me on 10.13

This previous version fixed the problem on High Sierra (10.13.6), thank you!

Big thanks to the busy devs working on Keybase! While the devs are looking in to this, I wonder if it might be good to downgrade to get things working on 10.13.x again
Two questions for the community:

Has anyone tried downgrading to 5.6.1 on Mac OS X 10.13.6 (High Sierra) to see if it works again?  Havent had a chance to try that yet.
Just took a look and I can't find any "old releases" area to download from - anyone know where we can find older versions of the Keybase installer?

Ditto on the thank yous... @bryanlandia (below) provides a link that leads to a useful .dmg.

Is there a way to prevent auto-upgrade of the Keybase client? I can confirm the above works on High Sierra, but soon updates itself to the latest release and thus breaking itself once again.

Hello. This is intended for Jamie Shaw.
I finally checked the High Sierra computer, and this is what I found (see
image attachment). I of course de-select "Update automatically" and clicked
"Ignore." Time will tell if the prompt keeps returning, but it appears my
installation is set to give me the option to upgrade. Unfortunately, I do
not know what I did, long ago, to enable that.
Louis
On Fri, Mar 19, 2021 at 5:23 AM Jamie Shaw @.***> wrote:

Is there a way to prevent auto-upgrade of the Keybase client? I can
confirm the above works on High Sierra, but soon updates itself to the
latest release and thus breaking itself once again.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/keybase/client/issues/24447#issuecomment-802762123,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABYUTMJPUQJH6TRXETELAZTTEMX3PANCNFSM4XEW7LHQ
.

Hello. This is intended for Jamie Shaw.
I finally checked the High Sierra computer, and this is what I found (see
image attachment). I of course de-select "Update automatically" and clicked
"Ignore." Time will tell if the prompt keeps returning, but it appears my
installation is set to give me the option to upgrade. Unfortunately, I do
not know what I did, long ago, to enable that.
Louis
On Fri, Mar 19, 2021 at 5:23 AM Jamie Shaw @.***> wrote:

Is there a way to prevent auto-upgrade of the Keybase client? I can

confirm the above works on High Sierra, but soon updates itself to the

latest release and thus breaking itself once again.

—

You are receiving this because you commented.

Reply to this email directly, view it on GitHub

https://github.com/keybase/client/issues/24447#issuecomment-802762123,

or unsubscribe

https://github.com/notifications/unsubscribe-auth/ABYUTMJPUQJH6TRXETELAZTTEMX3PANCNFSM4XEW7LHQ

.

Thanks. Seems at some point in the past I'd toggled "Update Automatically" and this has stuck.
If anyone else finds this; looks like the fix is removing "updated.json" from ~/Library/Application Support/Keybase – this is read by Sparkle.

Thank you! I'll poke around. Louis
On Wed, Jan 5, 2022 at 6:01 AM Jamie Shaw @.***> wrote:

Just revisited this issue — and tried to see if anything has changed.
First off, version 5.5.0 seems to be the last version that can be
installed. That can be found here:
https://s3.amazonaws.com/prerelease.keybase.io/darwin-test/Keybase-5.5.0-20200521003739%2B81c4d272a6.dmg
Secondly, it seems that the kbfuse.kext Filesystem extension that is
included in the installer for later editions simply drops support for
versions before 10.14. Digging through the Extensions directory listed in
/Library/Filesystems/kbfuse.kext shows that the references to 10.13 have
been dropped, and only include 10.14 onwards (in comparison to macfuse
which extends back to 10.9).
—
Reply to this email directly, view it on GitHub
https://github.com/keybase/client/issues/24447#issuecomment-1005665888,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABYUTMMUPHIVT5VAI3M3GGDUUQ6KJANCNFSM4XEW7LHQ
.
You are receiving this because you commented.Message ID:
@.***>


6.0 Epic

[x] Upgrade to .NET 6
[x] Upgrade all libraries to latest
[x] Use latest Microsoft images
[ ] use latest C# features
[ ] Dynamic PGO
[ ] EnableSingleFileAnysis On

God... DateOnly cannot work with ASP.NET Model Binding at all.... Why Microsoft create a new thing but didn't make it work!
https://github.com/dotnet/runtime/issues/53539
Will continue to use DateTime now.


nit: arg order, naming

https://github.com/oasislabs/deoxysii.js/blob/6c2872b41c6811f0a49e897e19200b90ba2f110a/deoxysii.js#L568
feel free to ignore/close.  this is just a nit.  deoxysII doc https://competitions.cr.yp.to/round3/deoxysv141.pdf Alg 4 has argument order N, A, C, tag, but we have nonce, ciphertext, associated-data (N, C, A), because we have added the tag to the end of the ciphertext output in encrypt.  this matches the golang code, except there dst is a sliceForAppend and so an additional arg, and the functions are named Seal and Open.
encrypt in the pdf (Alg 3) is N, A, M, but in js it is nonce, plaintext, assocatedData (N, M, A).  which is consistent with the golang implementation.
do we want to have naming consistency w/ the golang code?  do we want to have argument order consistency with the defining document (vs golang)?  the code is not hard to read, but could lead to careless errors.  we have argument order consistency w/ golang right now but naming is not.  the pdf is  latex amsmath, so... whatever.  is there a js AEAD interface that really want encrypt and decrypt names?

Closing this as it's been a few years and it would be a pain to change the argument order for no significant gain.


[Platform] Read and Advance once per parse loop

Rather than Reader.AdvanceTo for every request in the input; only Advance the Reader once all the input has been processed (e.g. 1 once per loop rather than 16 times per loop for pipelined)
Rather than Reader.ReadAsync for every request in the input; only Read for more data once all the input has been processed (e.g. 1 once per loop rather than 16 times per loop for pipelined)
/cc @davidfowl @sebastienros

https://github.com/TechEmpower/FrameworkBenchmarks/pull/3745


Access denied

Hi,
I've just upgraded my OS (from Kubuntu 17.04 to 17.10) and no Google Drive is giving permission errors.
I can copy files to and from Google Drive but if I try to delete, rename or move a file I get an "access denied" error.
It doesn't make any difference if Ioad google-drive-ocamlfuse manually or using a startup script.
So I tried using fstab to mount the drive but this gives the error "gdfuse not found".
Perhaps the problems are related, do you have any suggestions?
Thanks
Nick

Are the userid/groupid of your user changed after the upgrade?

No my uid and gid are still 1000

Have you already tried restarting from scratch? (Removing ~/.gdfuse/default and reauthorizing the app?)

Yes. I created a new profile.
OK you will be happy to hear the problem is definitely to do with permissions on my system and not google-drive-ocamlfuse. I tried to do the same operations on some files in another directory on Google Drive and there was no error.
I've just done a detailed check on all the files and directories. For some reason all the files in just one directory are assigned to "nogroup". This is why I'm getting the error.
Now I need to work out why or how this happened in the first place.
Thank you for your help, the userid/groupid comment was very useful. Sorry for wasting your time!
Nick


Is there a way to "Preview" the generated javascript?

Hi,
Forgive me if this functionality is already there. I'm new to Atom, and coming from SublimeText, I had a nifty little command called babel_transform which I had bound to ctrl+b. Whenever I was writing es6 or JSX code, and wanted to see what that code compiled down to, I'd just press the shortcut and Sublime would show me the compiled file (as a temp file) in a new tab. This is super-useful as I can very quickly find bugs or typos in my code.
Does this tool have that functionality? If not, would you consider adding it in?

Just added the preview option in 2.12.0. language-babel acts as a  provider to another package - source-preview which must be v4.0 or greater.  source-preview provides a command Source Preview Toggle 0On on the first toggle it activates the program and on subsequent toggles displays a preview window for the current source code.


refactor: DML executors should not returns affected_rows as result set

Currently, Insert/Delete/UpdateExecutor are batch executors with the following schema:
schema: Schema {
    fields: vec![Field::unnamed(DataType::Int64)],
},

This is not reasonable. Considering this example (just for illustration, not supported it yet):
WITH upd AS (
  UPDATE employees SET sales_count = sales_count + 1 WHERE id =
    (SELECT sales_person FROM accounts WHERE name = 'Acme Corporation')
    RETURNING *
)
INSERT INTO employees_log SELECT *, current_timestamp FROM upd;

This query is correct because PG allows an insert RETURNING the updated rows.
However, if you remove the RETURNING *  clause.
WITH upd AS (
  UPDATE employees SET sales_count = sales_count + 1 WHERE id =
    (SELECT sales_person FROM accounts WHERE name = 'Acme Corporation')
)
INSERT INTO employees_log SELECT *, current_timestamp FROM upd;

This is an illegal query because the update returns nothing. But in our current design, a single row with one column will be returned as upd, which makes this query able to run. That's wierd.
Expected
To fix that, we have to design a mechanism to return the affected_rows to users, and remove the schema ([DataType::Int64]) of those DML operators.

This is not reasonable to me. Whether a sql statement is valid should be check by parser/binder/analyzer, not simply a return type. If we don't return affected row count, how do we return it pg client?

To fix that, we have to design a mechanism to return the affected_rows to users


Requirements should include the browser

AFAIK and from https://caniuse.com/web-bluetooth this is only on chromium based browsers.

Added requirement. This settings page doesn't require web-bluetooth though - the backend takes care of BLE connection.

Ah my bad, thought it was all done via the browser. Thanks for the clarification, cool work!


typescript-type-graphql plugin should have option to filter types to annotate

The @graphql-codegen/typescript-type-graphql plugin generates types in a very similar fashion to @graphql-codegen/typescript. However, it will annotate all types with TypeGraphQL decorators. The plugin currently annotates all types, which leads to two problems:

It easily leads to duplicate type definitions, which are prohibited in GraphQL. Especially when the number of interdependencies between several GraphQL services increases, there is a high risk of re-exposing the same types twice, immediately leading to non-compiling code.
As all annotated types are re-exposed by TypeGraphQL, types may be exposed externally when they are not supposed to.

Describe the solution you'd like
It would be nice if the typescript-type-graphql plugin would have a filter option that would add decorator only to the types that match the filter. When the filter option is not supplied it would work similar to how it works at the moment.
Describe alternatives you've considered
One of the alternatives to using graphql-codegen to pass types downstream would be to use Apollo Federation. However, Apollo Federation as of yet does not support subscriptions, which is an essential part of our infrastructure. Also, Apollo Federation is only meant for federation, while there are other conceivable situations where passing types downstream is desirable.

Fixed in<EMAIL_ADDRESS>(thanks @borremosch )