Pressing space 2 times "." appears in the Input (double-tapping Double-space feature)

Description
On iOS, I'm encountering an issue with the TextInput component in React Native. When using the "value" prop and typing two consecutive spaces, a dot is not being automatically added. However, if I remove the "value" prop, the double-space feature works as expected. Additionally, it works correctly when I keep (or remove) the "value" prop and set the "multiline" prop to "true".
I have attempted to investigate the source code to understand where the space is replaced by the dot, but I couldn't locate the specific implementation. Furthermore, I'm unsure about the differences between the MultilineInput and SinglelineInput components and whether UITextField and UITextView behave differently internally.
I would appreciate guidance on where to look in the source code or clarification on whether this behavior is intentional and not a bug.
Here is where the conversation started: https://github.com/Expensify/App/issues/17153
Also found that this was reported some time ago: https://github.com/facebook/react-native/issues/22078
On web it works
React Native Version
0.71.0
Output of npx react-native info
System:
OS: macOS 12.6.5
CPU: (10) arm64 Apple M1 Pro
Memory: 96.69 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.15.1 - ~/.nvm/versions/node/v16.15.1/bin/node
Yarn: 1.22.19 - ~/.nvm/versions/node/v16.14.0/bin/yarn
npm: 8.11.0 - ~/.nvm/versions/node/v16.15.1/bin/npm
Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.12.1 - /Users/eduardograciano/.rbenv/shims/pod
SDKs:
iOS SDK:
Platforms: DriverKit 22.2, iOS 16.2, macOS 13.1, tvOS 16.1, watchOS 9.1
Android SDK: Not Found
IDEs:
Android Studio: 2022.1 AI-221.6008.13.2211.9619390
Xcode: 14.2/14C18 - /usr/bin/xcodebuild
Languages:
Java: 11.0.18 - /usr/bin/javac
npmPackages:
@expensify/react-native:  0.71.2-alpha.3
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: Not Found
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce

Create a new react-native project
Run the app in an iOS Simulator
Place a TextInput component
Set the value prop

const [text, setText] = useState('');

return <TextInput
            onChangeText={setText}
            value={text}
          />

Snack, code example, screenshot, or link to a repository
https://snack.expo.dev/@educallstackdev/bug-double-space-textinput

In an uncontrolled component (no value) text replacement is done by the system. In a controlled component, JS sends the value to native, which is used to set the set. First step would be debugging the flow of text changes flowing from JS to native for the controlled component.

Yes, I'm looking at the native side.
Looking at some methods and trying to get when the "." replaces one of the spaces (when no value prop) and why the "." isn't being replaced when no value prop.
Over this method nothing happens
textField:shouldChangeCharactersInRange:replaceString

but in this method the string already has the "."
textViewDidChange

I'm thinking there is something different in between.
like:
without value prop
textField:shouldChangeCharactersInRange:replaceString -> textViewDidChange (has dot)
with value prop
textField:shouldChangeCharactersInRange:replaceString -> something prevents addition  ->textViewDidChange (no dot)
Still looking into

Fix working with dynamic styling
https://github.com/facebook/react-native/assets/1676818/71229cb9-0e6d-4e87-bea5-b486f63f39f7

Fix is working with @@ shortcut
https://github.com/facebook/react-native/assets/1676818/3c110558-d8fd-46b0-9e2e-ef7575b7852d

If you think you have a solution I would recommend starting with a draft PR so someone on the team can take a look, with the context around of the functions, lines, etc you are mentioning 🙂.

Do you still experience this issue?
I have four years of experience maintaining facebook/react-native and I specialize in the Text and TextInput components. I currently have 58 facebook/react-native PRs.
If you still experience this issue, I will prepare a patched release with the fix.
Thanks a lot

@fabriziobertoglio1987 Hey, yes it is still an issue, and I created a PR with some integration tests: https://github.com/facebook/react-native/pull/39385

@fabOnReact Can you help on the review of the PR? https://github.com/facebook/react-native/pull/39385

This is still an issue.


[PicukiBridge] Displays Instagram Posts

An alternative Instagram Bridge

Since Picuki supports it, you should maybe also add Storys...

Please fix linting https://github.com/RSS-Bridge/rss-bridge/pull/2183/checks?check_run_id=2952455478

gj!

@marcus-at-localhost any plans to add stories as @dhuschde suggested? If not, I suggest to @dhuschde to make an feature request as an issue.

Thanks @em92!
Honestly, I can't find any stories at picuki :)

You can find them by going to https://www.picuki.com/profile/zeo_youtube (Or any other person with Stories) and then click on "Stories"


Feature Request: make title bar black

Hello,
First: Cool project! One small change that would improve the visuals imo: the titlebar right now is grey. If you scroll Netflix, the Netflix-title-bar (with search, browse, etc.) is always black, so wouldn't it make sense to make the app-title-bar also black to merge it with the Netflix-title-bar and have a nice and consistent look (and an "vanishing title bar")?
Greetings

Thanks! (…and sorry that it's taken so long to respond to your request!)
The overall look of the titlebar is/has been a conscious choice on my part, so I'm not really looking to change how it appears on a wholesale basis. I wouldn't necessarily say no to a preference similar to the Keep in Front/Snap to Corners options, though. Perhaps "Use Opaque Titlebar"? I'll leave the issue open to remind me to tackle this when I next get a minute.
OOC: I should probably consider actually setting up a preferences pane for this stuff going forward 🤔
With that in mind, the most recent release has some tweaks to the titlebar that would possibly make this easier to accomplish.  Right now the alpha of the colour overlay I've added is at 0.4, but by setting it to 1.0, you should get roughly the effect you're expecting (Netflix's headers aren't quite pure black, though… they're actually #090909):
https://github.com/jellybeansoup/macos-netflix/blob/c995770d54bac9ac808eab5fe9fe49f0fe210e77/Netflix/Classes/TitleView.swift#L28-L32


Together mode client state and subscriber implementation

What
This PR contains implementation of together mode  client state changes and the event listener for together mode stream updates
Why
This is needed as part of together mode UI integration. The listener will be used to notify UI when together mode is started from remote participants
How Tested
Did a local build to ensure the build passes. Also included conditional build tags to ensure together mode development doesnt block releases
Process & policy checklist

[ ] I have updated the project documentation to reflect my changes if necessary.
[ ] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

Run rush changelog to generate a changelog file. As this feature is in alpha/beta, choose "prerelease" as the change type, and enter Together Mode for the workflow. Then for the change entry enter what you would like to see showing on a changelog file


Update README.md with MADE WITH badges for node.js, django and react

Description
Add badges to the top of README.md just after the existing IOT badge with the requested style, including logos and links to each badges respective homepage
Fixes #68 (issue)
Type of change

[X] Bug fix (non-breaking change which fixes an issue)

Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Any dependent changes have been merged and published in downstream modules

Reviewer: Vinit Shahdeo

@PragatiVerma18 this updated PR looks good to me. please can you review again.

Please make the pull request to feature/documentation branch so that I can merge it.

@mikeg1440 please make the PR to the feature/documentation branch. We are not accepting changes to the develop or master branch during gssoc.


Remove mapper logic from core

@solnic Hope this attempt is the one.
Move logic for creating mappers from rom-core to mappers, by using the plugin system

This is cool. I'll merge this in but there will be another small task related to this. I'll report it shortly.


conf generate command for v7 aerospike is missing an argument

Latest rc build test indicates that data-size inside the storage-engine is required, at least for in-memory namespaces. The conf generate command does not currently populate that.

Not exactly a bug, it's what happens when you code against evolving RC releases and builds. But needs to be fixed either way.


TSD is deprecated. Can you add Typings?

Check out https://github.com/Definitelytyped/tsd and you will see it says:
"DEPRECATED: TSD is deprecated, please use Typings and see this issue for more information."
Can you please add typings install to install modules from typings.json to be installed?
https://github.com/typings/typings

or just just use gulp-typings


Home Assistant Add-on

Trying to use one of the community base images (I've tried alpine, debian, ubuntu) along with the install from binary option to create an add-on for home assistant for the client.
However when I get to the point of trying to start the service it gives me 'exit status 1':
netbird service install
netbird service start
I'm wondering if there's any dependencies I need to get it running of if there's some special configuration I've got to do to get NetBird running inside a docker container.

Hello @dannymate sorry to hear that, just so I understand correctly, you are getting the error after installing the client on docker and running the service install and start commands?
If so, we have a official image with a distroless that you can reference netbirdio/netbird:latest  image. If you want to build a custom image, you can see a Dockerfile reference at https://github.com/netbirdio/netbird/blob/main/client/Dockerfile mainly the log file should point to console:
ENV NB_LOG_FILE=console
# or ENV WT_LOG_FILE=console

and the entrypoint:
ENTRYPOINT [ "/go/bin/netbird","up"]

Yes specifically the error occurs after running the netbird service start command.
I'll take a look again with this other image and see what I can do.

Alright I've managed to get it working. I'm not 100% sure what fixed it but I think because I was following the https://netbird.io/docs/getting-started/installation#binary-install guide and I was putting netbird in /usr/bin/netbird. After looking at the dockerfile you sent I switched the path to /go/bin/netbird instead and it seems to like that.
I've got the add-on working anyway can connect to HASSIO through netbird. I'm going to polish it up and see if I can submit it to the community app store.


plot_spikes_raster() error when no spikes occur

I can handle this if needed (since I wrote the function) but I figured this is a nice "good first issue" candidate.
At the moment cell_response.plot_spikes_raster() raises an error if no spikes occur during the simulation:

The fix would entail catching simulations with no spikes, and returning an empty list. Perhaps a warning would be nice as well notifying the user why their raster plot is empty.

I would say, go for it. We already have many "good first issues".
all this is great, it means hnn_core is becoming more and more stable with each issue fixed


None to Decimal error

(venv) v@ubuntu:~/PycharmProjects/python-http-broker-example/http-broker-example$ python http-broker-example.py ebea292f-c8a4-4da4-8ce5-72ecc6c8b34b XWC8279.001 --token RWfBuLKnd3aeYxrYM9mG
Traceback (most recent call last):
  File "http-broker-example.py", line 61, in <module>
    worker.run(args.instrument, args.quantity, args.grid)
  File "/home/v/PycharmProjects/python-http-broker-example/http-broker-example/libs/grid_broker_worker.py", line 114, in run
    mid = (self.dec(quote['bid']) + self.dec(quote['ask'])) / 2
  File "/home/v/PycharmProjects/python-http-broker-example/http-broker-example/libs/grid_broker_worker.py", line 62, in dec
    return decimal.Decimal(str(value))
decimal.InvalidOperation: [<class 'decimal.ConversionSyntax'>]

I think the error was due to the fact that the EUR/USD.E.FX did not bargain at the time when I ran it, but it would be nice to add information about this in the readme.

Thank you for the issue. You're right, quote feed might be unavailable when market is on schedule break.
We'll update endpoint description accordingly.


fix: make "effect" prop optional and create a type to allow type checking

Hi @hosein2398
This PR does 3 things:

Update minor deps
Make "effect" prop optional, as there is a default value ("simple")
Use a type to allow type checking. By doing this, TypeScript throws an error if the specified prop value is incorrect. This also enables intellisense in some editors:

Before this PR:

After:

Hope this helps!

Hi,
Sorry for the delay,
I will include these changes in the next version, thanks for your contribution


When using msvc2015-compiler that installed with msvc2019-ide, the default setting would cause compiling error

The using the -G "Visual Studio 14 2015 is invalid, at this case, should using ninja as default instead.
If ninja is not prenset, namek should be OK.
[main] Building folder: jerryscript
[kit] Patch Windows SDK bin path from C:\Program Files (x86)\Windows Kits\10\bin\x64 to C:\Program Files (x86)\Windows Kits\10\bin\10.0.20348.0\x64 for C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
[main] Configuring folder: jerryscript
[proc] Executing command: "C:\Program Files\CMake\bin\cmake.EXE" --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -Hc:/work/study/languages/typescript/jerryscript -Bc:/work/study/languages/typescript/jerryscript/build -G "Visual Studio 14 2015" -A win32
[cmake] Not searching for unused variables given on the command line.
[cmake] -- Selecting Windows SDK version  to target Windows 10.0.19044.
[cmake] CMake Error at CMakeLists.txt:16 (project):
[cmake]   Failed to run MSBuild command:
[cmake]
[cmake]     MSBuild.exe
[cmake]
[cmake]   to get the value of VCTargetsPath:
[cmake]
[cmake]     Microsoft(R) 生成引擎版本 4.8.4084.0
[cmake]     [Microsoft .NET Framework 版本 4.0.30319.42000]
[cmake] -- Configuring incomplete, errors occurred!
[cmake] See also "C:/work/study/languages/typescript/jerryscript/build/CMakeFiles/CMakeOutput.log".
[cmake]     版权所有 (C) Microsoft Corporation。保留所有权利。
[cmake]
[cmake]     生成启动时间为 2021/12/7 9:04:46。
[cmake]     节点 1 上的项目“C:\work\study\languages\typescript\jerryscript\build\CMakeFiles\3.22.0-rc2\VCTargetsPath.vcxproj”(默认目标)。
[cmake]     C:\work\study\languages\typescript\jerryscript\build\CMakeFiles\3.22.0-rc2\VCTargetsPath.vcxproj(14,2): error MSB4019: 未找到导入的项目“C:\Microsoft.Cpp.Default.props”。请确认 <Import> 声明中的路径正确，且磁盘上存在该文件。
[cmake]     已完成生成项目“C:\work\study\languages\typescript\jerryscript\build\CMakeFiles\3.22.0-rc2\VCTargetsPath.vcxproj”(默认目标)的操作 - 失败。
[cmake]
[cmake]     生成失败。
[cmake]
[cmake]     “C:\work\study\languages\typescript\jerryscript\build\CMakeFiles\3.22.0-rc2\VCTargetsPath.vcxproj”(默认目标) (1) ->
[cmake]       C:\work\study\languages\typescript\jerryscript\build\CMakeFiles\3.22.0-rc2\VCTargetsPath.vcxproj(14,2): error MSB4019: 未找到导入的项目“C:\Microsoft.Cpp.Default.props”。请确认 <Import> 声明中的路径正确，且磁盘上存在该文件。
[cmake]
[cmake]         0 个警告
[cmake]         1 个错误
[cmake]
[cmake]     已用时间 00:00:00.10
[cmake]
[cmake]
[cmake]   Exit code: 1
[cmake]
[cmake]
[cmake]
[kit] Patch Windows SDK bin path from C:\Program Files (x86)\Windows Kits\10\bin\x64 to C:\Program Files (x86)\Windows Kits\10\bin\10.0.20348.0\x64 for C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat

Are you saying that we're trying to use the Visual Studio 14 2015 generator instead of passing -T v140?  We have a known issue around generating kits with downlevel toolsets #694.  For this case, you currently have to create your own Kits with the toolset property set.
Closing as duplicate.


[hotfix-#948][jdbc] OracleSink writes to multi-table Column mapping error, causing write failure.

fix OracleSink writes to multi-table Column mapping error, causing write failure

为了规范起见，回退了之前的pr。新pr参考：https://github.com/DTStack/chunjun/pull/961


Documentation:  Standardize description text in reference page

Please select a category the issue is focused on?
No response
Let us know where something needs a refresh or put your idea here!
Currently, the descrioption text for datasets in the reference page is not always of the same structure. Can we agree on a convention and stick to it across all datasets (TA specific and not)?

@sadchla-codes could we also change the page title from Function Reference to  Dataset Reference please?

I'm also noticing something fishy going on here...

I'm also noticing something fishy going on here...

I will look into them @manciniedoardo


Demo %%bash cell route

@Madejski I added a new method for printing Hello World, see what you think!

Thanks!


Missing setSelectionRange

HTMLInputElement should also have setSelectionRange function.

Also selectionStart, selectionEnd, selectionDirection, setRangeText (maybe others); see https://html.spec.whatwg.org/multipage/input.html#the-input-element:concept-element-dom

Needs #86 to be fixed.
External contribution is welcome


Using a class that extends AbstractField as a field in an AbstractType is throwing an error.

I am using version v<IP_ADDRESS>.
I am trying to accomplish the following:
query {
   articleSummary(id:1) {
       title,
       body,
       article {
          id
       }
   }
}

I have an ArticleSummaryField.php:
class ArticleSummaryField extends AbstractField
{
    public function build(FieldConfig $config)
    {
        $config->addArgument('id', new NonNullType(new StringType()));
    }

    public function getType()
    {

        return new ArticleSummaryType();
    }

    public function resolve($value, array $args, ResolveInfo $info)
    {
        return [
            'title' => 'test title',
            'body' => 'test body',
            'article' => $args['id']
        ];
    }
}

Then the ArticleSummaryType.php:
class ArticleSummaryType extends AbstractObjectType
{
    public function build($config)
    {
        $config
            ->addField('title', new StringType());
            ->addField('body', new StringType());
            ->addField('article', new ArticleField());
    }
}

Then the ArticleField.php has the getType method return the ArticleType which has the id field.
However what i am getting is an error:
Fatal error: Uncaught Error: Call to undefined method ArticleField::getNullableType() in .../vendor/youshido/graphql/src/Execution/Processor.php on line 135

What seems to be happening is that when $targetField->getType() on line 135 in src/Execution/Processor.php is called its returning the ArticleField class, not the ArticleType class.
I would expect that to return the class as declared in the 'getType' method on the ArticleField class.
Am i going about this wrong for nesting fields? Or is there a bug in the library?

@chasen you should update your ArticleSummaryType.php:
class ArticleSummaryType extends AbstractObjectType
{
    public function build($config)
    {
        $config
            ->addField('title', new StringType());
            ->addField('body', new StringType());
            ->addField(new ArticleField());
    }
}

But I'd suggest using a shorter syntax:
class ArticleSummaryType extends AbstractObjectType
{
    public function build($config)
    {
        $config->addFields([
            'title' => new StringType(),
            'body'  => new StringType(),
            new ArticleField(),
        ]);
    }
}

Aw perfect! thank you for the fast response!

@viniychuk Follow up question, how would I accomplish nesting a FieldClass in a a list type?
$config->addFields([
    'title' => new StringType(),
    'body'  => new StringType(),
    'relatedArticles' => new ListType(new ArticleField()),
]);

Fatal error: Uncaught Error: Call to undefined method ArticleField::isInputType() in .../vendor/youshido/graphql/src/Type/ListType/AbstractListType.php on line 38

@chasen Sure, just so you know, there's no such thing as a list of fields :)
So you should have a type which is a list of other types. And to do so:
$config->addFields([
    'title' => new StringType(),
    'body'  => new StringType(),
    'relatedArticles' => new ListType(new ArticleType()),
]);

Or you can create a field of related articles (wouldn't recommend unless you can reuse it somewhere):
$config->addFields([
    'title' => new StringType(),
    'body'  => new StringType(),
    new RelatedArticlesField()
]);

Or you can create an ArticlesList type by extending AbstractListType (also don't see a reason, unless your project is about articles and you will be using that type a lot)

The problem that i have is that i need to have access to a Resolve function on the Article. But i think i have a solution, create an ArticleListField that will return the ListType(new ArticleType()), that will handle the resolution of those.


Improve ETH atomic swap flow

Improve ETH atomic swap flow
Problem
I believe is possible to improve swap atomic flow regarding ETH, at the moment, there is a need to both users hold BTC/Ghost and ETH to perform a complete atomic swap between BTC/GHOST-ETH, this causes an unnecessary UX problem, normally who wanna sell BTC don't have ETH, similar for GHOST. However, there is way to the user sign a message with their ETH wallet and send it allow the other party or maybe a centralized paid party to submit the withdraw on their behalf. An example of how to do is using the permit pattern adopted by Uniswap token smartcontract:
https://etherscan.io/address/0x1f9840a85d5af5bf1d1762f925bdaddc4201f984#code

Task

Add permit function according to swap logic to the withdraw smartcontract
Change ETH flow to instead of submit transaction to withdraw, sign a message with withdraw permission and send to the other counterparty
Change Ghost/BTC flow to add the step of user submit in their behalf the withdraw ETH

Estimate time of implementation
40H plus maybe need third party audit

we have withdrawOther method, when ETH buyer can send secret to someone for finalizing the swap

Oh Great, I didn't knew that, that the method was already available. IMO in terms of UX is better using this way and making the ETH buyer pay all ETH related costs, on the UI we need to assure it has sufficient ETH to cover for both transactions.

I feel like both parties should have their own Eth or Btc for fees. Its just the person selling ghost should pay both ghost fees. Then you just need Eth to trade any pairs with ghost. It would get to expensive for 1 party to pay all the eth fees. Both parties should pay eth fee.


Inventory key no longer closes inventory

When ReBlurred is present, the inventory button I have set manually (tab) no longer closes the inventory screen, only opens it. This problem persists no matter what key the inventory menu is set to.

Reblured does nothing with keys, except add an additional keybinding.
It should even work if both keybindings are configured to use the same key


Usual Makefile

A Makefile usually offers two things, allowing for easy packaging and installation:

a make step which creates a build (not yet necessary for Fisherman)
a make install step which copies the resulting files to a given $PREFIX directory

So you could run e.g. PREFIX=/usr/local make && make install.
The current Makefile, however, manipulates a user's config.fish without their consent and doesn't create something like a build. This means that packagers cannot use it at all and have to find their own way of copying the files, figuring out which are needed and where to put them, etc..
I haven't yet really investigated the make test step, but it should finally be offered as well. It should be possible to run it easily, but currently requires fishtape to be present.

So basically no makefile? I like this.
A lot of other places will need to be updated before this can be merged though.

What do you mean by "no makefile"?

http://www.network-theory.co.uk/docs/gccintro/gccintro_16.html
Here's what a Makefile should be used for and how. Tests should run in make check, apparently.

What do you mean by "no makefile"?

I mean a very short makefile.

Yea it's basically short for now because not many files need installation and there is no build procedure involved yet.

@jethrokuan Comments :)

@orangecms Regarding the PR that modifies the config.fish, I think that one should be discussed last. First let's decide on the new install mechanism, basically let's work on this PR and then see what needs to be done in terms of the config.fish.

In summary, I suggest differiantiating between installing Fisherman in the system and adding it to the user's config. The latter can/should not be covered by a system's package manager, unless we write to fish's config in /etc or /usr/etc or the new conf.d directory, which can be done in a post-transaction hook. But since that is run by the system's package manager's user, it would mean mixing things again and would require a user to modify their config file in order not to break their system. That's why I would do the sanity checks for the existence of the essential config dir.

:+1: on the conf.d method in the future.
While the one line make is great and all, I think it's best we stick to convention and name it make install. Experienced users will make, and the average user will use the curl installer.
I agree on not doing checks in config.fish. There's no need to compromise speed here.
We could:
Have fisher doctor, which checks for missing variables, outdated fisherman install and broken fishfile etc.

That would only work as long as fish works though, since fisher is not a standalone tool. We should discuss that in another issue.

Ping @orangecms
Do you think we can have this PR redone and updated as previous discussed?

My simple and featureful makefile: https://github.com/pickfire/www/blob/master/Makefile

No. make has to create a build, but we don't have build steps (for now). make install must copy the necessary files with certain access rights to a given prefix directory. These are *NIX / GNU conventions. @bucaran I have rebased w/o an issue (as I expected), but I haven't yet looked into autotools for the configuration. This is where the prefix should be determined iirc.

@orangecms Thanks. This PR should also contain changes in the configuration, and docs updates.

also, change the travis build for your PR, and see if you can make tests pass

Yep, got that. ;)

Ping @orangecms
Hey man, would love to see where this goes or have at least a plan.

The plan is to check out autotools und figure whether and how they can help to obtain the necessary structure, which might result in an actual build process where paths to the directories would need adjustment. The second hurdle for me is modifying the CI scripts for acceptance. I don't have much experience with OS-independent builds yet. If anyone knows about autoconf/.ac-files, that would really help.

big kudos to @pickfire for the addprefix, I'll add that as well!

I will read http://www.gnu.org/software/make/manual/make.html#Directory-Variables later and see how to do it properly. :)

@bucaran Now the only missing piece is adding a hint in the README to source $prefix/share/fish/config-fisherman.fish (or create the dirs manually, set the env vars and source fisherman's $prefix/share/fisherman/config.fish) :)

@orangecms Great, do you have a PR ready?
@denji We should coordinate the update with the release of a brew package as well.
@jethrokuan Comments?

@bucaran with fisherman merging into fin I can imagine the make installation might simplify as well.
But other than that I'm all for this change, and it's one that we really need.

Plus @dalln1 is done with fin-git too, so it will be basically just modifying the name and other details.
@orangecms Can you pair up with @dalln1?

As far as I understand it I can not change the name, I've to delete fin-git on the AUR and we have to modify the fisherman-git on the AUR for the upcoming release of fisherman.

@dalln1 Thanks. I should be done with this soon.

@bucaran Perfect. I've just seen that there is also the possibility to merge two packages on the AUR. But not sure which way will be easier. I think I will wait what @orangecms has to say about this, because he is more experienced than me with the arch packaging system.

Oh, I am pretty sure @orangecms will have a lot to say about all this 😟 hehe

@bucaran the PR is right here, this discussion belongs to it ;)
@dalln1 Let's have a chat about the packages in the Slack team if you're in there.

@orangecms Thanks! Now that 2.0 is out there, what should we do with this?

I dunno, I can rewrite it for the current setup.

Yes, please. 🙏

@orangecms With the new AUR package we don't need a makefile anymore, so can we close this?

I would suggest to maintain a legacy branch for people who want it (e.g. for the search feature). A Makefile can still be writte  for 2.x, its release is unrelated to offering a Makefile.

@orangecms

would suggest to maintain a legacy branch for people who want it

I don't feel like maintaining another branch for something I will never use, plus, I hope to bring a little bit of the search functionality back into fisherman at some point without modifying the cli, for example fisher ls --remote or create a separate plugin for it.

Closing as not needed now that we have the AUR pkg and installing fisherman is super easy.
Thanks for all the work @orangecms.


Platform: Comment button does not appear on text with a superscript

Double clicking a word with a superscript does not bring up the comment button

@Sebastian-ubs thanks for finding that. Yes you can't comment on a footnote/xref which is currently included in your selection. A work-around for now is to manually select the word (rather than use double-click). I'll need to figure out how to fix the double-click selection to not include the footnote/xref.


Rid ghc of (literate) perl?

Tasks:

[x] rewrite driver/split/ghc-split.lprl in haskell

This has already been done by @Mistuke, see https://ghc.haskell.org/trac/ghc/ticket/9832

[ ] drop Unlit from the build system
[ ] drop Perl from the build system
[ ] Optinally rewrite utils/count_lines/count_lines.lprl in haskell
[ ] push changes upstream into ghc through phabricator

ghc has two literate perl files:
./driver/split/ghc-split.lprl
./utils/count_lines/count_lines.lprl

as well as one regular perl file:
./nofib/runstdtest/runstdtest.prl

There are also a bunch of .pl files:
./distrib/remilestoning.pl
./libraries/containers/benchmarks/bench-cmp.pl
./libraries/hpc/tests/hpcrun.pl
./libraries/integer-gmp/gmp/gmpbuild/demos/perl/sample.pl
./libraries/integer-gmp/gmp/gmpbuild/demos/perl/test.pl
./libraries/integer-gmp/gmp/gmpbuild/demos/perl/test2.pl
./libraries/integer-gmp/gmp/gmpbuild/mpn/alpha/ev6/slot.pl
./libraries/integer-gmp/gmp/gmpbuild/mpn/m68k/t-m68k-defs.pl
./libraries/integer-gmp/gmp/gmpbuild/mpn/x86/k6/cross.pl
./libraries/integer-gmp/gmp/gmpbuild/mpn/x86/t-zdisp2.pl
./libraries/integer-gmp/gmp/gmpbuild/tune/many.pl
./nofib/fibon/Hackage/Cpsa/src/cpsa.pl
./nofib/fibon/Hackage/Cpsa/src/pp.pl
./nofib/fibon/Hackage/Cpsa/src/sexpr.pl
./utils/genargs/genargs.pl

of which none is part of the build system.
I can also find build-perl only used for the first two.
driver/split/ghc.mk
19:$(eval $(call build-perl,driver/split,dist))

rules/build-perl.mk
19:# $(eval $(call build-perl,driver/mangler,dist))

utils/count_lines/ghc.mk
5:$(eval $(call build-perl,utils/count_lines,dust))

driver/mangler seems to have been removed in
commit 9be618cdf99b04ce7eef6eeabc168b59174bb843
Author: Ian Lynagh<EMAIL_ADDRESS>Date:   Mon Apr 4 21:59:04 2011 +0100

    Remove dead code, now that -fvia-c is a no-op

The use of lprl, adds quite a bit of complexity to the build system (#138), and requires the external tool perl (#83), and building the Unlit tool (#82).

I would one day like to get rid of all the perl and much of the shell script, folding a lot into the Haskell build system. Note boot is perl, without any extension.

@ndmitchell yes, absolutely! The amount of extra complexity (wrappers, build-perl) we added to the build system is really sad.  I guess it's there for history reasons, and because make has it's limits as well.
But getting rid of count_lines.lprl (which isn't even really literal to begin with; it only has \begin{code} and \end{code}.) and ghc-split, which then later could be rolled into a library and used from ghc directly, without shelling out to a separate process, would be a not so bad start, I guess.

Yep, seems sensible to me. Although may require changes to real GHC, and thus beyond this repo?

Perhaps commit non literate versions here for now, and then upstream to GHC later? An upstream dir in this repo?

Yep. That would be the idea, replace ghc-split and count_lines by haskell packages here, and then initiate the upstream if we know it works for us :)

Sounds good to me! I'd be happy if we could get rid of perl bits. By the way, so far we didn't need to use count_lines, so maybe we won't need it at all?

Updated the comment to add the subtasks.

Ohh! @ndmitchell unearthed the following related ghc ticket on Twitter
https://ghc.haskell.org/trac/ghc/ticket/9832
cf: https://twitter.com/ndm_haskell/status/686101954301440000
Maybe we should just let this be and wait for 8.2?

I think it may be reasonable to wait. That is if this indeed happens in 8.2.

My understanding is that -split-objs is going to be replaced by -split-sections, which is currently blocked on --gc-sections support in binutils. It does add quite a bit of complexity and dependencies to the build system. In any case the whole idea behind -split-objs is to get away with a smaller resulting product. Now, maybe we can get away with completely dropping the -split-objs support from shaking-up-ghc? That would basically mean drop all the code I just wrote and some more, but I'd be fine with that.
Maybe @Mistuke and @bgamari can shed some additional insight?

I'm not really sure what the plan here is. My guess is that it is planned to drop -split-objs entirely in favor of -split-sections at some point. But I don't know when. -split-sections support particularly on Windows is a bit unknown at this point.

D3567 rewrites boot in Python, removing that particular need.

I did something related here: https://github.com/snowleopard/hadrian/pull/312/commits/f3fa6d45fa77135fdd48f9793ee4ebee8c0aaa87

@izgzhen Nice! If this passes CI on all platforms, shall we put this into a separate PR?

Ah, it's not tested by the CI, because it requires --split-objects command line flag. Have you tried if it works for you?

@snowleopard I didn't see major outage, but I will keep an eye on this. I agree that it is useful to separate it out as another PR, since the install-rule one, as I expect, would take quite some time to resolve cleanly, and I can also make better sense of my change of dropping Perl.

This has partly been resolved: we no longer have any literate Perl in GHC and the corresponding build rule has been removed from Hadrian.
As for removing Perl from GHC entirely, this seems to be more suited as a GHC ticket, not a Hadrian one. And there is, for example, https://ghc.haskell.org/trac/ghc/ticket/9832.
So, I think we can close this issue. When there is no Perl in GHC, dropping the Perl builder from Hadrian will be trivial. Please feel free to reopen if I am missing something.


What parameters are important to tune when using VRWKV block as drop-in replacement for attention?

Currently, my model is performing worse when using VRWKV block as drop-in replacement for attention. Do you have any suggestion on what are the important parameters to tune?

Hi, thanks for your attention to our work!
I found it important to set an appropriate drop path rate for VRWKV(usually a little bit higher than ViT). Weight initialization also has some influence on the final result.

Ok, I will try these suggestions. Another question, have you been experimenting with Mamba as well? Mamba seems to be a more popular architecture compared to RWKV and I wonder if your experiments show RWKV to be better?

RWKV6 is better than Mamba in all tests :)
https://arxiv.org/abs/2404.05892
example: MQAR

Currently, my model is performing worse when using VRWKV block as drop-in replacement for attention. Do you have any suggestion on what are the important parameters to tune?

try VRWKV6

I am aware of the performance but NLP but I am more asking about for vision. For example, https://github.com/MzeroMiko/VMamba shows much better performance with mamba. Hopefully, you may share some insights.

I am aware of the performance but NLP but I am more asking about for vision. For example, https://github.com/MzeroMiko/VMamba shows much better performance with Mamba. Hopefully, you may share some insights.

I should probably file a different issue for this specifically, but I am also interested in knowing how VRWKV compares to Vision Mamba and VMamba since only ViT was used for the baseline in the paper.

I am aware of the performance but NLP but I am more asking about for vision. For example, https://github.com/MzeroMiko/VMamba shows much better performance with Mamba. Hopefully, you may share some insights.

VMamba is using more tricks so they will get better performance if they switch to RWKV6 😂

@yxchng @an-ys
VMamba designed a hierarchical backbone, so it will have much better results in small-size models with "not-that-large-scale" datasets. (E.g ViT vs PVT or swin)
It is believed that this gap will be eliminated as the increase of the size of the model and the scale of datasets used in the pre-train process in transformer-like models.
We focus on the exploration of the linear attention models in the vision field. So we design VRWKV, aiming to have comparable performance and scale-up stability as the most frequently used model(ViT).
According to the above reasons, we pay more attention to the stability of model training after scale-up(and use larger datasets in pre-train), which is particularly important in linear attention models (including RWKV and Mamba). Therefore, we proposed large-size models, demonstrating that VRWKV can perform better when keep scaling up(which has not been verified in mamba-based models so far).


Build failure (GHC 8 related?)

I get this:
[deepfire@andromedae:~/src/mood]$ nsr /nix/store/cj70b7igg91yq9i9ykmd3993qb20a9j5-optparse-generic-1.0.0.drv
these derivations will be built:
  /nix/store/cj70b7igg91yq9i9ykmd3993qb20a9j5-optparse-generic-1.0.0.drv
building path(s) ‘/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0’
setupCompilerEnvironmentPhase
Build with /nix/store/mkbzdx2nsdcskfrak51r7faiaxqrlcrk-ghc-<IP_ADDRESS>60204.
unpacking sources
unpacking source archive /nix/store/fc6m7v05dws00vqyj0sk6yznpb46m0na-Haskell-Optparse-Generic-Library-682b606
source root is Haskell-Optparse-Generic-Library-682b606
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/tmp/nix-build-optparse-generic-1.0.0.drv-0/package.conf.d -j1 -threaded
[1 of 1] Compiling Main             ( Setup.hs, /tmp/nix-build-optparse-generic-1.0.0.drv-0/Main.o )
Linking Setup ...
configuring
configureFlags: --verbose --prefix=/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0 --libdir=$prefix/lib/$compiler --libsubdir=$pkgid --with-gcc=gcc --package-db=/tmp/nix-build-optparse-generic-1.0.0.drv-0/package.conf.d --ghc-option=-optl=-Wl,-rpath=/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/lib/ghc-<IP_ADDRESS>60204/optparse-generic-1.0.0 --enable-split-objs --disable-library-profiling --disable-profiling --enable-shared --enable-library-vanilla --enable-executable-dynamic --enable-tests
Configuring optparse-generic-1.0.0...
Dependency base >=4.6 && <5: using base-<IP_ADDRESS>
Dependency optparse-applicative >=0.11.0 && <0.13: using
optparse-applicative-<IP_ADDRESS>
Dependency system-filepath >=0.3.1 && <0.5: using system-filepath-<IP_ADDRESS>
Dependency text <1.3: using text-<IP_ADDRESS>
Dependency transformers >=<IP_ADDRESS> && <0.6: using transformers-<IP_ADDRESS>
Dependency void <0.8: using void-0.7.1
Using Cabal-<IP_ADDRESS> compiled by ghc-8.0
Using compiler: ghc-<IP_ADDRESS>60204
Using install prefix:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0
Binaries installed in:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/bin
Libraries installed in:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/lib/ghc-<IP_ADDRESS>60204/optparse-generic-1.0.0
Private binaries installed in:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/libexec
Data files installed in:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/share/x86_64-linux-ghc-<IP_ADDRESS>60204/optparse-generic-1.0.0
Documentation installed in:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/share/doc/x86_64-linux-ghc-<IP_ADDRESS>60204/optparse-generic-1.0.0
Configuration files installed in:
/nix/store/5rj6r04lx5c3s7v6bq1k4bghbshsr4ih-optparse-generic-1.0.0/etc
No alex found
Using ar found on system at:
/nix/store/ana1gqsb6v9y45fhj8wjmmk8w13dc3v5-binutils-2.23.1-dev/bin/ar
No c2hs found
No cpphs found
Using gcc version 4.9.3 given by user at:
/nix/store/sihykq4gh9g13ky34yx6ffdfmlw8j8pn-gcc-wrapper-4.9.3/bin/gcc
Using ghc version <IP_ADDRESS>60204 found on system at:
/nix/store/mkbzdx2nsdcskfrak51r7faiaxqrlcrk-ghc-<IP_ADDRESS>60204/bin/ghc
Using ghc-pkg version <IP_ADDRESS>60204 found on system at:
/nix/store/mkbzdx2nsdcskfrak51r7faiaxqrlcrk-ghc-<IP_ADDRESS>60204/bin/ghc-pkg
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.17.0 found on system at:
/nix/store/mkbzdx2nsdcskfrak51r7faiaxqrlcrk-ghc-<IP_ADDRESS>60204/bin/haddock
No happy found
Using haskell-suite found on system at: haskell-suite-dummy-location
Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
No hmake found
Using hpc version 0.67 found on system at:
/nix/store/mkbzdx2nsdcskfrak51r7faiaxqrlcrk-ghc-<IP_ADDRESS>60204/bin/hpc
Using hsc2hs version 0.67 found on system at:
/nix/store/mkbzdx2nsdcskfrak51r7faiaxqrlcrk-ghc-<IP_ADDRESS>60204/bin/hsc2hs
Using hscolour version 1.24 found on system at:
/nix/store/ikqj8r54aqxq3srfj92d3ihkp0dn7hw2-hscolour-1.24/bin/HsColour
No jhc found
Using ld found on system at:
/nix/store/sihykq4gh9g13ky34yx6ffdfmlw8j8pn-gcc-wrapper-4.9.3/bin/ld
No lhc found
No lhc-pkg found
No pkg-config found
Using strip version 2.23 found on system at:
/nix/store/ana1gqsb6v9y45fhj8wjmmk8w13dc3v5-binutils-2.23.1-dev/bin/strip
Using tar found on system at:
/nix/store/88s1bhymbdgv7s98ql4x486710pff29v-gnutar-1.28/bin/tar
No uhc found
building
Building optparse-generic-1.0.0...
Preprocessing library optparse-generic-1.0.0...
[1 of 1] Compiling Options.Generic  ( src/Options/Generic.hs, dist/build/Options/Generic.o )

src/Options/Generic.hs:398:10: error:
    • No instance for (Generic Char)
        arising from a use of ‘Options.Generic.$dmparseRecord’
    • In the expression: Options.Generic.$dmparseRecord
      In an equation for ‘parseRecord’:
          parseRecord = Options.Generic.$dmparseRecord
      In the instance declaration for ‘ParseRecord Char’

src/Options/Generic.hs:399:10: error:
    • No instance for (Generic Double)
        arising from a use of ‘Options.Generic.$dmparseRecord’
    • In the expression: Options.Generic.$dmparseRecord
      In an equation for ‘parseRecord’:
          parseRecord = Options.Generic.$dmparseRecord
      In the instance declaration for ‘ParseRecord Double’

src/Options/Generic.hs:400:10: error:
    • No instance for (Generic Float)
        arising from a use of ‘Options.Generic.$dmparseRecord’
    • In the expression: Options.Generic.$dmparseRecord
      In an equation for ‘parseRecord’:
          parseRecord = Options.Generic.$dmparseRecord
      In the instance declaration for ‘ParseRecord Float’

src/Options/Generic.hs:401:10: error:
    • No instance for (Generic Int)
        arising from a use of ‘Options.Generic.$dmparseRecord’
    • In the expression: Options.Generic.$dmparseRecord
      In an equation for ‘parseRecord’:
          parseRecord = Options.Generic.$dmparseRecord
      In the instance declaration for ‘ParseRecord Int’
builder for ‘/nix/store/cj70b7igg91yq9i9ykmd3993qb20a9j5-optparse-generic-1.0.0.drv’ failed with exit code 1
error: build of ‘/nix/store/cj70b7igg91yq9i9ykmd3993qb20a9j5-optparse-generic-1.0.0.drv’ failed

Fortunately, there is a pretty simple workaround here, which is to just change those four instances like this:
-- Before
instance ParseRecord Int

-- After
instance ParseRecord Int where
    parseRecord = fmap getOnly parseRecord

However, it's still troubling that ghc-8 is missing those instances.  I'm going to open a ticket against ghc to see what happened there.
In the meantime, could you try to check out the ghc8_workaround branch, which contains the above workaround, and see if you can build that:
https://github.com/Gabriel439/Haskell-Optparse-Generic-Library/tree/ghc8_workaround

@Gabriel439, just checked -- it builds fine.  Thank you!

Alright, I merged the workaround into master and this is fixed by 7fc59e05055e599919cda838a072032e2d94fdc8

So actually I did a bit more research and it looks like this removal of Generic instances for base types was intentional, according to this GHC Trac thread:
https://ghc.haskell.org/trac/ghc/ticket/10512
... so in this case the workaround is in fact the appropriate solution that the GHC devs had in mind for this sort of thing.  The Generic instances were intended more for complex types and not for primitive types.


correct behavior of glob-based attribute selection

Changed the recently added behavior to be easier to predict and understand:

For each matching group of attributes, ordered from more general to more concrete:
1.1. Add the attributes in the inclusion list.
1.1.1. If the first matching group is empty, add the default attributes list.
1.2. Remove the attributes in the exclusion list.

This would simplify overriding generic definitions with concrete use cases. (E.g. re-include an attribute that was explicitly excluded in the general definition).

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 50.83%. Comparing base (58de56a) to head (df93c17).

:exclamation:  There is a different number of reports uploaded between BASE (58de56a) and HEAD (df93c17). Click for more details.
HEAD has 3 uploads less than BASE

Flag
BASE (58de56a)
HEAD (df93c17)

oats-test
1
0

k8s-integration-test
1
0

integration-test
1
0

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #995       +/-   ##
===========================================
- Coverage   80.75%   50.83%   -29.93%
===========================================
  Files         134      134
  Lines       10721    10720        -1
===========================================
- Hits         8658     5449     -3209
- Misses       1558     4911     +3353
+ Partials      505      360      -145

Flag
Coverage Δ

integration-test
?

k8s-integration-test
?

oats-test
?

unittests
50.83% <100.00%> (+0.02%)
:arrow_up:

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[ci] [R-package] Miktex installation failing: "Timeout was reached"

Description
R Windows CI jobs on multiple PRs and master with the following error.

Setting up MiKTeX
miktexsetup_standalone: Timeout was reached
miktexsetup_standalone: Data: code="28", url="https://api2.miktex.org/hello"
Error: Process completed with exit code -1.

Reproducible example
Example recent build from #5396: https://github.com/microsoft/LightGBM/actions/runs/3528457186/jobs/5918579958
Environment info
Four CI jobs are failing regularly with this error:

r-package (windows-latest, MINGW, R 3.6, cran)
r-package (windows-latest, MINGW, R 4.2, cran)
r-package (windows-latest, MINGW, R 3.6, cmake)
r-package (windows-latest, MINGW, R 4.2, cmake)

Additional Comments
In the past, we've seen MikTeX issues like this with minimal error messages resolve themselves after 12-48 hours 🙃

https://github.com/microsoft/LightGBM/issues/5562
https://github.com/microsoft/LightGBM/issues/4005
https://github.com/microsoft/LightGBM/issues/3454
https://github.com/microsoft/LightGBM/issues/3198

I tried that URL listed in the error message from two different machines, and found that it's returning 429s from both.
curl -I https://api2.miktex.org/hello

HTTP/1.1 429 Too Many Requests
Server: nginx/1.18.0 (Ubuntu)
Date: Wed, 23 Nov 2022 04:49:15 GMT
Connection: keep-alive

It looks like api2.miktex.org is completely down.
curl -I https://api2.miktex.org/

HTTP/1.1 404 Not Found
Server: nginx/1.18.0 (Ubuntu)
Date: Wed, 23 Nov 2022 04:52:23 GMT
Connection: keep-alive

Found some more related threads, but none of them have a resolution.

https://github.com/MiKTeX/miktex/issues/793
https://github.com/MiKTeX/miktex/issues/628
https://github.com/MiKTeX/miktex/issues/336


Create LICENSE file

Would you please create a LICENSE file with the text of the ISC license (and your copyright information) inside?  That makes it easier for people like me who package things up for Linux distributions.

See commit 34f567d. Does that work?

@jaredsmith done \o/


Add is_enabled() function to check tabout enabled/disabled state

Adds an is_enabled() function to the plugin to expose the "enabled" state externally to other plugins or user scripts.
Currently the .toggle() function or :TaboutToggle command can be used to enable/disable tabout, but there is no way to find out which state the plugin is in as the enabled variable isn't exposed outside of the plugin.
This PR adds a new function is_enabled() to remedy this. So, users could define their own behaviour based on the state (for example, a visual indicator in the modeline to indicate whether tabout is enabled or not.
Here's an example usage of the new function with hydra.nvim. Note that this example uses lazy.nvim for plugin management and assumes tabout is installed already (I haven't added any checks for this):
return {
  'nvimtools/hydra.nvim',
  config = function()
    -- NOTE: Create Hydras in here
    local Hydra = require 'hydra'

    local hint = [[
      ^ ^        Options
      ^
      _t_ %{tabout} tabout
      ^
           ^^^^                _<Esc>_
    ]]

    local function taboutState()
      if require('tabout').is_enabled() then
        return '[x]'
      else
        return '[ ]'
      end
    end

    Hydra {
      name = 'Options',
      hint = hint,
      config = {
        color = 'amaranth',
        invoke_on_body = true,
        hint = {
          float_opts = {
            border = 'rounded',
          },
          position = 'middle',
          funcs = {
            tabout = taboutState,
          },
        },
      },
      mode = { 'n', 'x' },
      body = '<leader>h',
      heads = {
        {
          't',
          function()
            require('tabout').toggle()
          end,
          { desc = 'tabout' },
        },
        { '<Esc>', nil, { exit = true } },
      },
    }
  end,
}

This given example would map h to open this menu:

Then, pressing t will toggle tabout, with the [x] or [ ] visual indicators being mapped to the tabout enabled state.
If tabout is disabled, the indicator in the menu would show [ ] as expected (because it uses the new is_enabled() function to detect the state)!

Also, oops, my commit 39c9da9 was just merging upstream changes into my fork. There's only one commit with actual changes, it's 2c70562
Let me know what you think of this PR <3

Hi @b4shful 👋
Sounds like this makes a lot of sense and allows more flexibility for users.
Thanks for your contribution 👍 🎖


[Feature Request]: Inject default configurations in Notebook CR on workbench creation

Feature description
This comes from a feedback of a customer in a testing phase. We need a way to inject default configurations when creating a new workbench.
There are few use cases where it is needed:

The customer injects CA bundle using 2 different labels in their Notebook, so he can connect to his internal Git.
He would like pip to be configured by default. So adding default env var, eventually mount the pip config file from a configmap.

Describe alternatives you've considered

Asking ODH users to copy, customize and deploy a Notebook CR from a list of pre-configured ones. However the users are not necessarily familiar with Openshift. We also don't leverage the workbenches section of the UI.
Using templates to normalize Notebooks. Including those in the UI with a mean to set parameters would be a great solution.
Creating a parallel dashboard that take care of the notebook conf and creation. But we don't leverage the workbenches section of the UI and it required work on customer side.

Anything else?
Despite not explicitly asked by the customer, we might need to set additional configurations such as tolerations. It might not be a default config for all their notebooks but at least a subset of them #633

regarding own pip conf: https://github.com/opendatahub-io/notebooks/issues/127#issuecomment-1709547310

Thank you Sven for your reply. It seems that the customer is not using the cluster wide proxy. In fact their injections is made using different labels. So I suppose they use their own operator do inject the CA, that's why they need it here. I will try to find out why.

UX context
How do we want to allow admins to configure a default for each notebook? This probably is for both global and projects.

Migrated to:  https://issues.redhat.com/browse/RHOAIRFE-13


uv pip install returning 403 from private pypi cloud instance backed by s3

I am using a private pypi cloud instance backed by s3 (with no auth on my end). Public packages are resolved normally, but uv pip cannot resolve packages hosted on the private cloud instance.

pip3 install my-private-package --index-url https://my-pip-instance.example.com/ succeeded with no problems.
Running uv pip install with the --no-cache option did not change the result.
I can retrieve the artifact from the url that uv pip was trying to fetch. This URL returns a 302 to the url that is giving me a 403

$ uv pip install my-private-package --index-url https://my-pip-instance.example.com/

error: Failed to build editables
  Caused by: Failed to build editable: file:///Users/phil/repos/philiplinden/scratch
  Caused by: Failed to install requirements from build-system.requires (resolve)
  Caused by: No solution found when resolving: setuptools
  Caused by: Failed to download: setuptools==69.1.1
  Caused by: HTTP status client error (403 Forbidden) for url (https://s3-url.amazonaws.com/example/setuptools-69.1.1-py3-none-any.whl?AWSAccessKeyId=xxx&Signature=xxx%3D&Expires=1709153725](https://s3-url.amazonaws.com/ffdf/setuptools/setuptools-69.1.1-py3-none-any.whl?AWSAccessKeyId=xxx&Signature=xxx%3D&Expires=1709153725)))

Relates to https://github.com/astral-sh/uv/issues/1709 and https://github.com/astral-sh/uv/pull/1902
Version: 0.1.6, 0.1.11
Verbose output (anonymized)
 uv_client::flat_index::from_entries
 uv_installer::downloader::build_editables
      0.355282s   0ms DEBUG uv_distribution::source Building (editable) file:///Users/phil/repos/philiplinden/scratch
   uv_dispatch::setup_build package_id="file:///Users/phil/repos/philiplinden/scratch", subdirectory=None
     uv_resolver::resolver::solve
          0.361346s   0ms DEBUG uv_resolver::resolver Solving with target Python version 3.11.6
       uv_resolver::resolver::choose_version package=root
       uv_resolver::resolver::get_dependencies package=root, version=0a0.dev0
            0.361500s   0ms DEBUG uv_resolver::resolver Adding direct dependency: setuptools*
       uv_resolver::resolver::choose_version package=setuptools
         uv_resolver::resolver::package_wait package_name=setuptools
     uv_resolver::resolver::process_request request=Versions setuptools
       uv_client::registry_client::simple_api package=setuptools
         uv_client::cached_client::get_cacheable
           uv_client::cached_client::read_and_parse_cache file=/Users/phil/Library/Caches/uv/simple-v1/8aba338bd0495f93/setuptools.rkyv
     uv_resolver::resolver::process_request request=Prefetch setuptools *
              0.366930s   5ms DEBUG uv_client::cached_client Found stale response for: https://my-pip-instance.example.com/simple/setuptools/
              0.366959s   5ms DEBUG uv_client::cached_client Sending revalidation request for: https://my-pip-instance.example.com/setuptools/
           uv_client::cached_client::revalidation_request url="https://my-pip-instance.example.com/setuptools/"
              1.016439s 654ms DEBUG uv_client::cached_client Found modified response for: https://my-pip-instance.example.com/simple/setuptools/
           uv_client::cached_client::new_cache file=/Users/phil/Library/Caches/uv/simple-v1/8aba338bd0495f93/setuptools.rkyv
           uv_client::registry_client::parse_simple_api package=setuptools
             uv_client::html::parse url=https://my-pip-instance.example.com/setuptools/
 uv_resolver::version_map::from_metadata
       uv_distribution::distribution_database::get_or_build_wheel_metadata dist=setuptools==69.1.1
         uv_client::registry_client::wheel_metadata built_dist=setuptools==69.1.1
           uv_client::cached_client::get_serde
             uv_client::cached_client::get_cacheable
               uv_client::cached_client::read_and_parse_cache file=/Users/phil/Library/Caches/uv/wheels-v0/index/8aba338bd0495f93/setuptools/setuptools-69.1.1-py3-none-any.msgpack
            1.322675s 961ms DEBUG uv_resolver::resolver Searching for a compatible version of setuptools (*)
            1.322694s 961ms DEBUG uv_resolver::resolver Selecting: setuptools==69.1.1 (setuptools-69.1.1-py3-none-any.whl)
       uv_resolver::resolver::get_dependencies package=setuptools, version=69.1.1
         uv_resolver::resolver::distributions_wait package_id=setuptools-69.1.1
                  1.322754s   0ms DEBUG uv_client::cached_client No cache entry for: https://my-pip-instance.example.com/api/package/setuptools/setuptools-69.1.1-py3-none-any.whl#sha256=02fa291a0471b3a18b2b2481ed902af520c69e8ae0919c13da936542754b4c56
               uv_client::cached_client::fresh_request url="https://my-pip-instance.example.com/api/package/setuptools/setuptools-69.1.1-py3-none-any.whl#sha256=02fa291a0471b3a18b2b2481ed902af520c69e8ae0919c13da936542754b4c56"
error: Failed to build editables
  Caused by: Failed to build editable: file:///Users/phil/repos/philiplinden/scratch
  Caused by: Failed to install requirements from build-system.requires (resolve)
  Caused by: No solution found when resolving: setuptools
  Caused by: Failed to download: setuptools==69.1.1
  Caused by: HTTP status client error (403 Forbidden) for url (https://my-pip-instance.amazonaws.com/ffdf/setuptools/setuptools-69.1.1-py3-none-any.whl?AWSAccessKeyId=xxx&Signature=xxx&Expires=1709157923)

Do you mind updating to v0.1.11? v0.1.6 is a few versions out-of-date.

Thanks, I just updated to v0.1.11 and now the installer hangs at the same spot for a few seconds before throwing the same 403 error.

Can you say a bit more about how the auth is intended to work? The URL is publicly available, and redirects you to S3 URLs with credentials embedded?

Can you say a bit more about how the auth is intended to work? The URL is publicly available, and redirects you to S3 URLs with credentials embedded?

Yeah that's correct. It uses s3 one time preauthed urls. I am using pypicloud with redirect_urls enabled

This also occurs when pip compiling from gemfury links, the package lookup on gemfury works, but downloading packages fails since they are backed by s3. This is the response from S3 when opening one of those preauthed links:
Code: SignatureDoesNotMatch
Message: The request signature we calculated does not match the signature you provided. Check your key and signing method.

Hi. I probably don't understand half of the code in this repo, but after experimenting with uv pip install -vv locally, I think I might have found a clue:
https://github.com/astral-sh/uv/blob/661787b0cbb542f2e8e3bb4fbcc834a42af59f4b/crates/uv-client/src/registry_client.rs#L512-L515
Here, I believe req never has auth headers attached, because it's only when the request is executed the AuthMiddleware runs and attaches the auth header to req. Iow, I believe the headers are extracted too early in the linked code. Not sure how to fix it though 🤷🏻♂

That should be okay though, since the subsequent requests will also go through the auth middleware and get the appropriate headers attached.
Were you able to reproduce this issue? What does your setup look like?

Wow thanks for the sleuthing. I have no idea why that would be dropped either.

Do you know if you did anything special to get Gemfury to run against S3? My Gemfury URLs don't look like that so I've had trouble reproducing.

I pushed a branch with an extra log if you want to give it a try: https://github.com/astral-sh/uv/pull/2823
I'm trying to narrow down when that part is dropped from the URL.

We are experiencing the same issue. I wonder if it's because we have an older Gemfury account. This option is enabled under our organization settings:

I don't remember opting into that explicitly. Is that disabled in your account?

I can try enabling that and then uploading a new package.

Sadly it's still giving me URLs like https://pypi.fury.io/charliermarsh/-/ver_mt7Ge/gemfury-test-0.0.1.tar.gz.

Without knowing, I am sure that for our Gemfury account, I have at least one package that works fine (it does not redirect to S3) and then at least this one here that fails (because it does redirect to S3).
I'm not sure what causes this difference in behavior. The one that fails for me was created by running poetry publish -r oda -u <secret> -p NOPASS, so it's possible poetry makes it "do S3 magic"? (The package that works fine is made by another team. At this point I have no idea how it was created/published)

I emailed Gemfury.

Perhaps I can get setup with one of these S3-back indexes, or they can tell me what I'm doing wrong.

Ok, I've said "I think I found a clue!" before and been wrong, but I persist: I think I might have found a clue! 😆
I made this test program:
use std::error::Error;

use reqwest::redirect::Policy;

use reqwest::Client;

#[tokio::main]
pub async fn main() -> Result<(), Box<dyn Error>> {
    let url = "https://pypi.fury.io/oda/-/ver_Fz9wq/sdxp-0.7.3-py3-none-any.whl";
    let url: reqwest::Url = url.parse().unwrap();
    let client = Client::builder()
        // Ensure that we *don't* follow redirects for this example
        .redirect(Policy::none())
        // fake being curl in case it matters (i don't think so)
        .user_agent("curl/8.4.0")
        .build()?;
    let req = client
        .head(url)
        .header("authorization", "Basic <redacted>")
        .header("accept", "*/*")
        .build()?;
    println!("111 {:?}", req);
    let head_response = client.execute(req).await?;
    println!("222 {:?}", head_response);
    let location = head_response.headers().get("location").unwrap();
    println!("333 {:?}", location);
    Ok(())
}

And I get this output (with redactions):
111 Request { method: HEAD, url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("pypi.fury.io")), port: None, path: "/oda/-/ver_Fz9wq/sdxp-0.7.3-py3-none-any.whl", query: None, fragment: None }, headers: {"authorization": "Basic <redacted>", "accept": "*/*"} }
222 Response { url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("pypi.fury.io")), port: None, path: "/oda/-/ver_Fz9wq/sdxp-0.7.3-py3-none-any.whl", query: None, fragment: None }, status: 302, headers: {"server": "Cowboy", "report-to": "{\"group\":\"heroku-nel\",\"max_age\":3600,\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?ts=1712306018&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&s=KrA%2BOTdymL0CqPAad5loOyUNMC4BcBEE%2BWCTsxIYvkA%3D\"}]}", "reporting-endpoints": "heroku-nel=https://nel.heroku.com/reports?ts=1712306018&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&s=KrA%2BOTdymL0CqPAad5loOyUNMC4BcBEE%2BWCTsxIYvkA%3D", "nel": "{\"report_to\":\"heroku-nel\",\"max_age\":3600,\"success_fraction\":0.005,\"failure_fraction\":0.05,\"response_headers\":[\"Via\"]}", "connection": "keep-alive", "content-type": "text/html; charset=utf-8", "location": "https://s3.amazonaws.com/gemfury/gems/<redacted-path>/sdxp_0_7_3_py3_none_any_whl?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=<redacted-cred>%2F20240405%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240405T083338Z&X-Amz-Expires=900&X-Amz-SignedHeaders=host&X-Amz-Signature=<redacted-sig>", "vary": "Accept-Encoding", "date": "Fri, 05 Apr 2024 08:33:38 GMT", "via": "1.1 vegur"} }
333 "https://s3.amazonaws.com/gemfury/gems/<redacted-path>/sdxp_0_7_3_py3_none_any_whl?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=<redacted-cred>%2F20240405%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240405T083338Z&X-Amz-Expires=900&X-Amz-SignedHeaders=host&X-Amz-Signature=<redacted-sig>"

So: if I curl -i <the-url-from-the-333-line> I again get the error from AWS: The request signature we calculated does not match the signature you provided. Check your key and signing method.
But if I change the curl-line to curl -i --head <the-url-from-the-333-line> it works.
Next, I change my Rust test program from .head(url) to .get(url), I then take the url that it spits out. Now the url works with curl -i and fails with curl -i --head.
So finally my clue becomes: The HTTP method is encoded in the signature for the S3 urls, so when you pass that S3 url to AsyncHttpRangeReader::from_head_response it won't work. The S3 url would only work with a HEAD request, but AsyncHttpRangeReader::from_head_response uses GET internally. 🤯
Am I right? I need all of your 🧠s to sanity check my logic 😛

I made a proof-of-concept PR to work around the issue. I do that by passing a modified response to the range reader so that it uses the "original" (gemfury) link and not the 302-redirected S3 link. Works for my local repro test case 😄

I have the same issue with pypicloud, and @torarvid 's PR did not work.
❯ cargo install --git https://github.com/torarvid/uv.git --rev 6d89c85 uv
❯ uv pip compile pyproject.toml -o requirements.txt --index-url http://internal-pypi:8080/simple/
error: Failed to download: internal-pkg==0.1.1054928
  Caused by: HTTP status client error (403 Forbidden) for url (https://bucket-name.s3.amazonaws.com/pypi10c6/internal-pkg/internal-pkg-0.1.1054928-py3-none-any.whl
    ?Signature=%2FhTEgX6psBoSyuCM9F4BiwpCEbw%3D
    &Expires=1870939460
    &AWSAccessKeyId=FEWNCEFY
    &x-amz-security-token=TP//////////ARNU/OkGQV/8AwxoYm)

If I manually curl the printed URL, GET works but HEAD gets 403.
curl -vvv https://bucket-name.s3..  # 200
curl -vvv -X HEAD https://bucket-name.s3..  # 403 Forbidden

For pypicloud workaround,
I added 403 Forbidden to https://github.com/astral-sh/uv/pull/2186/files and it worked.

Interesting, ok, we can add that. Do you want to submit a PR?

@charliermarsh I re-opened as I do not think that addresses all of the cases here.

Thanks, sorry, I didn't mean to close this.

If anyone is willing to test https://github.com/astral-sh/uv/pull/3460 I would appreciate it.


if subcommand name is 'import', it will report invalid syntax

I use sh to call sqoop tool which supplies import subcommand to import data from mysql to hdfs.
If I run following codes, it will report invalid syntax:
from sh import sqoop
sqoop.import()

it will return:
  File "<ipython-input-22-3115c14a7852>", line 1
    sqoop.import()
               ^
SyntaxError: invalid syntax

But if I use other subcommand that sqoop supplies, it will work fine.
from sh import sqoop
sqoop.export()

So I doubt that if subcommand name is import, it will conflict with python reserved word import.

my_import = sh.Command("import")

Sorry I just skimmed the original issue.  Try this
from sh import sqoop
sqoop("import")

It should be equivalent to sh.import()

Thanks for your response. I find that it' just a python problem. You can't define the methods named after import, exec  and so on which are python reserved words in class. So it's not a sh problem.
Thanks.


Add configuration option for alternate compilers

Component
Forge, Other (please describe)
Describe the feature you would like
As a smart contract developer who builds in Solidity but requires a compiler that is not solc - its difficult for me to use foundry. It would be greatly beneficial for Foundry to implement alternate compiler configurations for developers using custom ZK compilers for L2s.
An Ideal outcome of this would be having a switch in the config such that you could point the compiler to a local compiler command as opposed to defaulting to solc. This may have downstream affects for loading ABIs and bytecode for testing. An example compiler that would utilize this request would be the zkSync compiler - currently the only option is using hardhat and npm (https://www.npmjs.com/package/@matterlabs/hardhat-zksync-solc).
Additional context
No response

This largely depends on the compiler's solc compatibility and the output's EVM compatibility.
I was unable to locate the actual zksync compiler binary.
Could you help me with that?
so I can't comment on whether this would be possible or not


Some fillers do not show up on save load,

Intersection Marking Tool 1.14.4
Windows 10
Some fillers do not show up on load, the node has to be adjusted with Move it or Node Controller. Seems to happen only on intersection nodes.
To Reproduce
Steps to reproduce the behavior:

Draw filler on intersection node
Close exe, reload savegame. Filler is hidden/invisible until moveit or node controller renewal resets it and then it shows up

Expected behavior
Would be great if all fillers show up on load
Thanks!

I should also add that they show up when zoomed out far, so the LOD seems to work


Using landscape in Appendix will make "List of Appendices" empty

First of all, I would like to thank maintainer for maintaining this repo. Such a blessing to be able to use LaTeX template instead of troublesome Word document. (Apparently no lecturer mentioned that we have LaTeX template until I saw the UTM Thesis page.)
I am trying to have a landscape-oriented page in my appendix. However, the "List of Appendices" ToC will show no entry whenever I tried to use landscape environment (both from lscape and pdflscape package). The page itself will be oriented as landscape correctly.
Edit: After looking for the root cause, it seems the \tableofcontents is the cause the "List of Appendices" to be empty when I tried to use landscape in \appendix.
%% this will break list of appendices (no entry)
\documentclass[oneside]{utmthesis} %% please download the template from https://github.com/utmthesis/utmthesis
\usepackage{pdflscape}

\begin{document}

\tableofcontents
\listofappendices{}

\appendix
\chapter{Time-series Data}
Some data

\begin{landscape}
    \chapter{More Time-series Data}
    More data
\end{landscape}

\endmatter{}

\end{document}

Commenting/unusing \tableofcontents will make the "List of Appendices" entries to appear. However, I also need to use \tableofcontents.
%% this works
\documentclass[oneside]{utmthesis} %% please download the template from https://github.com/utmthesis/utmthesis
\usepackage{pdflscape}

\begin{document}

%\tableofcontents %% commenting \tableofcontents will make \listofappendices entry to appear
\listofappendices{}

\appendix
\chapter{Time-series Data}
Some data

\begin{landscape}
    \chapter{More Time-series Data}
    More data
\end{landscape}

\endmatter{}

\end{document}

My current workaround is by using sidewaysfigure which only rotate a figure, but I would like to have the entire page orientation to be landscape.
Thank you and appreciate for all of your help!
Note: I also posted this issue in TeX StackExchange.

Hi Afiq
You may use rotating instead of pdflscape or lscape.
\usepackage{rotating}
\begin{sidewaystable}
\centering
\begin{tabular}c c c c}
\hline
Col1 & Col2 & Col2 & Col3 \ [0.5ex]
\hline
1 & 6 & 87837 & 787 \
2 & 7 & 78 & 5415 \
3 & 545 & 778 & 7507 \
4 & 545 & 18744 & 7560 \
5 & 88 & 788 & 6344 \ [1ex]
\hline
\end{tabular}
\end{sidewaystable}
On Fri, Dec 30, 2022 at 2:05 AM Afiq Nazrie @.***>
wrote:

I encounter a problem whenever I want to use landscape environment
(either from lscape and pdflscape) as an Appendix, the List of Appendices
will gone.
—
Reply to this email directly, view it on GitHub
https://github.com/utmthesis/utmthesis/issues/25, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD27KUQAJOHIUKOMFOEKKQ3WPXHFBANCNFSM6AAAAAATMJFL3E
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Muhammad Nadzir Marsono, PhD PEng
Associate Professor of Electronics and Computer Engineering
Faculty of Electrical Engineering
Universiti Teknologi Malaysia
Email: @., @.
Web: https://people.utm.my/nadzir
Specialization: Digital system-level design, computer architecture,
many-core system-on-chip, network-on-chip, network processing architecture,
network algorithmics

Hi Afiq
You may use rotating instead of pdflscape or lscape.
\usepackage{rotating}
\begin{sidewaystable}
\centering
\begin{tabular}c c c c}
\hline
Col1 & Col2 & Col2 & Col3 \ [0.5ex]
\hline
1 & 6 & 87837 & 787 \
2 & 7 & 78 & 5415 \
3 & 545 & 778 & 7507 \
4 & 545 & 18744 & 7560 \
5 & 88 & 788 & 6344 \ [1ex]
\hline
\end{tabular}
\end{sidewaystable}
On Fri, Dec 30, 2022 at 2:05 AM Afiq Nazrie @.***>
wrote:

I encounter a problem whenever I want to use landscape environment
(either from lscape and pdflscape) as an Appendix, the List of Appendices
will gone.
—
Reply to this email directly, view it on GitHub
https://github.com/utmthesis/utmthesis/issues/25, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD27KUQAJOHIUKOMFOEKKQ3WPXHFBANCNFSM6AAAAAATMJFL3E
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Muhammad Nadzir Marsono, PhD PEng
Associate Professor of Electronics and Computer Engineering
Faculty of Electrical Engineering
Universiti Teknologi Malaysia
Email: @., @.
Web: https://people.utm.my/nadzir
Specialization: Digital system-level design, computer architecture,
many-core system-on-chip, network-on-chip, network processing architecture,
network algorithmics

@MNMarsono Thank you for your suggestion.
I was considering rotating as the workaround. However, I am just curious (and would like to) on why this I couldn't use landscape

@MNMarsono Apologize but I updated my comments on GitHub which isn't reflected/updated via email. Could you please view my comments on GitHub?

@MNMarsono I investigated further and found that [filename].toc file contents generated by latexmk are different.
Using landscape in \appendix:
\contentsline {chapter}{\hspace {\toc@tab@a }\MakeUppercase {TABLE OF CONTENTS}}{1}{section*.2}%
\contentsline {chapter}{\hspace {\toc@tab@a }\MakeUppercase {LIST OF APPENDICES}}{2}{section*.4}%
\save@tocdepth \setcounter {tocdepth}{0}

Commenting/unusing landscape:
\contentsline {chapter}{\hspace {\toc@tab@a }\MakeUppercase {TABLE OF CONTENTS}}{1}{section*.2}%
\contentsline {chapter}{\hspace {\toc@tab@a }\MakeUppercase {LIST OF APPENDICES}}{2}{section*.4}%
\save@tocdepth \setcounter {tocdepth}{0}
\save@tocdepth \setcounter {tocdepth}{2} %% this line is missing when using landscape

My initial assumption, this might be related to the Appendices ToC configuration in utmthesis.cls starting from line 1878.

After a (very) long time, I managed to find a somewhat workaround.
%% add the following line at the beginning of the .tex file
\newcommand{\changelocaltocdepth}[1]{%
  %% https://tex.stackexchange.com/a/395858/287244
  \addtocontents{toc}{\string\save@tocdepth\protect\setcounter{tocdepth}{#1}}%
  \setcounter{tocdepth}{#1}%
}

The above command will manually add the missing \setcounter... line in .toc files (ref).
The following is the "minimal" working example (not by TeX Exchange standard):
\documentclass[oneside]{utmthesis}

\usepackage{pdflscape}

%% add the following line at the beginning of the .tex file
\newcommand{\changelocaltocdepth}[1]{%
  %% https://tex.stackexchange.com/a/395858/287244
  \addtocontents{toc}{\string\save@tocdepth\protect\setcounter{tocdepth}{#1}}%
  \setcounter{tocdepth}{#1}%
}

\begin{document}

\tableofcontents
\listofappendices{}

\appendix
\changelocaltocdepth{2}

\chapter{Time-series Data}
Some data

\begin{landscape}
\chapter{More Time-series Data}
More data
\end{landscape}

\endmatter{}

\end{document}

thesis-template.pdf
If this looks good to you, I could create a PR to add the workaround.


simd.h refinement: found faster load(...,3) and store(...,3) idioms.

It looks like we're trading simd for serial ops here, but looking at the assembly output shows that gcc and clang (especially clang!) recognize this pattern and turn it into very efficient code. Furthermore, I benchmarked it very carefully, and this makes a definite speedup (significantly so for the 3-float load). I still don't fully understand why my trickery wasn't the fastest method, but the timings could not be more clear, on multiple platforms.
I should clarify: My artificial benchmark that times the load and store of 3-vecs shows marked improvement with this patch. The 3-vec load is recently added and not yet used at all in the code base (except for unit tests), and the 3-vec store is only used in a couple places so far, so this does not yet show any improvement in overall rendering speed. But it will be helpful as we start to use the 3-way load and store in more situations.

LGTM


signrpc: update to musig2 0.4.0

Right now our implementation of musig is fully compliant up until version 0.2.0. Since then, a few changes have been made to nonce generation (which doesn't directly impact the signature generation, and can't fully be verified unless musig-DN is used):
0.5.0 (2022-06-21): Separate ApplyTweak from KeyAgg and introduce KeyGen Context.
0.4.0 (2022-06-20): Allow the output of NonceAgg to be infinity and add test vectors
0.3.2 (2022-06-02): Add a lot of test vectors and improve handling of invalid contributions in reference code.
0.3.1 (2022-05-24): Add NonceGen test vectors
0.3.0 (2022-05-24): Hash i - 1 instead of i in NonceGen
0.2.0 (2022-05-19): Change order of arguments in NonceGen hash function
0.1.0 (2022-05-19): Publication of draft BIP on the bitcoin-dev mailing list

We should implement the changes to nonce generation, and catch up our set of test vectors.
A PR that catches btcec up to 0.4.0 can be found here: https://github.com/btcsuite/btcd/pull/1865

Ok the dependent PR has been merged.
@sputn1ck now we need a PR to lnd that upgrades to the following btcd modules:

btcutil/psbt/v1.1.5
btcutil/v1.1.2
 btcec/v2.2.1


ModuleNotFoundError: No module named 'utils.repository'

I followed the steps inscribed to install it, but there was a problem ：ModuleNotFoundError: No module named 'utils.repository'.
Is there a problem with my path settings?
(hawkeye) root:/tmp/pycharm_project_Hawkeye/Hawkeye# python Examples/APINet.py --config configs/APINet.yaml
Traceback (most recent call last):
File "Examples/APINet.py", line 8, in
from model.loss.APINet_loss import APINetLoss
File "/tmp/pycharm_project_Hawkeye/Hawkeye/model/init.py", line 1, in
from .methods import *
File "/tmp/pycharm_project_Hawkeye/Hawkeye/model/methods/init.py", line 1, in
from .BCNN import BCNN
File "/tmp/pycharm_project_Hawkeye/Hawkeye/model/methods/BCNN.py", line 3, in
from model.backbone import vgg16
File "/tmp/pycharm_project_Hawkeye/Hawkeye/model/backbone/init.py", line 1, in
from .vgg import vgg11, vgg13, vgg16, vgg19, vgg11_bn, vgg13_bn, vgg16_bn, vgg19_bn
File "/tmp/pycharm_project_Hawkeye/Hawkeye/model/backbone/vgg.py", line 7, in
from model.registry import BACKBONE
File "/tmp/pycharm_project_Hawkeye/Hawkeye/model/registry.py", line 1, in
from utils.repository import Repository
ModuleNotFoundError: No module named 'utils.repository'

I found that there was a problem with sys.path,
I ran it fine with pycharm, but the command didn't.


Infinite Action

Check this pipeline. The action runs for infinite time and has to be handled manually.
https://github.com/Shubh-Nisar/Recipe_Recommender/blob/0a191b06c9f6ea9e34f452660b3d1375af8ab80a/.github/workflows/coverage.yml#L34-L37

Infinite action is fixed. The test cases were blocking the bash.


Example extension method does not build

In the GeometryExtensions, the GeometryTransform type is not recognized. Was this written for an older version of ProjNet4GeoAPI?

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

ID: c2dcf82b-f177-e91b-96a5-67f2f57bd6c4
Version Independent ID: 89c0803f-570f-07a6-6dc2-285678712c86
Content: Spatial Data - EF Core
Content Source: entity-framework/core/modeling/spatial.md
Product: entity-framework
GitHub Login: @bricelam
Microsoft Alias: bricelam

Re-opening. We should add a note to install that package (or just the NetTopologySuite meta-package)

GeometryTransform is gone in NTS/ProjNet v2. The sample has been updated to not use it anymore.


get pipx install biobricks working

Right now when a new user does pipx install biobricks they also need to run pipx install dvc or the system won't work.
I think this is because biobricks is probably running a command line version of dvc somewhere.

as of d005f364ae985b13c983d38963d966a486e8cf4d this issue should be fixed.
pipx install biobricks
biobricks configure
biobricks install hgnc

There are also some better tests and github actions.


Cow: Watch rananjayexports.in

Cow requests the watch of the watch_keyword rananjayexports\.in. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

rananjayexports\.in has been seen in 1 true positive, 0 false positives, and 0 NAAs.


Provide a CMakeLists.txt

to allow working on non-unix systems and enable IDE support

Thank you! :smile:


brakeman: 4.4.0 -> 4.5.0

Motivation for this change
Changelog: https://github.com/presidentbeef/brakeman/releases/tag/v4.5.0
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[X] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

@GrahamcOfBorg build brakeman

Built locally. Should this be backported to 19.03?

Thanks!

Should this be backported to 19.03?

I don't it's necessary, it does not contains mayor bugfixes


[Depends on #7021] Adding provision state

depends on #7021

Marking as WIP until dependent PR #7021 is merged

@gmcculloug @bdunne If you could please start reviewing this pr and the one it depends on it would be great! thanks!


make triggers header installation (should only be make install)

The cmake scripts have a bug in them that installs the headers even when only building and not installing.

closed by: #1113


Adding Ransomware Generic Behavior

The Ransomware Generic behavior takes random files from user's desktop and downloads folder and encrypts them in a target folder left on the user's desktop. It also changes the wallpaper and leaves a ransom note.

Fixed System Encryptor Ransomware Code
Added functionality to restore wallpaper in both the ransomwares


Crosshair Misalignment

The crosshair appears to be slightly off-center or shifted to the south-east .
This becomes noticeable when:

The zoom window of the Sniper Rifle aligns with the crosshair (fully zoomed in).
Laser sight/point on the Falcon 2

The crosshair aspect fix might have partially fixed this as well.

Unfortunately not.
But this was also in the n64 version but not a problem at that low resolution.

Can confirm it gets worse the further you get from the center

Can confirm it gets worse the further you get from the center

Looks like that was introduced when I pushed the second aspect correction fix. I don't remember this happening before.

Still seems to be happening with the Falcon 2 for me, it's noticeable with the laser sight - same deviation of the red dot being in the top left. Of course, if this was in the original N64 and just not noticeable because of the control schemes of the time, that might be harder to fix if it's even considered desirable to!


Add support for additional SQL connection parameters

Usage case: allows connections to use TLS and other tuning parameters
The TLS option is close to mandatory when running your SQL db on Azure's hosted MySQL service.
I do have working code and would be very happy to submit a PR.

@richardbolt it looks like this is supported in config. Feel free to reopen if this doesn't work for your case.


Address Balance not reflecting total amount in Balance

Electron Cash v 2.9.3
Address show smaller amount than the balance. I did change from mBCC to BCC
Updated to v 2.9.3 same. No coins are missing as I can send them all.
I donated electroncash.bitcoinplug.com
Status: 274 confirmations
date: 2017-08-19 16:16
Amount sent: 0.0155402 BCC
Size: 225 bytes
Fee: 0.0002034 BCC
Outputs (2)
19dCtow3fWR2oBKtEq9DjGutkQJL8NAAou 0.0155402
1ALA4Mg4KA48YBR7ZJSTDzNFxw6bSs1rcy 9.9842564
Address amount it shows in Red as -10.
History amount shows in Red as -.0.0157436
I donated electron.coinucopia.io
Status: 225 confirmations
date: 2017-08-20 01:58
Amount sent: 0.0011655 BCC
Size: 226 bytes
Fee: 0.000339 BCC
Outputs (2)
1FKxpd4yshoEhFvnsq9QnaPSBr9UwBioBX 0.0011655
1NxbpEn3K9g4qdShMYucYLw2uQKqoHhPmK 2.9984955
Address amount it shows in Red as -3.
History amount shows in Red as -.0.0015045
As you see I gave it a couple of days to propagate. What you suggest I do ?

can i see a screenshot? blur out addresses for privacy. not sure what u mean

Should I send full amount to my 3rd address ?

you sure you just dont have some money in change address or used address and thats why its not matching

No imported from Bittrex and Coinspots and their balance shows 0

Ok I send full amount to the 3rd address and now it all matching balances total up and the 2 previous address disappeared, So I never have a static $0 address.


Normalized volume

Is there a normalized volume function in the shaka player as in youtube that will adjust the volume to e.g. 14 LUFS?
Thx

No, there is no such feature.  Volume is controlled purely through the video element: videoElement.volume = 0.5.  You can set the volume to any value between 0 and 1.  Normalizing could be done through Web Audio APIs, but that's not part of Shaka Player.


How to change the protocol of connector

How to change the protocol of connector

Not quite sure what you're asking, can you give all the commands you ran and any relevant files or logs for reproducing the issue?

server config file settings connector element protocol properties of http1.1 NIO

    <Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"                connectionTimeout="20000"                redirectPort="8443" />

https://tomcat.apache.org/tomcat-8.5-doc/config/http.html#Special_Features

If the client supports only HTTP/1.0 or HTTP/0.9, the Connector will gracefully fall back to supporting this protocol as well. No special configuration is required to enable this support. The Connector also supports HTTP/1.0 keep-alive.

RFC 7230 requires that HTTP servers always begin their responses with the highest HTTP version that they claim to support. Therefore, this Connector will always return HTTP/1.1 at the beginning of its responses.

HTTP/2 Support

HTTP/2 is support is provided for TLS (h2), non-TLS via HTTP upgrade (h2c) and direct HTTP/2 (h2c) connections. To enable HTTP/2 support for an HTTP connector the following UpgradeProtocol element must be nested within the Connector with a className attribute of org.apache.coyote.http2.Http2Protocol.

<Connector ... >
  <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
</Connector>

You could also try asking over at the Docker Community Forums, Docker Community Slack, or Stack Overflow. Since these repos aren't really a user-help forum

Closing since this seems resolved


fix: improve arkdark highlighting for nested type calls

It's not quite clear to me what this PR contributes, could you please provide a helpful title/description? (Not Maint.)

@thetayloredman I asked Shawn to make this PR improving the syntax highlighting for ArkDark.
In general, a PR like this to a dev branch doesn't need a detailed description or anything, but we'll try to do a better job with naming to clarify that for other contributors in the future 😅

@thetayloredman Got it. Yeah this wouldn't have been a good one to review since it's just a bunch of TextMate changes.
You can keep an eye out for PRs on other issues though. Especially after beta is merged things should be more incremental.


Progress Delegate

There doesn't seem to be a way to get progress updates for syncing.  I have a very large dataset that I'm syncing from, and I would like to provide user feedback on the syncing status.  I will be happy to work on this feature, but before doing so I want to be sure that I'm not missing an obvious way of doing this.

Hi @eman8519,
Not sure if this fixes your issue but you could use Core Data's notification system to be notified of progress.
https://github.com/SyncDB/Sync#logging-changes

Thanks @3lvis I will close this for now, and perhaps use the above mentioned as a base for a progress handler I may add in the future (if it is even possible).  I dug in a bit more and found some bottle necks in the DATAFilter class that I've submitted a PR for I have plans to further optimize that class when I have a little more spare time to work on it.  Thank you for your response.


module.pkg undefined throws Cannot read properties of undefined (reading 'dependencies')

have multiple varint deps, only the first one works as expected, after that all fail to find the dist-tag

have multiple varint deps, only the first one works as expected

I have absolutely no idea what this means.
Please provide your inputs.

@rschristian
Cannot read properties of undefined (reading 'dependencies') is thrown when I upload https://github.com/leofcoin/monorepo/blob/main/packages/chain/package.json

As you can see from the screenshot below it finds the correct dist-tag the first time, but after that doesn't

Think I know why, the dependency is a github dependency

the 'g' from github is missing

But on the other side, the created key will always be the same but yet never is a cached module used.

But on the other side, the created key will always be the same but yet never is a cached module used.

I don't know why you think this is, the cache is very clearly used. As it looks like you've inserted your own logs, they're likely setup incorrectly.

Think I know why, the dependency is a github dependency

GitHub deps will not be supported.

Because GitHub dependencies are a really, really bad idea with the current Node package managers. They are not at all equipped to use GH dependencies safely and the use should be heavily discouraged (if not removed outright).
You're referencing code that could change at any point in time without any guarantees of owner. Don't do it.

Aha, I see, makes sense!


Error: Cannot find module "../package.json"

I'm working on integrating Woocommerce Rest API with Ionic 2 using this package:
npm install --save woocommerce-api
import * as WooCommerceAPI from 'woocommerce-api';
ionViewDidLoad() {
var WooCommerce = new WooCommerceAPI({
url: 'http://example.com',
consumerKey: 'ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
consumerSecret: 'cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
});
}
I'm getting this error and app stops running.
Error: Cannot find module "../package.json"
Pls Advice me,
Thanks & Regards,

We don't call "../package.json" in any place, looks like this error it's coming from somewhere else.
Good luck.


Resolve native file path to URI in coverage-report.xsl

coverage-report.xsl has two half-baked parameters tests and pwd. They put a burden upon its caller: https://github.com/xspec/xspec/blob/0e21fca458505ad9b2048e3b42a06a99952a7e3e/bin/xspec.bat#L535-L586
This pull request removes pwd and resolves tests within coverage-report.xsl.
The change depends on file:path-to-uri() which requires Saxon-PE or EE. That shouldn't be a problem, because coverage-report.xsl requires Saxon-PE+ in the first place.
Verified that the pull request generated the same coverage reports as the current master, using the files from #197 and these command lines:
Windows
bin\xspec.bat -c tutorial\coverage\demo.xspec
bin\xspec.bat -c %CD%\tutorial\coverage\demo.xspec

Linux
bin/xspec.sh -c tutorial/coverage/demo.xspec
bin/xspec.sh -c `pwd`/tutorial/coverage/demo.xspec

No automated tests for now. It should be addressed by #195.

@cmarchand,
With this change, these will happen:

pwd is removed from coverage-report.xsl.
coverage-report.xsl expects tests to be a native file path.
If tests is a relative path, coverage-report.xsl resolves it based on the current working directory instead of defunct pwd.

Are they acceptable for XSpec Plugin for Maven?

Thanks @cmarchand ,
I did the aforementioned manual tests again with Saxon-EE <IP_ADDRESS> and <IP_ADDRESS> on Windows and Linux and made sure they worked.
I'll merge this in a few days.

@cirulls
Merged this.


Individual scolling on four panes, keep top debug buttons always visible.

title

Should be addressed in dc909b1 and available in the next release.


Greenkeeper/aws sdk 2.334.0

Coverage remained the same at 100.0% when pulling 62035a55918c313e7ddbc51ed93b3b0cf33c9998 on greenkeeper/aws-sdk-2.334.0 into d8ae6710d438d304475f2a47298f82b160e6cb60 on master.

Coverage remained the same at 100.0% when pulling 62035a55918c313e7ddbc51ed93b3b0cf33c9998 on greenkeeper/aws-sdk-2.334.0 into d8ae6710d438d304475f2a47298f82b160e6cb60 on master.


GSM PPP automatic operator selection slows down setup

The gsm_ppp driver sends the AT+COPS= command during setup to either set a manual operator or to enable automatic operator selection.
Sending AT+COPS=0,0 when automatic operator selection is already enabled has some side effects. On at least U-blox SARA-R412M modems (presumably other models as well), sending this command makes the modem take much longer to connect to the network. In my experience this command adds around one minute to the setup time when using a roaming SIM (or around 10-12 minutes in the case of NB-IoT). I'm not sure what the reason is, but it seems like it forgets which network it last used and does a fresh network scan. Just commenting out this command significantly speeds up the connection setup time. In one application I have it down to around eight seconds.
I would suggest that the driver should first check if automatic operator selection is already enabled by using AT+COPS?. This matches what U-blox themselves are doing in ubxlib: u_cell_net.c:setAutomaticMode().
Another option could be to simply make it possible to not send the AT+COPS command at all, and assume that the modem already has been configured correctly wrt this setting.

It looks like this was fixed in 608ad430f33 ("drivers: modem: RSSI measurement for PPP link"), I will close this bug.


For reference- here is a commit of the project showing the issue-
https://github.com/danieleades/lazy-load-issue

I have a page called 'transactions' which is lazily loaded in router.ts

    {
      path: '/transactions',
      name: 'transactions',
      component: () => import(/* webpackChunkName: "transactions" */ './views/Transactions.vue'),
    },

This route depends on a vuex module which is instantiated and registered in @/store/transactions.ts

const transactionsModule = new TransactionsModule({ store, name: 'transactions' });

export { transactionsModule };

import { Component, Vue } from 'vue-property-decorator';
import { transactionsModule } from '@/store/transactions';

@Component
export default class TransactionsTable extends Vue {
get transactions() {
    return transactionsModule.transactions;
}
}

localhost:XXXX/transactions never loads
page loads normally if remove the dependency on the module, or remove the lazy loading from the router.

any ideas? This library is amazing, please don't make me go back to static, stringly-typed modules!

If i move the dynamic module registration to the same file that i define the vuex store root, it works perfectly. Of course then I no longer have lazy initialisation of the module.

This works perfectly in production builds. I don't think this is anything to do with this package- more likely it's related to the default webpack configuration of the vue-cli service.
vuejs/vue-cli#3903

Sorry for the late response, but I'm glad you figured it out. :)


allow checking if data is loaded from file

I don't like that way to make rubocup happy. It's imposing a change in the API. I prefer this approach https://github.com/yast/yast-yast2/pull/416/files#diff-6d1626dabbddeaff0c92954fcac42127R104

yeah, also possible. OK, so I will change it

LGTM