[bug] tauri dev --no-dev-server doesn't work

Describe the bug
I'm using tauri from pnpm. I want to run the dev server for the FE manually, so I don't want it to be started. According to pnpm tauri dev --help, the --no-dev-server should do it, but it doesn't work. Even if I add that switch, Tauri tries to run the dev server. If it's already running, it will complain of a port conflict.
Reproduction
pnpm tauri dev --no-dev-server

The first line of the output is:
    Running BeforeDevCommand (`pnpm start`)

This step should be skipped.
Expected behavior
The starting of the dev server should be skipped.
Full tauri info output
[⚠] Environment
    - OS: Gentoo Linux 2.15.0 x86_64 (X64)
    ✔ webkit2gtk-4.1: 2.44.1
    ✔ rsvg2: 2.57.3
    ✔ rustc: 1.80.1 (3f5fd8dd4 2024-08-06) (gentoo)
    ✔ cargo: 1.80.1 (376290515 2024-07-16)
    ⚠ rustup: not installed!
      If you have rust installed some other way, we recommend uninstalling it
      then use rustup instead. Visit https://rustup.rs/
    ⚠ Rust toolchain: couldn't be detected!
      Maybe you don't have rustup installed? if so, Visit https://rustup.rs/
    - node: 22.4.1
    - pnpm: 9.11.0
    - npm: 10.8.1

[-] Packages
    - tauri 🦀: 2.0.1
    - tauri-build 🦀: 2.0.1
    - wry 🦀: 0.44.1
    - tao 🦀: 0.30.3
    - @tauri-apps/api : 2.0.0-rc.5 (outdated, latest: 2.0.2)
    - @tauri-apps/cli : 2.0.0-rc.16 (outdated, latest: 2.0.2)

[-] Plugins
    - tauri-plugin-log 🦀: 2.0.1
    - @tauri-apps/plugin-log : not installed!
    - tauri-plugin-fs 🦀: 2.0.1
    - @tauri-apps/plugin-fs : not installed!
    - tauri-plugin-dialog 🦀: 2.0.1
    - @tauri-apps/plugin-dialog : 2.0.0-rc.1 (outdated, latest: 2.0.0)

[-] App
    - build-type: bundle
    - CSP: unset
    - frontendDist: ../dist
    - devUrl: http://localhost:4200/
    - framework: Angular
    - bundler: Webpack

Stack trace
No response
Additional context
No response

--no-dev-server is only relevant if devUrl is a file path (in which case tauri will spin up an internal server). What you want instead is to unset beforeDevCommand.


Delete CONTRIBUTING.md

We don't get external contributions and this file is confusing, inconsistent, noise.
https://trello.com/c/iYNuFHCm/259-remove-contributingmd-files-from-repos
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠

But don't merge this for a few days - let's let @KludgeKML merge this when he's finished testing Feedback.


Action now breaks with 'get_image_info'

This action worked smooth for us some time, but has broken in the last few weeks. Logs can be found here.
This appears to be where the issue breaks:
An error has occurred executing internal preload command 'get_image_info':
{"command":"get_image_info","parameters":{}}

We haven't really changed anything in our code base related to this, and it doesn't appear as any changes has been pushed to this repo either, suggesting that it breaks due to some changes either in balena-cli or in GitHub's Worker infra.
Relevant conversation for context

It looks like it is an issue with the preloader on the latest Ubuntu version, rather than this CLI action.
An issue has been created for the preloader, and I have updated the docs examples to pin to the current ubuntu version that should resolve the issue for this CLI in the meantime: https://github.com/balena-labs-research/community-cli-action/commit/540754692e8560313b752b069972209ceb1c9c3a

Yep. Worked. Details here.


[build-script] Skip unsupported 'check-swift-only_long-optimize' test variant

What's in this pull request?
build-script --long-test --test-optimized
This tries to run check-swift-only_long and check-swift-only_long-optimize
But check-swift-only_long-optimize does not exist.
--- check-swift-only_long-optimize-linux-x86_64 ---
ninja: error: unknown target 'check-swift-only_long-optimize-linux-x86_64'
-- check-swift-only_long-optimize-linux-x86_64 finished --

CC: @gribozavr
Why it's not supported?

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

@rintaro Sorry for the delay, finally got to reconstruct the reasoning behind this limitation.
We would like to be able to mark tests both as executable and long, and then have check-swift-only_long-optimize run them in -O mode.  The reason why we can't currently is that lits limit_to_featuresvariable only allows us to specify a union of desired features.  That is, if we specifylimit_to_features = ['executable_test', 'long_test']` lit will run all executable and all long tests (even non-executable), which will waste time.
I'd like to fix this, but I'm not sure what would be the best way.  One hacky way would be to add a non_executable_test feature.  Every long test would have to declare whether it is executable or not.
Another approach would be to have our own discovery plugin for lit, which would be able to implement any filtering that we like, but that's a much bigger time investment.

Implemented in #2909.

Closing in favor of #2909


sysctl parameter net.netfilter.nf_conntrack_max not being loaded correctly

If we enable Calico, the following files are created:
# /etc/modules-load.d/nf.conf
nf_conntrack

# /etc/sysctl.d/nf.conf
net.netfilter.nf_conntrack_max=1000000

But, for some reason, this value is not being applied unless we manually restart the systemd-sysctl service:
# Before manually restarting the service
$ sysctl net.netfilter.nf_conntrack_max
net.netfilter.nf_conntrack_max = 131072

$ sudo systemctl restart systemd-sysctl
$ sysctl net.netfilter.nf_conntrack_max
net.netfilter.nf_conntrack_max = 1000000

My guess is the following snippet - which apparently has the job of restarting the systemd-sysctl service in order to load the custom nf_conntrack_max value - is not working:
    # https://github.com/coreos/docs/blob/5d7b1cccb8286185275b07db1495828be9fdb0ea/os/other-settings.md#tuning-sysctl-parameters
    - name: systemd-modules-load.service
      command: restart
    - name: systemd-sysctl.service
      command: restart

we might want to use systemd-systctl.path systemd unit to trigger system-systctl.service reload on file updates

It seems like kube-proxy is overriding this as well.
Here goes kube-proxy logs with --v=3:
I0620 17:44:42.610179       1 server.go:225] Using iptables Proxier.
W0620 17:44:42.629544       1 proxier.go:298] clusterCIDR not specified, unable to distinguish between internal and external traffic
I0620 17:44:42.629571       1 server.go:249] Tearing down userspace rules.
I0620 17:44:42.650987       1 reflector.go:198] Starting reflector *api.Service (15m0s) from k8s.io/kubernetes/pkg/proxy/config/api.go:46
I0620 17:44:42.651038       1 reflector.go:236] Listing and watching *api.Service from k8s.io/kubernetes/pkg/proxy/config/api.go:46
I0620 17:44:42.651134       1 reflector.go:198] Starting reflector *api.Endpoints (15m0s) from k8s.io/kubernetes/pkg/proxy/config/api.go:49
I0620 17:44:42.651192       1 reflector.go:236] Listing and watching *api.Endpoints from k8s.io/kubernetes/pkg/proxy/config/api.go:49
I0620 17:44:42.750998       1 config.go:196] Calling handler.OnServiceUpdate()
I0620 17:44:42.751226       1 config.go:95] Calling handler.OnEndpointsUpdate()
I0620 17:44:42.751344       1 server.go:424] getConntrackMax: using conntrack-min
I0620 17:44:42.751361       1 conntrack.go:81] Set sysctl 'net/netfilter/nf_conntrack_max' to 131072
I0620 17:44:42.751163       1 proxier.go:472] Adding new service "kube-system/affable-rat-aws-cluster-autoscaler:" at <IP_ADDRESS>:8085/TCP
I0620 17:44:42.751835       1 proxier.go:472] Adding new service "development/lap-1141-mongodb:mongodb" at <IP_ADDRESS>:27017/TCP
I0620 17:44:42.751954       1 conntrack.go:66] Setting conntrack hashsize to 32768


TLS broken : vstest.console.exe still use .NET 4.5

Description
vstest.console project still target net4.5, beside the fact that it's not supported anymore since 2015.
It adds a problem: by default, .net apps build against .net version 4.5 do not use TLS 1.2, so if tests are using HTTP requests to call a server where only TLS 1.2+ is enabled (as per global recommendation) the test will fail.
My reproduction case happens when using Azure DevOps and using vstest task.
Steps to reproduce

Create a unit tests which requests an http resource only accessible through TLS 1.2
Run the test using any test host (dotnet test, etc.), the test will pass
Run the test using vstest.console.exe: the test will fail

-------- System.IO.IOException : Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.
------------ System.Net.Sockets.SocketException : An existing connection was forcibly closed by the remote host

Expected behavior
The request should succeed using the most recent TLS protocol available
Actual behavior
The request fail.
Suggestion
You should at least update vstest.console.exe to 4.7.1+

It seems that #3646 will fix this problem,

Still we will fix by moving to .net462 in next sprint.

I was just coming back to suggest adding at least the correct AppContextSwitch ;Switch.System.Net.DontEnableSystemDefaultTlsVersions=false. It seems you were quicker :)

Just wanted to jump into this thread to report that we are facing the same issue in our Azure DevOps build pipeline. Looking forward to the fix :)

Fixed by #3646


implement lval semantics for list index, add hardcoded sort

WIP

@Calvin-L this hardcoded thing feels more or less like a native function ...


Exhaustive match statement treated as inexhaustive

 Environment data

Language Server version: 2021.5.4
OS and version: darwin x64
Python version (and distribution if applicable, e.g. Anaconda): python3.10.0b2_0
python.analysis.indexing: undefined
python.analysis.typeCheckingMode: strict

 Expected behaviour
Test function shouldn't have any errors
 Actual behaviour
Pylance warns that test can return None despite the match statement being exhaustive
Additionally, on adding an additional case, pylance correctly identifies the new variable as Never, showing that the match statement is exhaustive
 Code Snippet / Additional information
def test(x: int) -> str:
    """             ^^^
    Function with declared type of "str" must return value
    Type "None" cannot be assigned to type "str"
    """
    match x:
        case int():
            return ""

def testSucceeds(x: int) -> str:
    match x:
        case int():
            return ""
        case y:  # (variable) y: Never
            return y

This is intended behavior, at least currently. It will handle the case where you are employing an "irrefutable" pattern, as in your second case. This can be detected earlier in the analysis process before building the code flow graph. For your first example, the type checker requires a full type analysis to determine whether matching is exhaustive, and it's too late at that point to affect the code flow graph.
It is theoretically possible for us to add support for this case, but it would be significant complexity and potentially very costly at runtime. We implemented a similar feature called "implied else narrowing" for chains of if/elif statements with no "else". It took a long time to get this right, and we needed to apply some critical limitations to make it performant.
Since the match statement is so new and very few people are using it at this point, I think it would be premature to invest in such a feature. We can revisit this if and when more people start to use this feature.
For now, you can work around this limitation by adding an irrefutable case at the end of your match statement.
def test(x: int) -> str:
    """
    Function with declared type of "str" must return value
    Type "None" cannot be assigned to type "str"
    """
    match x:
        case int():
            return ""
        case _:
            raise Exception('Should never get here')

or
def test(x: int) -> str:
    """
    Function with declared type of "str" must return value
    Type "None" cannot be assigned to type "str"
    """
    match x:
        case int():
            return ""

    raise Exception('Should never get here')

Alright, I'll probably end up making an Exhaustive exception for these cases and using it to indicate exhaustiveness.
Thank you for looking over this.

After thinking about this more, I came up with a way to handle this in a way that will will have a minimal performance impact. With this new approach in place, the type checker is now able to detect match exhaustion and handle the case above. This will be in the next release of pylance.

This issue has been fixed in version 2021.6.1, which we've just released. You can find the changelog here: https://github.com/microsoft/pylance-release/blob/main/CHANGELOG.md#202161-9-june-2021


Wrapper script for POSIX shell has invalid URL to groovy template

Issue type
Wrong or misleading information
Problem description
There is a problem in gradlew script. Given URL as bellow leads to 404. I don't know the correct URL for this template.
#   (3) This script is generated from the Groovy template
#       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
#       within the Gradle project.

Context (optional)
No response
Page with the problem
/gradlew

It was moved here:

https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt

The updated wrapper has the right URL.


HDDS-2102. HddsVolumeChecker should use java optional in place of Guava optional. Contributed by Mukul Kumar Singh.

HddsVolumeChecker should use java optional in place of Guava optional as Guava Optional is marked as unstable.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
100
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

+1
test4tests
0
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1
mvninstall
691
trunk passed

+1
compile
388
trunk passed

+1
checkstyle
74
trunk passed

+1
mvnsite
0
trunk passed

+1
shadedclient
979
branch has no errors when building and testing our client artifacts.

+1
javadoc
185
trunk passed

0
spotbugs
453
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
688
trunk passed

_ Patch Compile Tests _

+1
mvninstall
555
the patch passed

+1
compile
409
the patch passed

+1
javac
409
the patch passed

+1
checkstyle
80
the patch passed

+1
mvnsite
0
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
725
patch has no errors when building and testing our client artifacts.

+1
javadoc
183
the patch passed

+1
findbugs
768
the patch passed

_ Other Tests _

-1
unit
313
hadoop-hdds in the patch failed.

-1
unit
289
hadoop-ozone in the patch failed.

+1
asflicense
42
The patch does not generate ASF License warnings.

6642

Reason
Tests

Failed junit tests
hadoop.hdds.scm.block.TestBlockManager

hadoop.ozone.om.ratis.TestOzoneManagerRatisServer

Subsystem
Report/Notes

Docker
Client=18.09.7 Server=18.09.7 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1416/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/1416

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 626c82f6d9c2 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 469165e

Default Java
1.8.0_222

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-1416/1/artifact/out/patch-unit-hadoop-hdds.txt

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-1416/1/artifact/out/patch-unit-hadoop-ozone.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-1416/1/testReport/

Max. process+thread count
1325 (vs. ulimit of 5500)

modules
C: hadoop-hdds/container-service U: hadoop-hdds/container-service

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-1416/1/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

Thank You @mukul1987 for the contribution.
I have committed this to the trunk.


Calendar widget access

Hey there,
Is it possible just to expose the Calendar widget alone instead of the entire Date Picker?

Hi, seems that there is no way for now)
Because of its build with rollup as entire module, with just 3 exports.
Hmm I think we should change build strategy like in material ui to have exported all component.

@dmtrKovalenko Will you take care of this? I can reuse the same methods used by material-ui.

@mokargas Now you can access whatever you want. it's all under material-ui-pickers/src.
import Calendar from 'material-ui-pickers/src/DatePicker/Calendar';

...


Some /lights disappear from 'ph get' with power loss

Apologies in advance if this is a deCONZ issue not a hb-hue issue. I'm not as technical as I wish I were, and have a hard time wrapping my head around where exactly the delineation occurs!
Issue
If I lose power, when power is restored, sometimes (not always) around half of my Zigbee devices have disappeared from my configuration. Typically, hb-hue won't start because of the missing devices. They've disappeared from Phoscon and ph get.
More problematic is that some devices disappear from the /lights section, but parts of them remain in /sensors (like the battery status of a window shade) which can be difficult to track down and it seems they can't be re-added until those orphans are removed, especially with one of my homes where I have a good number of actual sensors.
After it happened a couple times, I tried lightlist -v thinking maybe that was what I needed, but it only created an error because hb-hue is now waiting for a device which is in the lightlist but has poofed out of existence from /lights.
If this isn't a plugin issue (which as I type it out seems more likely I may be in the wrong place) is there some way to protect the configuration interface file (REST interface config...?) or, at the very least, can it be restored lock-stock-and-barrel from a saved copy assuming there have been zero changes to the configuration since the backup? (Or is there no way around needing to 're-pair' the devices that were lost?
I'm looking into a battery backup for my Raspberry Pi, and while that might help, it isn't a real actual solution.
Thanks!
Log Messages
Not relevant in this case, I don't think?
Debug Files
Also pretty sure does not apply in this case.

Perfect, exactly what I need! Thanks for the tip.


Option to force all attributes to type string

Firstly, thanks for the great tool.
Can you include an option to force all Xml attributes (fields/properties) to the data type of C# string?
Currently the tool appears to be interpreting the data types as a C# object, int, decimal, bool, which is causing issues. What I am doing in the meantime is manually updating the data types to string to resolve the issues.
Below is an example of a generated class where the Xml attributes (represented by C# properties in the class) are using various data types.
`[XmlRoot(ElementName="DeviceInstance")]
public class DeviceInstance {
[XmlElement(ElementName="Security")]
public object Security { get; set; }

[XmlAttribute(AttributeName="Id")]
public string Id { get; set; }

[XmlAttribute(AttributeName="Address")]
public int Address { get; set; }

[XmlAttribute(AttributeName="Name")]
public object Name { get; set; }

[XmlAttribute(AttributeName="ProductRefId")]
public string ProductRefId { get; set; }

[XmlAttribute(AttributeName="Hardware2ProgramRefId")]
public string Hardware2ProgramRefId { get; set; }

[XmlAttribute(AttributeName="Comment")]
public object Comment { get; set; }

[XmlAttribute(AttributeName="Description")]
public object Description { get; set; }

[XmlAttribute(AttributeName="IsActivityCalculated")]
public bool IsActivityCalculated { get; set; }

[XmlAttribute(AttributeName="LastModified")]
public DateTime LastModified { get; set; }

[XmlAttribute(AttributeName="Puid")]
public int Puid { get; set; }

}`

Contributions are welcome to include this feature in the tool if anyone's interested in doing it


Add support for digital signatures

I want to add digital signature extension with .pfx file into the pdf document.
How to do this using xhtml2pdf?

Duplicate of #330


API changes broke the client

Some Wikidata API changes have made the current version broken by default, with tests failing:

HTTPS now required.
query-continue no longer supported (for search results)
hard-coded results in the spec files (down to the precise number of expected hits for "Michael Jackson"...) have come to no longer be accurate.

I have submitted a pull request that fixes all of these issues and bumps the version, with separate commits.

Fix https://github.com/klacointe/wikidata-client/commit/6e0083f60cc0c79e51da2c4f7dcd791e4cff8a22


v2.11.1

Add Lock Time Of The Day checkbox in context menu
Remove clientside persistent data code (unused)
Add respawn key (Y by default)

It was the main idea but i am not good at css but i'll try if you want


Sharing badges to twitter

Currently, the predefined tweet text is

(username) earned the (badge name) on MissingMaps!

Should we change it to either #MissingMaps or @TheMissingMaps for easier tracking/interaction?

@nerdanel :+1:

The message that twitter pops up with can be found in UserSubHead.js, lines 137 & 139.
The second message is for the use case when a user tries to tweet a page without any badges on it.
    if (this.state.badgeCheck) {
      var badgeName = this.state.userBadge;
      var badgeLevel = this.state.badgeLevel;
      twittermsg = this.state.userNameCap + ' earned the ' + badgeName + ' badge (lv.' + badgeLevel + ') on MissingMaps!';
    } else {
      twittermsg = this.state.userNameCap + ' contributed to MissingMaps! Checkout their progress at ';
    }

finished.


Language support for SWIFT ?

@singharsh thanks for bringing this up. We don't have support for SWIFT right now. The Gauge team is busy working on other features right now. But if you would like to build a language runner for SWIFT, you can do this. This post maybe helpful for you.

Closing this as Gauge will not be adding official support for swift.


[suggestion] Moving the computed property to a getter

Hey,
Awesome job with idle-vue!
I don't understand why you are injecting a computed property to every Vue object.
Why don't you create a getter isAppIdle in the store and let us subscribe to that value? That would be way more flexible & practical ;)
Thanks a lot!

@willylatorre Thank you very much!
There is already a idleVue.isIdle property in the store; you can access it for free. I guess I could remove the isAppIdle computed property, but I doubt it will cause many collisions, and it's faster to type in v-if directives.

Yeah, I know, but a lot of people work with getters instead of the whole store. Plus, the getter will act as a computed property as defined in the docs of vuex and it will be faster to type in the v-if directives as you say.
Basically, we do have getters to avoid creating this type of computed property!

I've thought about it, and I think I'll leave the system as-is. Accessing the store's states doesn't incur any overhead as far as I'm aware; and having a computed property baked-in is easier who want the module to "just work" with a few configuration as possible (for instance, without having to use mapGetters in every component).
I understand that this isn't the most elegant solution, but this is a low-scale module, and elegance isn't as important as it being fast and intuitive to use.
I may remove the computed property and make accessing store states the only solution if I realise it's confusing users.


Added SW4STM32 project exporter for stm32 targets

This commit adds project exporting to sw4stm32 IDE (http://www.openstm32.org/). Output of  <python ./project.py -S> with list of supported boards are in attached file sw4stm32_supported_boards.txt

Hi, can you please sign http://developer.mbed.org/contributor_agreement/ ?
I'll have a look at this changeset. Would you consider adding this to progen ?

Looks good to me otherwise. We can merge this within today

I made requested changes. For me It's also fine to merge :).
thanks


Bugfix fixing LUN variable

Description
Closes #104

Type of Change

[ ] Non-module change (e.g. CI/CD, documentation, etc.)
[x] Azure Verified Module updates:

[x] Bugfix containing backwards compatible bug fixes

[x] Someone has opened a bug report issue, and I have included "Closes #{bug_report_issue_number}" in the PR description.
[ ] The bug was found by the module author, and no one has opened an issue to report it yet.

[ ] Feature update backwards compatible feature updates.
[ ] Breaking changes.
[x] Update to documentation

Checklist

[x] I'm sure there are no other open Pull Requests for the same update/change
[ ] My corresponding pipelines / checks run clean and green without any errors or warnings
[ ] I did run all  pre-commit checks

@microsoft-github-policy-service agree company="Singtel"

This pr passed all tests in #107 .


Synchronise input time domain analyses

After checking the pairwise plots for low correlations, we found that the input signals are not yet correct. In order to get the correct input for the cross-correlations

[x] create data synchronising script
[ ] build-in check: start and end time are equal for the signals that will be compared
[ ] remove data where shaking frequency was null, or high sampling frequency was performed double for some devices

Started in the branch: issue35_synchronize_input

Maybe then also make sure that frequency spectrum analysis uses the exact same time series. In that way we know that data has been cleaned and process identically.

Data also still contains -1 shaking_frequency values, I think we need to remove these too

Maybe then also make sure that frequency spectrum analysis uses the exact same time series. In that way we know that data has been cleaned and process identically.

For the frequency domain, signals are not required to have the same length for "pairwise" calculation, so maybe only perform the removal of the null condition and -1 (where the experiment was stopped).

To make a strandardised comparison it helps to know that we are using the exact same time segments. If we accidentally include or remove parts of the experiments in one sensor brand then that would invalidate the comparison of the frequency spectra. The movement exposure needs to be identical.

Things to check

[ ] Do we include activPAL in the frequency spectrum analyses? --> we first included this, but after the feedback by @vincentvanhees I'm in doubt

[ ] Check the sampling frequency of Ax_834


Saving request remote_ip on TicketGrantingTicket user_ip

Thank you for your work! It looks quite good. Could you check my comment? Afterwards we are ready to merge, I think.

Done!

LGTM


Why can't we keep KindleGen OOB?

Quick Question: Why do we have to download and place KindleGen in the source folder? Can't we just keep it out of the box? I think you guys would have thought about this but would have had some obstacles doing it. I am not aware of any limitations Amazon has given but am always ready to learn.
PS: Great fan of your tool. I've read hundreds of comics converted by this tool.

KindleGen license don't allow redistribution.


fix: defocus input on tap and drawer open

closes #5
changes:

add onDrawerChanged: and onEndDrawerChanged: to home screen Scaffold to defocus input on drawer open
add onTap: to InkWell to defocus input when messages are tapped
wrap home screen Scaffold with GestureDetector to defocus input when tapped in most other areas

Also happens when you click the people icon.
maybe adding FocusManager.instance.primaryFocus?.unfocus(); will fix that too?
https://github.com/muxable/rtchat/blob/main/lib/screens/home.dart#L212

Also happens when you click the people icon.
maybe adding FocusManager.instance.primaryFocus?.unfocus(); will fix that too?
https://github.com/muxable/rtchat/blob/main/lib/screens/home.dart#L212

Also happens when you click the people icon. maybe adding FocusManager.instance.primaryFocus?.unfocus(); will fix that too?
https://github.com/muxable/rtchat/blob/main/lib/screens/home.dart#L212

https://github.com/cswills/rtchat/blob/ae822cfae8e80b4bafda7c0285311e73b7b5d5eb/lib/screens/home.dart#L174-L175
This code defocuses input when the people icon is pressed.


Live CD: memtest is missing in UEFI mode

Issue description
The NixOS live CDs / default installer media contains a memtest86+ entry when booting in BIOS mode. But it's missing when booting in UEFI mode.
Can we add memtest to the UEFI mode?
Steps to reproduce

Download NixOS 17.03 iso from https://nixos.org/
Boot in BIOS mode, see the memtest86+ entry
Boot in UEFI mode, memtest86+ entry missing

memtest86+ is not compatible with UEFI mode, I suppose.

Ok, closing then.

Re-opening since memtest86+ is compatible with UEFI now (from https://memtest.org/):

Memtest86+ can be loaded and run either directly by a PC BIOS (legacy or UEFI) or via an intermediate bootloader that supports the Linux 16-bit, 32-bit, 64-bit, or EFI handover boot protocol.

I noticed that neither Fedora nor Ubuntu have memtest entries in their live images, and that https://www.memtest.org/ releases ISO files, which I can drop into my USB drive with Ventoy.
I'm no longer so sure we should add it.


1.Generating a new request from a list of book 2.Search availabel boo…

Generating a new request by choosing a book from a listview

search book by title/author/description

Almost done but I am currently working on query with 0 length. But it seems like firebase doe not support empty query.

Upon testing, going to Profile from the side drawer crashes the application.
Stack trace:
    Process: com.example.atheneum, PID: 12231
    java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.example.atheneum.models.User.getUserName()' on a null object reference
        at com.example.atheneum.fragments.ViewProfileFragment.onCreateView(ViewProfileFragment.java:74)
        at android.support.v4.app.Fragment.performCreateView(Fragment.java:2439)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1460)
        at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
        at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:802)
        at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2625)
        at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2411)
        at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366)
        at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273)
        at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6111)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)```

Bug:
Going to the Borrower fragment twice from the side drawer cause two fragments to appear. Pressing the phone's back button shows this as you need to press the phone's back button twice before returning to the Home screen.

Bug:
After adding a request, the borrower page fragment is duplicated. Probably similar bug to above.

Adding a book sometimes causes the application to crash. Not too sure why.
Stack trace:
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 12419
    java.lang.IllegalStateException: Fragment BorrowerPageFragment{a539c2f} not attached to a context.
        at android.support.v4.app.Fragment.requireContext(Fragment.java:696)
        at android.support.v4.app.Fragment.getResources(Fragment.java:760)
        at android.support.v4.app.Fragment.getString(Fragment.java:782)
        at com.example.atheneum.fragments.BorrowerPageFragment$1.onDataChange(BorrowerPageFragment.java:93)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6111)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)

Bug:
After adding a request, the borrower page fragment is duplicated. Probably similar bug to above.

This bug exists in Owner/profile/borrower section. These might comes from the design of fragment. I don't really understand it right now. And I will have a look in this problem.

Upon testing, going to Profile from the side drawer crashes the application.
Stack trace:
    Process: com.example.atheneum, PID: 12231
    java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.example.atheneum.models.User.getUserName()' on a null object reference
        at com.example.atheneum.fragments.ViewProfileFragment.onCreateView(ViewProfileFragment.java:74)
        at android.support.v4.app.Fragment.performCreateView(Fragment.java:2439)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1460)
        at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
        at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:802)
        at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2625)
        at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2411)
        at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366)
        at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273)
        at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6111)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)```

I suspect this problem coming from the 'intent' in view profile fragment. Should we use firebase query instead of intent to filling the textView? I am not quite familiar with the part.

Bug:
Going to the Borrower fragment twice from the side drawer cause two fragments to appear. Pressing the phone's back button shows this as you need to press the phone's back button twice before returning to the Home screen.

I think we can define the back button in the manifests file to restrict its navigation to fix this problem.

Upon testing, going to Profile from the side drawer crashes the application.
Stack trace:
    Process: com.example.atheneum, PID: 12231
    java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.example.atheneum.models.User.getUserName()' on a null object reference
        at com.example.atheneum.fragments.ViewProfileFragment.onCreateView(ViewProfileFragment.java:74)
        at android.support.v4.app.Fragment.performCreateView(Fragment.java:2439)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1460)
        at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
        at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:802)
        at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2625)
        at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2411)
        at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366)
        at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273)
        at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6111)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)```

I suspect this problem coming from the 'intent' in view profile fragment. Should we use firebase query instead of intent to filling the textView? I am not quite familiar with the part.

I don't think that the profile view errors are even related to your change at all. I've noticed them happening for a while now, on various different branches. Fixing the profile page is part of #85 which is assigned to @samjwu currently. I don't think you should worry about it.

Bugs fixed:

book owned by current user don't show in search book list
search the book by a set of keywords. (currently not use ViewModel)

I tried running this and the borrower fragment consistently crashes for me with this starcktrace:
2019-03-09 00:21:59.268 9919-9919/com.example.atheneum E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 9919
    com.google.firebase.database.DatabaseException: Can't convert object of type java.lang.String to type com.example.atheneum.models.Book
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertBean(com.google.firebase:firebase-database@@16.0.6:423)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.deserializeToClass(com.google.firebase:firebase-database@@16.0.6:214)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertToCustomClass(com.google.firebase:firebase-database@@16.0.6:79)
        at com.google.firebase.database.DataSnapshot.getValue(com.google.firebase:firebase-database@@16.0.6:212)
        at com.example.atheneum.fragments.newRequest$5.onDataChange(newRequest.java:263)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:761)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:156)
        at android.app.ActivityThread.main(ActivityThread.java:6523)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)

I've added in some logging in retriveBook()
            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
//                Log.d(TAG, "On Data Change was Called");
                availableBook.clear();
                Log.i(TAG, "child count: " + dataSnapshot.getChildrenCount());
                for (DataSnapshot child : dataSnapshot.getChildren()) {
                    Log.i(TAG,  String.format("Child ref: %s, child key: %s", child.getRef().toString(), child.getKey()));

This is what the log produces before the crash:
2019-03-09 00:21:59.258 9919-9919/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/4ae43a1f-7e30-466a-9dfe-c24e2ee8e6c6, child key: 4ae43a1f-7e30-466a-9dfe-c24e2ee8e6c6
2019-03-09 00:21:59.263 9919-9919/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/a919495c-2c9b-43ff-a86f-6b1f748483ec, child key: a919495c-2c9b-43ff-a86f-6b1f748483ec
2019-03-09 00:21:59.265 9919-9919/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/ab63945c-f67e-4c2e-9e95-8438b2fb0a27, child key: ab63945c-f67e-4c2e-9e95-8438b2fb0a27
2019-03-09 00:21:59.267 9919-9919/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/author, child key: author

Notice the last line in particular:
2019-03-09 00:21:59.267 9919-9919/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/author, child key: author

It seems like for some reason a child of books/ has the key 'author' which isn't possible because I checked the Firebase console and I couldn't find a book in books/ with that key. All the books look like they have a correct bookID. This is very weird. I can't understand why this is happening.

I went back to this commit, 658d73b7751de9754bfd8453a64b6c0c3f8186cb, on my local machine and I still received the crash. I added the same logging to the Firebase queries.
2019-03-09 11:16:41.388 29535-29535/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/4ae43a1f-7e30-466a-9dfe-c24e2ee8e6c6, child key: 4ae43a1f-7e30-466a-9dfe-c24e2ee8e6c6
2019-03-09 11:16:41.392 29535-29535/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/a919495c-2c9b-43ff-a86f-6b1f748483ec, child key: a919495c-2c9b-43ff-a86f-6b1f748483ec
2019-03-09 11:16:41.393 29535-29535/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/author, child key: author
2019-03-09 11:16:41.394 29535-29535/com.example.atheneum E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 29535
    com.google.firebase.database.DatabaseException: Can't convert object of type java.lang.String to type com.example.atheneum.models.Book
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertBean(com.google.firebase:firebase-database@@16.0.6:423)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.deserializeToClass(com.google.firebase:firebase-database@@16.0.6:214)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertToCustomClass(com.google.firebase:firebase-database@@16.0.6:79)
        at com.google.firebase.database.DataSnapshot.getValue(com.google.firebase:firebase-database@@16.0.6:212)
        at com.example.atheneum.fragments.newRequest$1.onDataChange(newRequest.java:104)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:761)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:156)
        at android.app.ActivityThread.main(ActivityThread.java:6523)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
2019-03-09 11:16:41.400 1843-5958/? E/ReportTools: This is not beta user build

I added a try/catch to catch the database exception. I did some logging and I found that I got something like this:
2019-03-09 11:16:41.393 29535-29535/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/author
2019-03-09 11:16:41.393 29535-29535/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/title
2019-03-09 11:16:41.393 29535-29535/com.example.atheneum I/AddRequest: Child ref: https://atheneum-42d58.firebaseio.com/books/status

It seemed like the database is randomly returning fields for an individual book and returning that as a key. But I stopped being able to reproduce this after a while for some reason.

I just tried to make a request when I didn't have anything and I got his exception:
2019-03-09 11:56:51.226 32747-32747/com.example.atheneum E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 32747
    java.lang.IllegalStateException: Fragment BorrowerPageFragment{b8190f1} not attached to a context.
        at android.support.v4.app.Fragment.requireContext(Fragment.java:696)
        at android.support.v4.app.Fragment.getResources(Fragment.java:760)
        at android.support.v4.app.Fragment.getString(Fragment.java:782)
        at com.example.atheneum.fragments.BorrowerPageFragment$1.onDataChange(BorrowerPageFragment.java:93)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:761)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:156)
        at android.app.ActivityThread.main(ActivityThread.java:6523)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)

I'm still noticing this crash happening:
2019-03-09 12:17:40.148 3538-3538/com.example.atheneum E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 3538
    java.lang.IllegalStateException: Fragment BorrowerPageFragment{3f568bf} not attached to a context.
        at android.support.v4.app.Fragment.requireContext(Fragment.java:696)
        at android.support.v4.app.Fragment.getResources(Fragment.java:760)
        at android.support.v4.app.Fragment.getString(Fragment.java:782)
        at com.example.atheneum.fragments.BorrowerPageFragment$1.onDataChange(BorrowerPageFragment.java:93)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:761)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:156)
        at android.app.ActivityThread.main(ActivityThread.java:6523)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
2019-03-09 12:17:40.155 1843-5958/? E/ReportTools: This is not beta user build

Luckily, I took a screen recording while this happened which I put on the drive: link

I'm still noticing this crash happening:
2019-03-09 12:17:40.148 3538-3538/com.example.atheneum E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 3538
    java.lang.IllegalStateException: Fragment BorrowerPageFragment{3f568bf} not attached to a context.
        at android.support.v4.app.Fragment.requireContext(Fragment.java:696)
        at android.support.v4.app.Fragment.getResources(Fragment.java:760)
        at android.support.v4.app.Fragment.getString(Fragment.java:782)
        at com.example.atheneum.fragments.BorrowerPageFragment$1.onDataChange(BorrowerPageFragment.java:93)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:761)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:156)
        at android.app.ActivityThread.main(ActivityThread.java:6523)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
2019-03-09 12:17:40.155 1843-5958/? E/ReportTools: This is not beta user build

Luckily, I took a screen recording while this happened which I put on the drive: link

Thanks. It is a very strange error. I also made a recording on my screen and put in the drive. Your error does not happen in my local machine.
(https://drive.google.com/drive/u/0/folders/1lZzDrb8W-B2S3Ol9_1aj8YWyxnyhcvUO)

@Kaho-Lee I just pulled the branch again and made sure I had no working changes on top of it. I took a new screen recording (link) and I wasn't able to reproduce the crashes. I think we should get others to test this to see if this is just a problem with my device. @AY-Chen can you pull this branch and test the changes?

@Kaho-Lee I just pulled the branch again and made sure I had no working changes on top of it. I took a new screen recording (link) and I wasn't able to reproduce the crashes. I think we should get others to test this to see if this is just a problem with my device. @AY-Chen can you pull this branch and test the changes?

I just tested it and got the same error, but i did some whacky stuff beforehand too
2019-03-09 13:12:45.849 12639-12639/com.example.atheneum E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.atheneum, PID: 12639
    java.lang.IllegalStateException: Fragment BorrowerPageFragment{e423269} not attached to a context.
        at android.support.v4.app.Fragment.requireContext(Fragment.java:696)
        at android.support.v4.app.Fragment.getResources(Fragment.java:760)
        at android.support.v4.app.Fragment.getString(Fragment.java:782)
        at com.example.atheneum.fragments.BorrowerPageFragment$1.onDataChange(BorrowerPageFragment.java:93)
        at com.google.firebase.database.core.ValueEventRegistration.fireEvent(com.google.firebase:firebase-database@@16.0.6:75)
        at com.google.firebase.database.core.view.DataEvent.fire(com.google.firebase:firebase-database@@16.0.6:63)
        at com.google.firebase.database.core.view.EventRaiser$1.run(com.google.firebase:firebase-database@@16.0.6:55)
        at android.os.Handler.handleCallback(Handler.java:789)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6541)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

I had hit the back button a whole bunch of times and noticed the fragment drawing over other ones. I think it's not being properly added to the stack. You can ask @samjwu for more about that. That might also relate to why it's losing its context.

I got a compile error when building:
Android resource linking failed
/.../Atheneum/app/build/intermediates/merged_manifests/debug/processDebugManifest/merged/AndroidManifest.xml:28: error: resource string/title_activity_edit_profile (aka com.example.atheneum:string/title_activity_edit_profile) not found.
/.../Atheneum/app/build/intermediates/merged_manifests/debug/processDebugManifest/merged/AndroidManifest.xml:69: error: resource string/title_activity_view_profile (aka com.example.atheneum:string/title_activity_view_profile) not found.
error: failed processing manifest.

I got a compile error when building:
Android resource linking failed
/.../Atheneum/app/build/intermediates/merged_manifests/debug/processDebugManifest/merged/AndroidManifest.xml:28: error: resource string/title_activity_edit_profile (aka com.example.atheneum:string/title_activity_edit_profile) not found.
/.../Atheneum/app/build/intermediates/merged_manifests/debug/processDebugManifest/merged/AndroidManifest.xml:69: error: resource string/title_activity_view_profile (aka com.example.atheneum:string/title_activity_view_profile) not found.
error: failed processing manifest.

I saw your new commit of request notification. Is the compilation error still existing?
And have you ever seen the error of generating new request that Ishaat mentioned in this branch?

@ishchow @MarcusBoay @AY-Chen Could you have a final review on the newest commit? I have tried to the errors mentioned above excepting the fragment display issues when pressing back button. It would be good to merge with master now.

@Kaho-Lee can you merge master back into this branch and then fix the merge conflicts first?


Partition database by users

Data is always queries by user, so it will make a lot of sense to partition the heartbeats table (potentially also summaries and summary_items) by user. This could potentially result in tremendous performance improvements on multi-user instances (like the official wakapi.dev). See this slide set for a benchmark of using partitions. Only applies to Postgres and MySQL, as there is no such thing as partitions in SQLite.

MySQL: https://dev.mysql.com/doc/mysql-partitioning-excerpt/8.0/en/partitioning-hash.html
Postgres: https://www.postgresql.org/docs/current/ddl-partitioning.html

Here is another great explanation of how partitioning works.

In MySQL, partitioning by a foreign key is not yet supported, see https://dev.mysql.com/doc/mysql-partitioning-excerpt/8.0/en/partitioning-limitations.html. So partitioning by user is not an option.
Alternative would be to (range-) partition by time, e.g. using to_days() (see example). For the "average" self-hosting Wakapi user, who don't have hundreds of users on their platform, this would probably anyway make more sense. I'd assume that the "today" interval is used most frequently.
I'm only unsure about how to best realize this. With MySQL, first option would be to use a RANGE index with a fixed set of dates as "buckets", just like in the example above. But then we would have to regularly re-partition, to adjust the MAXVALUE bucket, which I'm not sure is a good practice. Second option would be a HASH index on to_days(date) with a fixed number of partitions (N). I'm not sure how to best choose N here then.

Turns out not only partitioning on a column, that is a foreign key, is not supported, but also partitioning on a table that has foreign keys whatsoever. That kills the option for using partitioning with MySQL here.

Here's a very interesting article on how to migrate from a single table to partitions in Postgres:
https://rodoq.medium.com/partition-an-existing-table-on-postgresql-480b84582e8d
The gist here is:

Temporarily rename old table (heartbeats in our case)
Create new master table with multiple partition tables, according to the partitioning criterion (time in our case)
Attach old table as a "legacy" partition

Partition management seems way more "explicit" with Postgres.
I'd be curious to implement something like that. But I doubt it's worth the effort, especially it would be a Postgres-only solution and not affect users with other DBMS. We might reconsider this when perhaps, some time in the future, dropping MySQL and SQLite support and fully committing to Postgres only.

I'm just curious: why not ditching support for MySQL and SQLite right now?

Because a lot of users especially depend on SQLite. The main reason for supporting SQLite in the first place was to make getting started as easy as possible - without the need to host one's own database server in addition to Wakapi. I wanted Wakapi to be plug & play and be people to be able to run it with a single command.
That's the reason why I'm still struggling to ditch it. There's a trade-off between ease of use for the user on the one hand and maintainability and  performance optimization on the other.
If Wakapi wasn't for self-hosting, we would probably already have committed to either MySQL or Postgres all the way.

I see. But query-wise this probably won't make any difference since partitions would just look for certain conditions in WHERE clauses, right?
So this would be just about a check in a migration — or am I missing something?

Yes, I know that they have an performance impact but that's not the point I was trying to make.
I was just going to ask about compatibility between Postgres and SQLite.
At runtime I don't see any incompatibilities syntax-wise.

Ah, I see. Yeah, would only be the migrations.

So in this case it would be possible to have partitions on Postgres without ditching SQLite — hence having the best of both worlds?


No MSXX-XX field in update API

The update API has some glitches but generally works. I can find KB id in it, but no MSXX-XX field in it, e.g MS17-023

Am I wrong?

The old BulletinSearch excel has a MSXX-XX field, was it removed in the API?

Correct. The CVRF API only serves updates starting from when the API was released, it does not provide older items.
How valuable is that scenario to you?

BTW I'd love to learn more about this:

The update API has some glitches but generally works.

Can you provide detail (or create more issues) for the glitches?

Hi @craig-martin, I didn't mean older data.
For example, KB 4014329 can be found in 2017-Mar.json, and the corresponding MS_ID is ms17-023, but it's not mentioned in 2017-Mar.json.

I have submitted issue for other glitches

Got it.  I'll get on those.

Regarding MS17-023, that is the older format called 'Security Bulletin', it is the last one in fact.  After that Microsoft switched to 'Security Updates', which is also when the CVRF API became available.  As far as I know we do not create KB articles for security updates anymore, we just link to them for the remediations in a vulnerability.
I think this is expected behavior, unless I'm not understanding the issue.

Okay, understood. Closing this issue.


Panic when reading Excel file

The attached simplified file panics upon load.
test-marker.xlsx
xdr:colOff is trying to be parsed into usize but the actual value is -1 which is negative...  So it choked.
Should the row/column offsets be signed?

@schungx
As you pointed out, i32 seems to be the correct answer for xdr:colOff, not usize.
Fixed.

@schungx
Fixed issue.
Please get the latest version and check it.

Thanks, will check it out.
However, it seems that, according to the standard, it can also be a string with a unit such as 12in... So eventually I believe we'd bump into a file that has some weird value...

Works!  Closing.


build_reloc.sh: rename relocatable packages

Currently, we use following naming convention for relocatable package
filename:
  ${package_name}-${arch}-package-${version}.${release}.tar.gz
But this is very different with Linux standard packaging system such as
.rpm and .deb.
Let's align the convention to .rpm style, so new convention should be:
  ${package_name}-${version}-${release}.${arch}.tar.gz
See scylladb/scylla#9799

@avikivity ping, we need this for https://github.com/scylladb/scylla/pull/10891


After updating to version 3.0.1 no logs in profiler

After updating this package from 2.11.1 to 3.0.1 logs stops showing in web profiler.
I use Symfony 3.1.6

The temporary fix is to remove the cache directories and let the cache warmup proceed during request.
The problem is that the debug handler is not added when cache is cleared in CLI.
The offending code (in version 2.11.2) is:
https://github.com/symfony/monolog-bundle/blob/v2.11.2/DependencyInjection/Compiler/DebugHandlerPass.php#L46

This was also biting me. Using symfony/monolog-bundle:3.0.1 on symfony/symfony:2.8 (which is not default to be honest).


False positive on unused signal warning (UNUSED_SIGNAL)

Tested versions
The bug was not present in 4.2
System information
Windows 10 - Godot v4.3.stable
Issue description
Example of script that gives warning:
W 0:00:00:0761   The signal "finished" is declared but never explicitly used in the class.
UNUSED_SIGNAL
grassanimation.gd:4
class_name GrassAnimation
extends Sprite2D

signal finished

var ppcc : int = 0
## set by animate_grass
var layer : Ground.LAYER

var ground : Ground

func _ready() -> void:
	ground = $"../"

func _physics_process(_delta : float) -> void:
	ppcc += 1
	if ppcc % 4 == 0:
		if frame >= hframes - 1:
			emit_signal("finished")
			ground.foliage_sprites.erase(self)
			self.queue_free()
			return
		frame += 1

The signal is then used in another script:
	#...
	animation.hframes = 9

	await animation.finished # here
	tilemap.set_cell(layer, pos, 0, atlas_for(grassname))

Steps to reproduce

Create new project
Attach a script to any node
Script:

extends Node2D

signal my_signal

func _ready() -> void:
	emit_signal("my_signal")

Minimal reproduction project (MRP)
new_game_project.zip

Workaround: change emit_signal("signal_name") to signal_name.emit()

Thank you for reporting, consolidating in:

https://github.com/godotengine/godot/issues/89632

See there for more details, if you think something was missed about this and it's not the same issue, please comment here and it can be reopened (please try searching for other issue reports before opening your own in the future)


Add rules support.

@nedn and @stevelamm please review.
Refactor of https://codereview.appspot.com/114560043/
Moved all rule logic into a separate "rules/" module.  Changed input format from JSON to Python.

Coverage decreased (-1.54%) to 60.69% when pulling 4aa60e330f3e74a47a590bf6b928a5295c3348ff on wrightt:master into 0e5c45a7ca4a43d9b9451db380de4ac5a543d1de on chromium:master.

Please break down your change to smaller patches & use "git cl upload" to upload your patch for review.

Replaced by https://github.com/chromium/web-page-replay/pull/52


nix expressions for macOS broken

➜  vulnix git:(master)  nix-build .

downloading ‘https://github.com/NixOS/nixpkgs-channels/archive/453086a15fc0db0c2bc17d98350b0632551cb0fe.tar.gz’... [0/0 KiB, 0.0 KiB/s]
these derivations will be built:
  /nix/store/2x5rfglpbj27fa63fg1abv3jij4zbsbj-python3.5-execnet-1.4.1.drv
  /nix/store/xi48khw9p49xnjxb569d8srdds1wy0p2-python3.5-mccabe-0.4.0.drv
  /nix/store/hc4nazq871ksdzrvn23mdsz76smpg34z-python3.5-flake8-2.5.4.drv
  /nix/store/pkjrkrl874z6dfwj57j545igkc94k04h-python3.5-pytest-cache-1.0.drv
  /nix/store/v48hcg7s73qamrlsksmf6j3lv8qarxbh-python3.5-vulnix-0.1.dev0.drv
building path(s) ‘/nix/store/5yh2y2r8nzzmh41122njlnvngrpmi1zr-python3.5-execnet-1.4.1’
unpacking sources
unpacking source archive /nix/store/g739xbqq74v0hx5dswn4nrj40q9vy4g0-execnet-1.4.1.tar.gz
source root is execnet-1.4.1
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file execnet-1.4.1/setup.cfg
patching sources
configuring
building
Download error on https://pypi.python.org/simple/setuptools_scm/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645) -- Some packages may not be found!
Download error on https://pypi.python.org/simple/setuptools-scm/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645) -- Some packages may not be found!
Couldn't find index page for 'setuptools_scm' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645) -- Some packages may not be found!
No local packages or download links found for setuptools-scm
Traceback (most recent call last):
  File "nix_run_setup.py", line 6, in <module>
    exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))
  File "setup.py", line 68, in <module>
    main()
  File "setup.py", line 64, in main
    setup_requires=['setuptools_scm'],
  File "/nix/store/p5q8daa5msqgkj7di16vch322ial2sh8-python3-3.5.1/lib/python3.5/distutils/core.py", line 108, in setup
    _setup_distribution = dist = klass(attrs)
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/setuptools/dist.py", line 269, in __init__
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/setuptools/dist.py", line 313, in fetch_build_eggs
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/pkg_resources/__init__.py", line 827, in resolve
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/pkg_resources/__init__.py", line 1072, in best_match
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/pkg_resources/__init__.py", line 1084, in obtain
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/setuptools/dist.py", line 380, in fetch_build_egg
  File "/nix/store/86hcp0sb3ml9wfdfgapzn5bdvy1darh9-python3.5m-setuptools-19.4/lib/python3.5/site-packages/setuptools-19.4-py3.5.egg/setuptools/command/easy_install.py", line 634, in easy_install
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('setuptools-scm')
builder for ‘/nix/store/2x5rfglpbj27fa63fg1abv3jij4zbsbj-python3.5-execnet-1.4.1.drv’ failed with exit code 1
building path(s) ‘/nix/store/rv8s8xr5fakr18ngzrb3i7f8j5a8wvh5-python3.5-mccabe-0.4.0’
cannot build derivation ‘/nix/store/pkjrkrl874z6dfwj57j545igkc94k04h-python3.5-pytest-cache-1.0.drv’: 1 dependencies couldn't be built
killing process 67342
cannot build derivation ‘/nix/store/v48hcg7s73qamrlsksmf6j3lv8qarxbh-python3.5-vulnix-0.1.dev0.drv’: 1 dependencies couldn't be built
error: build of ‘/nix/store/v48hcg7s73qamrlsksmf6j3lv8qarxbh-python3.5-vulnix-0.1.dev0.drv’ failed

@garbas Do you have any idea how to tackle this issue?

add setuptools-scm as buildInputs for execnet

Didn't make cut, there is something wrong with the SSL certification system on mac

/me just got osx machine to give vulnix a try there

:+1:

fixed in #15


IntPtr equality is failing

assert System.IntPtr.Zero == System.IntPtr.Zero

I think this broke with https://github.com/IronLanguages/ironpython3/pull/1088


Update sbt-pack to 0.19

About this PR
📦 Updates org.xerial.sbt:sbt-pack from 0.13 to 0.19
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.xerial.sbt", artifactId = "sbt-pack" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.xerial.sbt", artifactId = "sbt-pack" }
}]

labels: sbt-plugin-update, commit-count:1

Superseded by #104.


Incorrect Timezone abbreviation for "SA Western Standard Time"

When the input is:
When submitting the following input to the TimeZoneNames's method GetAbbreviationsForTimeZone

  timeZone	{(UTC-04:00) Georgetown, La Paz, Manaus, San Juan}	System.TimeZoneInfo

  BaseUtcOffset	{-04:00:00}	System.TimeSpan
  DaylightName	"SA Western Daylight Time"	string
  DisplayName	"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan"	string
  Id	"SA Western Standard Time"	string
  StandardName	"SA Western Standard Time"	string
  SupportsDaylightSavingTime	false	bool

The output should be SAWST (SA Western Standard Time), instead the output is "Bolivia Time" which is not really an abbreviation.

See #45

The response seems to be too theoretical and not a practical way to solve a
business problem.  For example, we are integrating the package to a
business application where a customer in Puerto Rico would present his
timezone and the abbreviation sent is "Bolivia Standard Time".  How do you
think a customer in Puerto Rico be presented with a time of another
country?  It does not solve a real-world problem if we follow an inadequate
de facto standard.
On Mon, Feb 15, 2021 at 10:23 AM Matt Johnson-Pint<EMAIL_ADDRESS>wrote:

See #45 https://github.com/mj1856/TimeZoneNames/issues/45
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mj1856/TimeZoneNames/issues/63#issuecomment-779387115,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFM2ZP5JFYU6IDS5LZKDIC3S7FRDXANCNFSM4VAQIRYA
.

--
Sent via GMAIL


How to handle Max file size, maximum number of files and error handling in the 3.x version?

the same question in this issue #123

I didn't found any built-in option for this and handled it with additional code:
if (output.type === 'addedToQueue'  && typeof output.file !== 'undefined') {       if(output.file.size > this.sizeLimit) {         this.showError('size', output.file.size);       } else {           this.files.push(output.file);       }   }

@alllx thank you for your input!
My idea was to extend the interface UploaderOptions without breaking the current behavior and setting default limits.
NgUploaderService.handleFiles should check the limits and emit a 'sizeLimitReached' and / or 'numberOfFilesLimitReached'. If there are no fileLimits set, handleFiles works as today.
Any suggestions?
export interface UploaderFileLimits {
    sizeLimit: number;
    numberOfFilesLimit: number;
}

export interface UploaderOptions {
  concurrency: number;
  allowedContentTypes?: string[];
  fileLimits?: UploaderFileLimits;
}

My suggestion is:
It should be possible to catch result in:
if (output.type === 'rejected') {}
and then should be property available output.reason to check reject reason like 'fileSize' | 'contentType'

Good catch. Then we don't have to introduce new ServiceEvents.

hi... im trying to set the max size limit as follows
if (output.type === 'addedToQueue'  && typeof output.file !== 'undefined') {
if(output.file.size > this.sizeLimit) {
console.log('exceed limit')
} else {
this.files.push(output.file);
}
}
I'm getting the message at console correctly but still the files is uploading. Not sure what i'm missing. Seems files are uploading even "this.files.push(output.file)" is not there in the code.

All of the examples I've seen so far leave out what to do with the local this.files array. As far as I can tell, the file needs to be set on the upload input event. This is what I've implemented (improvements welcome!):
constructor() {
  this.files = [];
}

onUploadOutput(output: UploadOutput) {

  if (output.type === 'allAddedToQueue') {

    // Iterate across the local files array
    for (let file of this.files) {
      const event: UploadInput = {
        type: 'uploadFile',
        url: "some/upload/url",
        method: 'POST',
        file: file, // <-- Set the file here
        headers: { 'Authorization': `Bearer ${this.token.get()}` }
      };
      this.uploadInput.emit(event);
    }
  } else if (output.type === 'addedToQueue') {

    // Do your size checking here
    if (output.file.size > 2000000) {
      alert('File is too large');
    } else {
      this.files.push(output.file);
    }
  }
}

@patrickatkeylogic looks good. of course it would be a lot nicer code and implementation if the module itself would have the option for that :)
if someone has time to do it, I am accepting pull requests.
UploaderOptions interface would look something like:
export interface UploaderOptions {
  concurrency: number; // number of files uploaded at the same time
  allowedContentTypes?: string[]; // content types allowed (default *)
  maxUploads?: number; // max number of files the user can upload
  maxFileSize?: number; // maxium allowed file size in bytes
}

For restricting both max number of files and max file size, I just handled the output type 'addedToQueue' and it is working perfectly for me.
 if (output.type === 'addedToQueue' && typeof output.file !== 'undefined') {  	if(this.files.length < this.file.maxFileCount){ 		if(output.file.size > this.file.maxFileSize) { 			alert('size limit exceeded') 		} else { 			this.files.push(output.file); 		} 	}else { 		alert("you are allowed to upload only one file") 	}      }


Add support for suffixes when resolving (e.g. "?url")

I'm not sure if I quite did this "correctly", but this fixed the problem on my end. I think this will also only work with loose: true.

Needs a test

Release in v3.3.16


NIFI-11783: Fixed a bug in which a FlowFile split into multiple and t…

…hen removed did not properly handle retries when one of the outputs was retried.

Summary
NIFI-00000
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[ ] Apache NiFi Jira issue created

Pull Request Tracking

[ ] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[ ] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[ ] Pull Request based on current revision of the main branch
[ ] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[ ] Build completed using mvn clean install -P contrib-check

[ ] JDK 17

Licensing

[ ] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[ ] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[ ] Documentation formatting appears as expected in rendered files

Reviewing...

+1 LGTM, reproduced issue and verified it now works. Thanks for the fix! Merging to support/nifi-1.x and main


[T] htmlview: to sovle image adaptation

to sovle image adaption

Coverage increased (+0.2%) to 60.894% when pulling d0655025bf3777d2e5ca69d15caba7890fe1d7b0 on travelgeezer:html-img into 4f947b9c9e4888484a5f9adfc03cfded1e9c6d6e on phodal:master.


Fix flaky test and log level/msgs and enable auto-expand replication

Description
This PR (hopefully, as I cannot reproduce the failure locally) fixed flaky tests in MultiEntityResultTests. The tests are flaky, maybe because we expect two pages in our pagination, but we may create more than two pages due to a race condition. Please read comments in MultiEntityResultTests for detail.
This PR also changes the log level of the updating real-time task log from info to debug. We don't need info as Opensearch prints the log repeatedly in each interval. Also, I changed the log message in ADTaskManager to match what the relevant code does.
This PR also enables auto-expand replication for AD job indexes. The job scheduler puts both primary and replica shards in the hash ring. Enabling auto-expand the number of replicas based on the number of data nodes (up to 20) in the cluster so that each node can become a coordinating node. Enabling auto-expanding is useful when customers scale out their cluster so that we can do adaptive scaling accordingly. Also, this PR changed the primary number of shards of the AD job index to 1 as the AD job index is small.
Testing done:

Checked that the AD job index setting change is effective and won't negatively impact normal e2e workflow.

Issues Resolved
Flaky test run: https://github.com/opensearch-project/anomaly-detection/pull/196/checks?check_run_id=3487905317
Check List

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #202 (67bc1d8) into main (bedc5b6) will decrease coverage by 0.18%.
The diff coverage is 75.00%.

@@             Coverage Diff              @@
##               main     #202      +/-   ##
============================================
- Coverage     73.48%   73.30%   -0.19%
+ Complexity     3410     3394      -16
============================================
  Files           276      276
  Lines         15327    15332       +5
  Branches       1560     1560
============================================
- Hits          11263    11239      -24
- Misses         3341     3369      +28
- Partials        723      724       +1

Flag
Coverage Δ

plugin
73.30% <75.00%> (-0.19%)
:arrow_down:

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

Impacted Files
Coverage Δ

...va/org/opensearch/ad/AnomalyDetectorJobRunner.java
66.24% <0.00%> (ø)

...ain/java/org/opensearch/ad/task/ADTaskManager.java
45.33% <0.00%> (-0.17%)
:arrow_down:

...opensearch/ad/indices/AnomalyDetectionIndices.java
74.46% <100.00%> (+0.08%)
:arrow_up:

...c/main/java/org/opensearch/ad/util/ParseUtils.java
60.95% <0.00%> (-4.39%)
:arrow_down:

...va/org/opensearch/ad/feature/SearchFeatureDao.java
77.35% <0.00%> (-4.12%)
:arrow_down:

.../java/org/opensearch/ad/util/RestHandlerUtils.java
83.05% <0.00%> (-1.70%)
:arrow_down:

...in/java/org/opensearch/ad/model/ADTaskProfile.java
42.52% <0.00%> (-0.94%)
:arrow_down:

...java/org/opensearch/ad/task/ADBatchTaskRunner.java
66.12% <0.00%> (ø)

... and 2 more

@ohltyler The build failed due to flaky test org.opensearch.ad.rest.HistoricalAnalysisRestApiIT.  Yaliang fixed it in another PR. Will leave it as it is.


fix: specify linux build flag for make build-local-container

Building the local Dockerfile fails on non-linux machines since no GOOS or GOARCH variables are specificied to make build, which causes execution to fail. For example, building the binaries locally on macOS, then putting them in a gcr.io/distroless/static:debug linux based image, we see standard_init_linux.go:228: exec user process caused: exec format error on startup. This PR sets the default build GOOS flag to linux when building the container locally.

/lgtm
(tested on a mac m1 with a colima arm64 docker socket)

One thing that bugs me a little still is that bin/* is dual purpose, so depending on whether I ran make bin/plain-v0 or make build-local-container, I'll end up with either a darwin or linux binary.
Maybe for the build container we should also name the binary with a linux suffix?

Non-blocking: One thing that bugs me a little still is that bin/* is dual purpose, so depending on whether I ran make bin/plain-v0 or make build-local-container, I'll end up with either a darwin or linux binary.
Maybe for the build container we should also name the binary with a linux suffix?

Yes I see what you're saying and I agree -- I also see what you meant by complexity maintaining two Dockerfiles as well now. I can open a small PR for this.


Initial README docs don't cover generic types

What problem did the developer encounter?
The advice to add the plugin and bundles is confusing for Rust beginners.

Add the InputManagerPlugin to your App.
Add the InputManagerBundle to your player entity (or entities!).

What was the fix?

I actually needed to do InputManagerPlugin::::default()

How could this be better documented?
Don't elide the generics here.

Completed.


Implement an -UpdatePackages flag.

So that we can test if the most recently released packages will break our
bookshelf.

LGTM


Dbms docs sec 5 6 7 added

Related Issue
Fixed : #735
Description
i have added following section under DBMS tutorials

using
1 . mermaid diagram

add table according to topic more readable to user

comparision/Difference with using table for more readable

algebra like this

note also

Type of PR

[ ] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / Videos (if applicable)

Checklist

[x] I have performed a self-review of my code.
[x] I have read and followed the Contribution Guidelines.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

Additional Context
[Include any additional information or context that might be helpful for reviewers.]
Resources for Guidance
Here are some resources that may be helpful as you contribute to CodeHarborHub:

Code Harbor Hub Community Features
Docusaurus Documentation
React.js Documentation
Markdown Guide
MDX Documentation
Mermaid Documentation

Resources for DSA Features on Our Site:

Tabs: Switch Languages
Line Numbering
Math Equations

hey @Ajay-Dhangar , please make it level 3
i have added following section under DBMS tutorials

using
1 . mermaid diagram

add table according to topic more readable to user

comparision/Difference with using table for more readable

algebra like this

note also

hey @Ajay-Dhangar  ,  updated as per your suggestion you can review it.


[RC1] Add documentation on DisplayName for validation messages

We now support setting a DisplayName attribute on InputNumber, InputDate, and InputSelect components. So for example, I can have a form that looks like this.
@page "/form"

<EditForm Model="@this" OnValidSubmit="@HandleValidSubmit">

            Date of Birth

         <InputDate Class="form-control" Id="DateOfBirth" @bind-Value="@BirthDate" DisplayName="birthday"/>

              <ValidationMessage For="@(() => BirthDate)" />

</EditForm>

@code {
    public DateTime BirthDate { get; set; }

    public void HandleValidSubmit()
    {
        Console.WriteLine("foo");
    }
}

If the date field is invalid, then the validation message will read:

The birthday must be a date.

Wheras previously, it would show this.

The BirthDate must be a date.

We probably want to add this under the "Validation Support" heading.

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

ID: eef47457-c8cf-74a4-b884-c1fe5c2ef52d
Version Independent ID: 09a02d10-2834-467d-d8c2-3fd19ceb3863
Content: ASP.NET Core Blazor forms and validation
Content Source: aspnetcore/blazor/forms-validation.md
Product: aspnet-core
Technology: aspnetcore-blazor
GitHub Login: @guardrex
Microsoft Alias: riande

Why does this apply to <InputText...> also?

Moved to https://github.com/dotnet/AspNetCore.Docs/issues/22515.
@mxmissile ... Best to open a new issue. We don't work closed issues/PRs.


[Question] binxio/cfn-resource-provider vs aws-cloudformation/custom-resource-helper

I am wondering if this project has purpose now that https://github.com/aws-cloudformation/custom-resource-helper exists? Should we just fold in the features from this repo into custom-resource-helper, add a deprecation warning, and start supporting efforts on a "blessed" repo?
While I highly appreciate the authors of this repo for supporting us while we did not have the AWS version, I think it would be helpful to not split efforts and grow the community around an official repo.
Would love feedback and any comments or thoughts on the subject.

Hi @LaikaN57 ,
The https://github.com/aws-cloudformation/custom-resource-helper is purely aimed at writing a lambda per custom resource. I wanted an object oriented programming model which supports multiple custom resources to be processed by a single lambda.
The aws-cloudformation/custom-resource-helper does not come with warranty or support from AWS, so I see no direct benefit of changing to the function based model.
Cheers,
Mark

Fair enough. Just thought I would raise.

Thank you for raising it. Out of curiosity, are you switching over? if so, how many custom providers did you write?

Not looking at switching for now as this project suffices our needs. Looks like we have about 20-25 instances (and continuing to upgrade older code). We mostly use a 1:1 model of lambdas to providers.


excalidraw is sometimes throwing an error (embedded frames and files)

I don't know when this started, but using the latest update I am having problems with excalidraw drawings.
It appears to be a problem with embedded files and frames.
Here is a sample page: https://digitalgarden-jrc-2.vercel.app/digital-garden/test-of-excalidraw/
which throws errors like unexpected indentifier "internal"
Embedded frames don't show at all
embedded files show as grey boxes, unrendered
test of excalidraw.md
And here is the original markdown and images for it
excalidraw with scratch 2023-01-22 13.50.58.excalidraw.md
test of excalidraw 2023-08-07 12.22.23.excalidraw.md
test of excalidraw 2023-08-07 12.22.23.excalidraw.md
test of excalidraw 2023-08-07 12.22.46.excalidraw.md
test of excalidraw 2023-08-07 12.25.05.excalidraw.md

Same problem here. Any workaround for it?


dmg background is broken on sierra

OS X installer doesn't show the background image anymore on sierra

Upstream bug: https://bitbucket.org/al45tair/dmgbuild/issues/9/backgrounds-no-longer-work-in-os-x-sierra

Resolved by upgrading the version of dmgbuild plus upstream fixes.


Improve test coverage

Out test coverage is 68% for the development branch at this issues is post, and I am aiming to improve it to over 90%. There are fews things need to be known for all.

[ ] Test coverage reaches 90%

Keep runtest.jl structured
Please check the new runtest.jl file. When adding new tests in the future, keep it structured using the current way so that we can tell which source file we are testing for each test case.
Review of old test cases
I noticed some comments in them are out-of-date. @yebai Can you also have a check and remove unnecessary ones.
Add new tests
Clearly there are some source files not having specific test files. I guess we can add more along with adding more commands ( #29 ), which is not actively in process.

I looked into the detail of test coverage and wonder if those functions that haven't been used are just abandoned.

I can't remember what functions are not used; can we remove obviously obsolete functions, but keep potentially useful functions somewhere separately (ie. not affecting test coverage).

Keep runtest.jl structured
Please check the new runtest.jl file. When adding new tests in the future, keep it structured using the current way so that we can tell which source file we are testing for each test case.

It makes a lot sense to do it this way!

Review of old test cases
I noticed some comments in them are out-of-date. @yebai Can you also have a check and remove unnecessary ones.

Yes, I will take a look!

PS. can we create a separate branch (e.g. test-coverage) and keep all work related there?

I can't remember what functions are not used; can we remove obviously obsolete functions, but keep potentially useful functions somewhere separately (ie. not affecting test coverage).

I guess we can either

Create a branch called old-development and come back when some functions are needed, or
Create a folder called old-src or something in the root path of Turing

Which one do you think is better?

PS. can we create a separate branch (e.g. test-coverage) and keep all work related there?

I wonder whether a separate branch for test coverage is a good idea as we need keep running these updated testes for our updated code.

Create a branch called old-development and come back when some functions are needed

Let's do this.

I wonder whether a separate branch for test coverage is a good idea as we need keep running these updated testes for our updated code.

In general we should avoid commit work in progress directly to development or master. Instead, we can keep a new branch for each new task, and create a PR towards to development/master when it is done.

The coverage is 85% after removal these files.

In general we should avoid commit work in progress directly to development or master. Instead, we can keep a new branch for each new task, and create a PR towards to development/master when it is done.

Yeah! I'll stick to this as well.
BTW, do you keep the old-development locally?

@yebai I wonder if src/distributions/distributions.jl should also be removed?


docs(yellowpaper): AVM intro sections

Preview here
The last section on execution context is still half done, but I wanted to get an incremental PR in.
The entries of the Context structure are mostly borrowed from the Ethereum yellowpaper. I did not finish that section because I am still working out the details of the world state.

@dbanks12  Overall it is very well written.


Split out logger

@Chronocook I love the logging thing in loggit.py. Have you ever considered distributing it separately, like in a Chronocook/logger repo (or maybe some other more fun name)?
I kind of would like to re-use it in other projects.

Hmm if you think that's a good idea it probably is.. kyle added some dope changes to it recently to


PL 1 False Positive on Blacklist Keywords from Node-Validator

Description
For several environments, the PL1 rule Blacklist Keywords from Node-Validator (941180) , is triggering on legitimate user's input, especially in customer feedback forms.
The rule itself contains good signatures for the detection of actual attacks (i.e. document.cookie), however is mixed with the payload -->, which is causing the common false positives.
Audit Logs / Triggered Rule Numbers
Example
Look at this example --> https://example.com/
customer requested new e-mail adres  --><EMAIL_ADDRESS>
Substantiation

Signature
False Positive Ratio

document.cookie
Low

document.write
Low

.parentnode
Low

.innerhtml
Low

window.location
Low

-moz-binding
Low

<!--
Low

-->
High

<![cdata[
Low

Proposal
Splitting this rule from a single PL1 rule into a PL1 and an PL2 rule.
Your Environment

CRS version (e.g., v3.2.0): v3.2.0
Paranoia level setting: 2
ModSecurity version (e.g., 2.9.3): 2.9.3
Web Server and version (e.g., apache 2.4.41): Multiple
Operating System and version: Multiple

Original Rule
SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAMES|ARGS|XML:/* "@pm document.cookie document.write .parentnode .innerhtml window.location -moz-binding <!-- -->
 <![cdata[" \
    "id:941180,\
    phase:2,\
    block,\
    capture,\
    t:none,t:utf8toUnicode,t:urlDecodeUni,t:htmlEntityDecode,t:jsDecode,t:cssDecode,t:lowercase,t:removeNulls,\
    msg:'Node-Validator Blacklist Keywords',\
    logdata:'Matched Data: %{TX.0} found within %{MATCHED_VAR_NAME}: %{MATCHED_VAR}',\
    tag:'application-multi',\
    tag:'language-multi',\
    tag:'platform-multi',\
    tag:'attack-xss',\
    tag:'paranoia-level/1',\
    tag:'OWASP_CRS',\
    tag:'capec/1000/152/242',\
    ctl:auditLogParts=+E,\
    ver:'OWASP_CRS/3.3.0',\
    severity:'CRITICAL',\
    setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\
    setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'"

Confirmation

[x] I have removed any personal data (email addresses, IP addresses, passwords, domain names) from any logs posted.

Hi @RubieV,
thanks for your report. We will investigate this issue shortly, and will give a solution.

I remember some heated conversations about --> with you @RubieV and yes finally I can agree that we move this pattern to Paranoia Level 2.
This is a great first issue as it's basically copying the existing rule into the Paranoia Level 2 section of the file (remembering to give it a new ruleId and giving it the paranoia-level/2 tag) and moving the --> to that new rule, so we will assign it to a new face on the CoreRuleSet scene and hope to raise a proud new contributor. :)

Closing this in favor of PR at #2082.
Thank you for reporting @RubieV.


Refactors router and fixes tests

The router is currently out of sync with the latest release of hyperapp and as it stands as intended or as documented (or at all for that matter) 😅
Although this PR may have a substantial diff.. the router it is now functional again and with almost exactly the behaviours as before. Here are a few things that have changed:

The router now only accepts emit as an argument, like a regular mixin
The router's state now looks like:

router: {
  url: "/users/luke/27",
  route: {
    url: "/users/luke/27",
    match: "/users/:id/:age",
    view: (s,a,d) => h('h1', {}, 'Hello!')
    params: {
      id: "luke",
      age: "27"
    }
  }
}

The attribute router.url is kept in sync with location.pathname
The attribute router.route is updated from within render when router.url !== router.route.url
the router now uses the load event rather than the loaded event
All tests have been updated to account for the new state structure and app being async

I think (or hope at least) that this implementation is no more/less performant than the old one but I have not tested it for that really.
There is a breaking change for anyone accessing the routers state directly.. for instance state.router.match will now be undefined but can still be accessed through state.router.route.match.
The app still emits a route event whenever a new route is entered.
That is about all. This is probably going to be my last attempt at this style of router before experimenting further with component based routers as discussed here https://github.com/hyperapp/hyperapp/issues/295

Just realised I have not updated the docs.. will do if the PR makes it any further than this

Travis build failed.

@jcubic ahh yes.. this will be because it is looking at git://github.com/hyperapp/hyperapp.git for the most recent version (0.11.0) of hyperapp. Which as I just discovered, in discussion with @jbucaran on slack, means that the module does not get built and thus there is no dist directory.. hence the Travis error Couldn't find module hyperapp

While you're at it, should bundlesize be added to the test script like in core?

@SkaterDad perhaps.. although I'm wary of employing such stringent analysis of size when it comes to mixins. It might not be every mixins primary concern.. I'm not suggesting size be completely disregarded but sometimes too much focus on size can obfuscate the intention of the code and sometimes hinder progression.
That said, adding bundlesize is pretty trivial and unobtrusive.. maybe it should be on all the things 😅 in the name of data!

although I'm wary of employing such stringent analysis of size when it comes to mixins. It might not be every mixins primary concern.. I'm not suggesting size be completely disregarded but sometimes too much focus on size can obfuscate the intention of the code and sometimes hinder progression.

Completely agree, but it's nice information to have.  Surprisingly few packages report their bundle size in the README or elsewhere, but I pretty much always want to know.

Thanks @lukejacksonn & @SkaterDad. Fixed it up with #12. 🙇👍


Ignored files shouldn't appear in the Watching output

Chokidar properly ignores files passed in through -i but the console text will still say it is watching these files. This appears to be the relevant code: https://github.com/kimmobrunfeldt/chokidar-cli/blob/89e1310d265c4d9dfe38ff0cc5458bdf3c36b32c/index.js#L170-L176
Edit by @kimmobrunfeldt: Made the link to explicitly state a commit instead of master branch.

Do you have an example of the command and it's output?

Try it on here: https://github.com/mhkeller/chokidar-ignore

Ok thanks. chokidar-cli is just logging all "patterns" which have been given to it for watching. In this case it seems like your terminal is doing an expansion for the pattern before chokidar-cli receives it and actually this command will be run: `chokidar src/css/styles.styl src/js/main.js -i 'src/css/*.styl' -c 'npm start'

Ya that's what I figured L170-176 was doing. chokidar-cli would have to get the "patterns" minus the "ignored" files back from chokidar once it runs it through anymatch or whatever it is that tests against the ignored options. Could be impossible since it would rely on chokidar to send those back.
For now maybe a note in the readme would help? I spent a bit of time thinking my path was wrong before realizing it was actually ignoring as designed.

Chokidar has a .getWatched() method that could be invoked after the ready event is fired to inspect all the paths that are being observed, but I don't necessarily think that's the best solution here.
I'd suggest the confusion could be avoided by just expanding the message to echo back both user inputs:
console.error('Watching', '"' + watchlist + '" and ignoring "' + ignorelist + '" ..');

Ya that would certainly help.


Add QR code and static address for vtnerd fundraiser

Looks good on my end. Testing in FF mobile on a Pixel 5a the monerofuntest page renders the content with a centered alignment and address no longer overflows. I have double-checked the QR code to ensure it resolves to the correct XMR address.

Needed to do this for the static XMR address: https://peterdaugaardrasmussen.com/2022/04/13/how-to-do-word-wrap-for-markdown-code/
Word wrap has to be "break-all" instead of "break-word" or the mobile view will be wrong.
And check the v2 tailwindcss docs: https://v2.tailwindcss.com/docs